- 0
- 0
- 约2.85千字
- 约 6页
- 2026-01-30 发布于北京
- 举报
背后的内核知识
docker本质上就是宿主机上的一个进程,docker通过namespace实现了资源隔离,通
过cgroup实现了资源限制,通过写时复制技术(copy-on-write)实现了高效的文件操作
namespace
namespace的六项隔离
namespace系统调用参数隔离内容
UTSCLONE_NEWUTS主机名与域名
IPCCLONE_NEWIPC信号量、消息队列和共享内存
PIDCLONE_NEWPID进程编号
NETWORKCLONE_NEWNET网络设备、网络栈、端口等
MOUNTCLONE_NEWNS挂载点(文件系统)
USERCLONE_NEWUSER用户和用户组(3.8以后的内核才支持)
实际上,Linux内核实现命名空间的一个主要目的,就是实现轻量级虚拟化(容器)服
务。在同一个命名空间下,进程间可以感受到彼此之间的变化,对外界进程一无所知。
这样就可以让容器中的进程产生错觉,仿佛自己置身于一个独立的系统环境中。命名
空间的API包括clone()、sents()、以及unshare(),还有/proc下的部分文件。
cgroup
cgroup的特点如下:
cgroup的API以一个伪文件系统的实现方式,用户态的程序可以通过文件操作实
现cgroup的组织管理
cgroup的组织管理操作单元可以细粒度到线程级别,另外用户可以创建和销
毁cgroup,从而实现资源再分配和再利用。所有资源管理的功能都以子系统
的方式实现,接口统一。子任务创建之初与其父任务处于同一个cgroup的控
制组。
cgroup四大功能:
资源限制:可以对任务使用的资源总额进行限制优先级分配:通过分配的CPU时间片
数量以及磁盘IO带宽大小,实际上相当于控制了
背后的内核知识
docker本质上就是宿主机上的一个进程,docker通过namespace实现了资源隔离,通
过cgroup实现了资源限制,通过写时复制技术(copy-on-write)实现了高效的文件操
作
namespace
namespace的六项隔离
namespace系统调用参数隔离内容
UTSCLONE_NEWUTS主机名与域名
IPCCLONE_NEWIPC信号量、消息队列和共享内存
PIDCLONE_NEWPID进程编号
NETWORKCLONE_NEWNET网络设备、网络栈、端口等
MOUNTCLONE_NEWNS挂载点(文件系统)
USERCLONE_NEWUSER用户和用户组(3.8以后的内核才支持)
实际上,Linux内核实现namespace的一个主要目的,就是实现轻量级虚拟化(容器)
服务。在同一个namespace下进程间可以感受到彼此之间的变化,对外界进程一无所
知。这样就可以让容器中进程产生错觉,仿佛自己置身于一个独立的系统环境中
namespace的API包括clone()、sents()、以及unshare()还有/prox下的部分文件
cgroup
cgroup的特点如下:
cgroup的API以一个伪文件系统的实现方式,用户态的程序可以通过文件操作实现
cgroup的组织管理
cgroup的组织管理操作单元可以细粒度到线程级别,另外用户可以创建和销毁
cgroup,从而实现资源再分配和再利用
所有资源管理的功能都以子系统的方式实现,接口统一
子任务创建之初与其父任务处于同一个cgroup的控制组
cgroup四大功能:
资源限制:可以对任务使用的资源总额进行限制
优先级分配:通过分配的CPU时间片数量以及磁盘IO带宽大小,实际上相当于控制了
任务运行优先级
资源统计:可以统计系统的资源
您可能关注的文档
最近下载
- 2025年单招四类考试 真题及答案.doc VIP
- JB-TB-TC6165火灾报警控制器安装使用说明书V1.1-天成.pdf
- 深度解析(2026)《GBT 29035-2022柔性石墨填料环试验方法》.pptx VIP
- JB_T 10286-2013 日光温室 技术条件.pdf VIP
- 元认知心理干预技术及应用.ppt VIP
- 2025年河北省单招四类考试试卷真题 .pdf VIP
- 实施指南(2025)《GB_T9877-2008液压传动旋转轴唇形密封圈设计规范》.pptx
- 仪表液位计PPT课件.pptx VIP
- CMC-LX软起动器中文说明书.PDF
- 2025年丽江市特岗教师招聘真题汇编附答案解析.docx VIP
原创力文档

文档评论(0)