首页 >要闻 > > 正文

【云原生 • Docker】Docker核心UTS Namespace原理实践 世界即时看

腾讯云 2023-04-22 06:07:09

【云原生 • Docker】Docker核心UTS Namespace原理实践

Docker三大支柱核心技术:NamespaceCgroupsUnionFS,这节通过一个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后,宿主机shelllsns列出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 addresspingtelnetsstcpdump)的容器内利用宿主机上的命令进行容器内网络连通性的调试等等。❞

4、使用hostnameip addr验证,和Docker容器在相同的UTS NamespaceNetwork 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
上一篇:防晒霜和隔离霜哪个先用好_防晒霜和隔离霜使用顺序 世界今热点 下一篇:最后一页
x
推荐阅读

【云原生 • Docker】Docker核心UTS Namespace原理实践 世界即时看

2023-04-22

防晒霜和隔离霜哪个先用好_防晒霜和隔离霜使用顺序 世界今热点

2023-04-22

任正非:我们在软件上还是落后的,但有一天可能会强大

2023-04-22

将体育迷与世界上最大的运动员及其大学亮点联合起来

2023-04-22

forZe的EPL之旅就此结束而ENCE的征程还在继续

2023-04-22

漫威创始人宣布推出新的数字艺术藏品,或将于4月24日发布_世界新动态

2023-04-22

天天热议:045期陈亮双色球预测奖号:蓝球余数分析

2023-04-22

开发商“卖包”的梦,该醒一醒了!_世界实时

2023-04-22

潮南区两英中学_关于潮南区两英中学介绍

2023-04-22

天天快讯:河北省举办第32个全国税收宣传月集中宣传活动

2023-04-22

4月21日基金净值:广发鑫享灵活配置混合A最新净值2.3989,跌0.77%

2023-04-22

短讯!汽车耗油量通常随着排气量的上升而_铝的化学性质很活泼为什么通常铝制品

2023-04-22

中国软件国际(00354.HK):受托人为股份奖励计划购买合共500万股|最新

2023-04-22

世界热文:交城:人事任免_天天快播报

2023-04-22

“五一”返程火车票昨起开售 这些线路车票或紧张

2023-04-22

湖人VS灰熊G4时间确定:北京时间4月25日上午10点开打

2023-04-22

7家创新层川企发布年报:仁新科技净赚3632万 安达农森营收超10亿

2023-04-22

巫山高原文及翻译(过巫山原文及翻译)-环球热推荐

2023-04-22

北京市委书记:全力以赴做好伤员救治

2023-04-21

早上喝红茶有什么好处和坏处_喝红茶有什么好处和坏处

2023-04-21

adobe是什么意思可以删除吗_adobe是什么意思|全球今日讯

2023-04-21

智能建筑自动化系统_对于智能建筑自动化系统简单介绍

2023-04-21

东风汽车,何寻“东风”? 即时

2023-04-21

足球简笔画图怎么画

2023-04-21

甲醇开工率延续下滑 企业库存降至阶段低位_天天要闻

2023-04-21

曙光数创股价又创新高,今日涨3.65% 全球热推荐

2023-04-21

世界关注:加拿大多伦多机场罕见失窃案:黄金等高价值货物不知所踪

2023-04-21

传媒娱乐板块震荡上行,中国出版二连板|全球热讯

2023-04-21

【天天新视野】眼前一亮!第十三届中国道路交通安全产品饱览会在长沙举办具体指什么?

2023-04-21

奉贤公安启动“全民反诈宣传月”活动,同责、同心、同力打造一体化反诈防范体系_天天播资讯

2023-04-21

rap词押韵骂人_rap词

2023-04-21

世界最资讯丨老板键是哪个键

2023-04-21

【热闻】4月21日神州数码跌6.20%,民生加银策略精选混合A基金重仓该股

2023-04-21

凡拓数创2022年营收6.09亿 净利1816.51万 董事长伍穗颖薪酬67.78万_环球微速讯

2023-04-21

弥勒持续干旱,“蓝朋友”送水润人心!300吨

2023-04-21

海南橡胶多措并举稳生产:橡胶开割 丰产在望-世界观热点

2023-04-21

全球微头条丨西江镇举办制鞋工艺劳动技能竞赛

2023-04-21

男子酒后发动汽车睡觉被判酒驾 上诉后结果反转

2023-04-21

报告:中国数字经济呈“雁阵式”发展模式

2023-04-21

辽港股份(601880)4月21日主力资金净卖出965.02万元

2023-04-21

鼎龙股份:PSPI产品已实现批量销售

2023-04-21

山村玫瑰庄园迎丰收【组图】

2023-04-21

当前关注:越来越多无人化农机成为沪郊春耕主角,来看看这里的“数字化无人农场”基地

2023-04-21

国家统计局:1-3月份十种有色金属产量同比增长9.0% 每日快看

2023-04-21

海南省气象台发布海上大雾橙色预警【Ⅱ级/严重】 环球快资讯

2023-04-21

吃乌鸡蛋有什么坏处_吃乌鸡蛋有什么好处_观热点

2023-04-21

海通证券:维持猫眼娱乐(01896)“优于大市”评级 合理价值区间9.59-11.99港元-世界独家

2023-04-21

