读书笔记摘抄

简介

对于Docker等大多数Linux容器来说,Cgroups技术是用来制造约束的主 要手段,而Namespace技术则是用来修改进程视图的主要方法。

Mount、UTS、IPC、Network和User这些Namespace,用来对各种不 同的进程上下文进行“障眼法”操作。
比如,Mount Namespace,用于让被隔离进程只看到当前Namespace里的 挂载点信息;Network Namespace,用于让被隔离进程看到当前 Namespace里的网络设备和配置。

尽管你可以在容器里通过Mount Namespace单独挂载其他不同版本的操 作系统文件,比如CentOS或者Ubuntu,但这并不能改变共享宿主机内核的事实。
其次在Linux内核中,有很多资源和对象是不能被Namespace化的,最 典型的例子就是:时间

Namepsace无法隔绝资源
而Linux Cgroups就是Linux内核中用来为进程设置资源限制的一个重要功能。

Namepace

实际上,Mount Namespace正是基于对chroot的不断改良才被发明出来
的,它也是Linux操作系统里的第一个Namespace
我们一般会在这 个容器的根目录下挂载一个完整操作系统的文件系统。
但是容器和宿主机共用一个内核

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容