【云原生 • Docker】Docker核心UTS Namespace原理实践|百事通
【云原生 • Docker】Docker核心UTS Namespace原理实践
Docker
三大支柱核心技术:Namespace
、Cgroups
和UnionFS
,这节通过一个UTS Namespace
简单实践小案例,更加直观理解Namespace
资源隔离技术。
(资料图片仅供参考)
UTS Namespace
主要是用来隔离主机名和域名的隔离,它允许每个 UTS Namespace
拥有一个独立的主机名。例如我们的主机名称为 VM-4-14-centos
,使用 UTS Namespace
可以实现在容器内的主机名称为 container-docker
或者其他任意自定义主机名。
UTS Namespace案例实践
在进行UTS Namespace
案例实践之前,我们先来了解个关键指令:「unshare,运行一些与父级不共享某些名称空间的程序。」
root@node3:~# unshare --helpUsage: unshare [options] [...]Run a program with some namespaces unshared from the parent.Options:-h,--help显示帮助文本并退出。-i,-- ipc 取消共享IPC名称空间。-m,-- mount 取消共享安装名称空间。-n,-- net 取消共享网络名称空间。-p,-- pid 取消共享pid名称空间。另请参见--fork和--mount-proc选项。-u,-- uts 取消共享UTS名称空间。-U,--user 取消共享用户名称空间。-f,-将指定程序fork为取消共享的子进程,而不是直接运行它。这在创建新的pid命名空间时很有用。--mount-proc [=mountpoint]在运行程序之前,将proc文件系统挂载到mountpoint (默认为/ proc)。这在创建新的pid名称空间时很有用。这也意味着创建一个新的挂载名称空间,因为/ proc挂载否则会破坏系统上的现有程序。新的proc文件系统显式安装为私有文件(由MS_PRIVATE | MS_REC)。-r,-- map-root-user 仅在当前有效的用户和组ID已映射到新创建的用户名称空间中的超级用户UID和GID之后,才运行该程序。这样即使在没有特权的情况下运行,也可以方便地获得管理新创建的名称空间各个方面所需的功能(例如,在网络名称空间中配置接口或在安装名称空间中安装文件系统)。仅作为一项便利功能,它不支持更复杂的用例,例如映射多个范围的UID和GID。
我们通过一个实例来验证下 UTS Namespace
的作用。
1、首先我们使用 unshare
命令来创建一个 UTS Namespace
# unshare --uts --fork /bin/bash
创建好 UTS Namespace
后,宿主机shell
下lsns
列出namespace
信息,会发现最后一条就是我们使用unshare
创建了一个uts
类型的namespace
:
2、回到上步uts
命名空间shell
下,使用 hostname
命令设置一下主机名:
[root@VM-4-14-centos ~]# hostnameVM-4-14-centos[root@VM-4-14-centos ~]# hostname -b container-docker[root@VM-4-14-centos ~]# hostnamecontainer-docker
通过上面命令的输出,我们可以看到当前 UTS Namespace
内的主机名已经被修改为 container-docker
。
3、回到宿主机shell
下,查看一下主机的 hostname
:
[root@VM-4-14-centos ~]# hostnameVM-4-14-centos
可以看到主机的名称仍然为 VM-4-14-centos
,并没有被修改,这就是使用UTS Namespace
技术实现主机名隔离功能。
Docker原理验证
1、使用docker run
创建并运行一个Docker
容器:
[root@VM-4-14-centos ~]# docker run -d --name test-nginx --hostname docker-nginx nginx0fd5ec42923553ec2600c51ef4f119e4025ebf5adf13561b0e847cd816f332b7[root@VM-4-14-centos ~]# docker exec -it 0fd sh# hostnamedocker-nginx
❝--hostname指定docker容器的hostname,上面指定--hostname docker-nginx,通过docker exec指令进入到docker容器中,使用hostname查看Docker容器的hostname已被正确修改。❞
2、查看刚创建的Docker容器对应的宿主机PID
信息:
[root@VM-4-14-centos ~]# docker inspect -f {{.State.Pid}} test-nginx29424
或者通过lsns
指令也可以查看到我们刚才创建的Docker容器Namespace信息:
3、在宿主机shell
下使用nsenter
指令可以进入到Docker容器相同的Namespace下:
[root@VM-4-14-centos ~]# nsenter -t 29424 -u -n
说明:
-t:指定被进入命名空间的目标进程的pid,即指定Docker容器在宿主机上对应pid;-u:进入uts命令空间;-n:进入net命令空间。❝「nsenter:一个可以在指定进程的命令空间下运行指定程序的命令。」有很多image内部是没有bash的,所以我们docker exec是无法进入容器的,此时如果还想看一下容器内的情况,其实只需要想办法加入到容器对应的namespace就可以了。我们使用nsenter工具即可实现,该工具启动后会将自己加入到指定的namespace中,然后exec执行我们指定的程序(通常就是bash)。这个命令大家在容器网络调试下可能常用,比如在一些没有网络调试工具(
ip address
,ping
,telnet
,ss
,tcpdump
)的容器内利用宿主机上的命令进行容器内网络连通性的调试等等。❞
4、使用hostname
和ip addr
验证,和Docker容器在相同的UTS Namespace
和Network Namespace
下:
[root@docker-nginx ~]# hostnamedocker-nginx[root@docker-nginx ~]# ip addr1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever40: eth0@if41: mtu 1500 qdisc noqueue state UP group default link/ether 02:42:ac:11:00:07 brd ff:ff:ff:ff:ff:ff link-netnsid 0 inet 172.17.0.7/16 brd 172.17.255.255 scope global eth0 valid_lft forever preferred_lft forever
标签:
推荐文章
- 【云原生 • Docker】Docker核心UTS Namespace原理实践|百事通
- 地区生产总值同比增长8.2% 吉林省一季度主要经济指标迎来“开门红”
- 山东移动东营分公司圆满完成黄河文化论坛网络通信保障工作|全球热文
- 生成式AI实现护肤品虚拟试用 环球资讯
- 开源证券:给予珀莱雅买入评级_每日热点
- 【天天新视野】长峰医院火灾亲历者:病友提醒湿毛巾捂口鼻,护工背出失能老人
- 奥密克戎出现新变种“大角星”!可致儿童结膜炎
- 金融总量稳定增长 信贷结构持续优化-焦点速递
- 石墨烯制成迄今最薄心脏植入物
- 世界滚动:国网七台河供电公司:开展安全生产大讲堂 持续拧紧“安全弦”
- word输入后面字消失_word输入一个字消失一个字
- 团中央表彰广东49个集体、62名个人|快消息
- 从“清道夫”到“城市美容师”!来看浦东道路保洁30多年里的大变化 全球热点评
- 项梁和范增_项梁 全球滚动
- 异动快报:奥马电器(002668)4月21日10点52分触及涨停板 环球百事通
- 南通川姜:用监督“硬手段” 提升发展“软实力”-讯息
- 春季这些火爆UGG必穿! UGG毛绒拖鞋低至6折!
- 四川乐山一女子电梯遭遇惊魂一幕 门开后杂物和老鼠涌入
- 环球热议:黑龙江省绥化市2023-04-20 20:29发布大风蓝色预警
- 【天天速看料】开封市祥符区刘店乡积极推进小额金融贷款宣传动员工作
- 天天微头条丨荷塘区召开“作风建设年”活动二季度工作部署会
- 微头条丨詹姆斯:下一场比赛是系列赛最重要的一场比赛
- 日本扑杀1700万只鸡!什么情况?
- 鲅鱼水饺怎样调馅才好吃_鲅鱼水饺怎样调馅
- 韩式微创双眼皮过程_韩式三点双眼皮能保持多久 全球今亮点
- 天津一季度GDP同比增5.5%,社会消费品零售总额同比增6.5%
- 今日热搜:标致408换奔驰S500,算不算“鸟枪换大炮”?
- 观点:100期老刀福彩3D预测奖号:直选定位5码参考
- Counterpoint:Arm架构的PC市场份额到2027年将增加至25%|重点聚焦
- 新民洲港码头生产忙 观察
- 他们研究突破的是量子力学中最神奇的现象……
- 叶文煌新任兴业基金董事长兼法定代表人 当前头条
- 索朗曲扎:戍守西藏阿里典角村,“我就是这里的监控探头”-全球关注
- 全球消息!中威电子:2022年度净利润约489万元
- 加强数字化版权保护与创新
- 视点!出行攻略 路口“红色月牙”提醒您:右转危险 注意安全
- 这下黑不了武磊了!又一中超外援为他折服,直言真防不住他! 全球新资讯
- 以签谅解书不追究法律责任为理由要挟别人获取利益,犯不犯法 热闻
- 2023西安4月21日8分钟交友局攻略
- 环球今亮点!农业农村部等多部门:2023年启动农村产权流转交易规范化试点工作
- 世界通讯!零壹日报:京津冀监管联合要求“加强新市民金融服务”;消息称盒马拟明年在港上市 天天快看
- 每日热门:汇丰晋信基金陆彬旗下汇丰低碳A一季报最新持仓,重仓深信服
- 孚能科技9.9亿于广州新设子公司 经营范围含电池制造|全球新动态
- 世界今日讯!音乐会波兰舞曲简谱(音乐会波兰舞曲)
- A股午评 | 三大指数震荡走弱 创业板指跌近1% AI主线依然强势 世界观察
- 低价不低配,22.99万元起售的飞凡F7,掀起汽车“C”位之争?-全球今亮点
- “交通安全摩友暖心驿站”落户怀柔 创设“首席安全官”警企联手发起倡议_焦点热门
- 销售经理成“内鬼”伙同他人虚增“中间商”吃了2200万元的差价
- 京多安:吹停后基米希没必要从我身下抢球 期待与皇马的艰难对决
- 前沿热点:进货批发网站哪个好
- 中兴通讯4月7日打开涨停
- 河南初级会计考试2023年考试时间
- 微软和 Epic合作,GPT-4 将用于寻找医疗记录的趋势_播报
- 原来这才是工作餐是什么意思梗
最新资讯
- FPGA设计如何提高同步系统中的工作时钟
- 小鹏汽车发布「扶摇」技术架构,重新定义高端智能电动汽车标准
- 完美世界:两大核心赛道加速抢跑 转型升级巩固优势
- 全球要闻:2023年6月焦作师范高等专科学校英语四级报名时间:4月27日至5月5日
- 威胜控股(03393.HK)4月20日收盘涨0.56%,主力资金净流入42.24万港元
- 美亚娱乐资讯(00391.HK)4月20日收盘涨12.38%
- 古 人 诚 不 欺 我!
- 首台国产126千伏C4/CO2混合环保气体GIS设备投运
- 日常黑市购买推荐|资讯推荐
- 广西边城靖西多彩非遗绽放魅力 文旅融合“活”起来
- 鸿合科技(002955)4月20日主力资金净买入197.50万元 环球看点
- 银行系私行“扶摇而上”:5家AUM超2万亿,服务模式迈向集团化、专业化|世界看热讯
- 汇丰控股回应平安建议其战略重组亚洲业务:建议股东投票反对|环球速看
- 丰原药业:公司本次计提减值准备减少公司2022年度利润总额约1733万元|环球速读
- 每日热文:美国一官员挪用30万美元建动物园,为自己开的民宿引流
- 每日快讯!王者荣耀的装备被动怎么触发(王者荣耀装备被动能叠加吗)
- 贝贝小南瓜的吃法有哪些
- 全球焦点!焦点访谈:“老广交”新成色
- 第五届山西省专利奖开始申报
- 马毛帽带使用说明
- 高适诗全集_关于高适诗全集简述
- 火山引擎发布多款数据产品|快报
- 全球短讯!三生万物的寓意_三生万物
- 鼎龙股份:仙桃工厂扩产项目预计于2023年安装完毕
- 描写春天的词语和句子_赞美春天的美妙句子分享
- 双成药业:注射用比伐芦定已占据较大美国市场份额 最新快讯
- 酷讯特价机票预订官网_酷讯特价机票_环球看点
- 2022年国抽药品批次不合格率为0.63% 中药饮片不合格率居首位_世界观察
- 环球观热点:苏州开弦弓村:增建文化设施 助力乡村振兴
- 女子上班6天工资仅发41元具体详细内容是什么|世界观焦点
- 世界新动态:40岁苍井空近照曝光,皮肤白皙身材苗条,首谈出道方式
- 【环球速看料】Steam Deck年度最大竞品?ROG掌机曝光:性能超强劲
- 变更法人需要法人到场吗 环球观点
- 悬疑剧《侦察》开票 | 早鸟限时优惠感受这场“猫捉老鼠的终极游戏”
- 纯电跨界车 MINI Aceman内有"小汪"萌萌哒 环球热文
- 贵阳市外事办公室党组书记、主任刘学接受纪律审查和监察调查
- 问题学生教育方法_如何教育问题学生|世界热门
- 全球热文:SMM日评:硅下游及贸易商询单热度增加 市场刚需订单成交
- 环球观点:武汉灵活就业人员社保缴费档次表2022-2023 月缴费金额是多少?
- 患溃疡性结肠炎的人多吗? 环球新动态
- 苹果在印度一年销售超60亿美元,库克:印度是一个令人兴奋的市场-全球观热点
- 全球焦点!中泰化学(002092.SZ):南黄草湖煤矿探明储量大概147亿吨,目前还未开采
- 二手房交易费用是怎么算的
- 农业农村部发布2023年国家农作物优良品种推广目录
- 浙商证券给予招商南油增持评级,招商南油点评报告,近期获8份券商研报关注,目标均价涨幅38.18% 速讯
- 复旦复华董秘回复:公司全资子公司上海克虏伯控制系统有限公司目前主营收入来源主要为金属结构件加工业务
- 永州市第四人民医院:急救知识进校园 守护生命伴成长 焦点简讯
- 文字玩出花富得流油六怎么过|天天观焦点
- 中国石化易派客电商平台7年交易额近3万亿元_世界时快讯
- 奇幻大陆2无敌版 奇幻大陆2修改器 环球消息