平托:尤文变成第三了?为了避免哭出来,我只能笑_焦点速看

2023-04-21

每日看点!萧瑟:4.21 市场越走越乱,是低多还是高空?

2023-04-21

今日观点!巴西媒体:31岁前广州恒大球员高拉特决定退役

2023-04-21

本届上海车展,嘉定车企带来哪些重磅车型和最新技术?

2023-04-21

环球即时看!同有科技:受疫情影响,参股公司忆恒创源现场检查进度有所延后,目前忆恒创源已进入上市问询阶段

2023-04-21

[快讯]天晟股份公布2022年分红方案预案

2023-04-21

美国合众银行Q1利息收入、利润超预期

2023-04-21

世界球精选!算力股再度活跃 旅游股大幅回调丨就市论市

2023-04-21

辽宁省辽阳市2023-04-20 08:00发布大风蓝色预警 世界新消息

2023-04-21

上海车展繁荣背后,谁将撑起汽车行业的下一个增长点 全球聚看点

2023-04-21

世界报道:吉林站“五一”小长假预计发送旅客16.8万人

2023-04-21

马兹拉维:感觉我在拜仁被人遗忘了,为何顺位靠后要问地位更高者 全球快资讯

2023-04-21

“迫使美军核潜艇浮出水面”? 时快讯

2023-04-21

形容毛笔字写得好的词语和句子_形容毛笔字写得好的词语

2023-04-21

【天天速看料】昆仑万维“天工”大模型启动邀请测试,此前有绘画AI和音乐AI产品

2023-04-21

国网株洲渌口区供电公司上门送技术检测 悉心呵护企业“能源动脉” 天天资讯

2023-04-21

心理学原理与应用 第2版 全球今日讯

2023-04-21

全球热推荐:上海买房:不缺购买力,只缺好地段的资源!

2023-04-21

北京市版权作品登记数量破千万,连续15年全国领先

2023-04-21

环球热头条丨grand是什么意思中文翻译怎么读 grand是什么意思

2023-04-21

戴尔5535网卡驱动_戴尔n4050网卡驱动_环球热闻

2023-04-21

中海物业(02669.HK):4月20日南向资金减持2万股|全球快看点

2023-04-21

环球快看:杨猛:深入学习贯彻党的二十大精神 牢固树立和践行总体国家安全观

2023-04-21

华工新颜-华南理工大学共建创新医药与可溶性微晶护肤技术应用联合研究中心

2023-04-21

全球资讯:山东日照:浸润式阅读补足学生“成长之钙”

2023-04-21

沙特律师将采取法律行动要求国家将C罗驱逐出境

2023-04-21

济宁市兖州区酒仙桥街道“365”志愿服务模式 探索新时代文明实践的“酒仙桥”路径

2023-04-21

高标准农田也能买保险_全球讯息

2023-04-21

起诉离婚日记可以作为证据吗?起诉离婚财产分配是怎么办?

2023-04-21

【天天热闻】2023天津周杰伦演唱会观看指南(时间/门票/场馆)

2023-04-21

海豚之星在汉诺威秀“肌肉”

2023-04-21

央行:一季度人民币贷款增加10.6万亿元 房地产贷款增长呈上升态势

2023-04-21

实时焦点:成都海棠公寓保租房选房时间

2023-04-21

A股五大上市险企一季度共揽保费1.06万亿元,同比增4.9%

2023-04-20

2023春推会影视投资论坛 影视投资创新助力行业再腾飞

2023-04-20

特斯拉:画饼大年、落地小年,“长情陪伴” 太难了 每日热文

2023-04-20

山西阳泉市市场监管局“清单化”管理做实做细化妆品日常监督检查|世界滚动

2023-04-20

抚顺今年将改造24个老旧小区惠及1.36万户居民 环球热点

2023-04-20

灰原哀柯南接吻 灰原哀和柯南接吻照

2023-04-20

环球今头条!十三香?2.2K版惠普星Book Pro 14职场利器实测

2023-04-20

又一房企面临退市 连续亏损三年新华联面临破产重整_新视野

2023-04-20

每日速递:中国银行金条价格今天多少一克(2023年04月20日)

2023-04-20

北京:聚焦医院、养老机构、高层建筑等地,开展排查整治_快播报

2023-04-20

新消息丨金棒棰是哪个国家的品牌_什么档次怎么样

2023-04-20

推动各领域合作行稳致远!陈吉宁会见德国大众汽车集团董事长奥博穆-当前消息

2023-04-20

我国外贸进出口逐月向好 “新三样”出口持续火热

2023-04-20

环球关注:宝马MINI就冰淇淋事件道歉:内部管理不细致 工作人员失职

2023-04-20

上海车展| 中信科智联C-V2X车联网,赋能汽车智能网联化融合发展

2023-04-20

打卡商业街新潮美食 人气火味道棒!

2023-04-20

你的最佳顺路单是怎样诞生的?嘀嗒出行首度揭秘顺风车顺路匹配科技奥秘

2023-04-20

暂不推荐18岁以下人群接种新冠疫苗

2023-04-20

谷雨节气如何养生?如何鉴别春日好茶?

2023-04-20

焦点速递!水杨酸棉片可以带上飞机吗?

2023-04-20