就业课程 就业课程

就业课程 认证课程

思科认证
数通方向:CCNA | CCNP | CCIE
安全方向:CCNA安全
华为认证
数通方向:HCNA | HCNP | HCIE
安全方向:HCNA安全 | HCNP安全
云计算方向:HCNA云计算 | HCNP云计算
存储方向:HCNA存储 | HCNP存储
华三认证
数通方向:H3CNE | H3CSE | H3CCE云计算
红帽认证
包含方向:RHCA | RHCSA | RHCE
微软认证
包含方向:MCSA | MCSE
甲骨文认证
包含方向:OCA | OCP | OCM

企业课程 企业课程

企业定制系列课程
为企业提供个性服务
> 点击查看 <
您现在的位置: 超级网工 >> RHCA >> FAQ >> 正文

全方位验证容器就是Linux

RHCA/UploadFiles_1744/201706/2017062915045120.png" target=_blank> 

容器就是Linux。这套过去二十年来对数据中心产生革命性影响的操作系统现在正在彻底改变我们在云中包装、部署和管理应用的方式。随着越来越多的组织机构认识到容器能够为他们管理应用和基础设施的方式带来许多优势,人们对容器技术的兴趣在不断增长。

说到底,容器是Linux的一个特性。十多年来,容器已经成为Linux操作系统的一部分,而这一切甚至可以追溯到UNIX时代。这就是为什么最近推出了Windows容器,但我们看到的大多数仍然是Linux容器。这也意味着如果你正在部署容器,你的Linux选择将至关重要。

在说容器就是Linux时,这到底这意味着什么,以及对您的重要性体现在哪里。

容器就是Linux

Linux容器只不过是在Linux上运行的进程。它与其他容器化的进程共享同一个主机内核。那么到底是什么东西让这一进程成为一个“容器”呢?

首先,通过使用内核命名空间,每个容器化的进程与运行在同一个Linux主机上的其他进程相隔离。内核命名空间提供一个虚拟化的世界,供容器进程在其中运行。例如,“PID”命名空间使得某个容器化的进程只能看到该容器内的其他进程,而不能看到该共享主机上的其他容器的进程。其他安全隔离功能还由诸如删除功能(dropped capability)、只读安装(read-only mount)和seccomp等内核功能来提供。SELinux在红帽企业版Linux等发行版中提供了额外的文件系统安全隔离。这种隔离有助于确保一个容器不能滥用其他容器或者攻破底层主机。

第二,通过使用Linux控制组(或“cgroup”),每个容器进程(内存、cpu、I/O等)所消耗的资源仅限于指定的范围内。这有助于消除嘈杂邻居的问题,防止某个容器过度使用Linux主机资源,而使其他容器得不到资源保证。

这种能力既隔离了容器化的进程,又限制了它们所消耗的资源,从而能够让多个应用容器更安全地运行在同一个共享的Linux主机上。隔离与资源限制相组合,使得一个Linux进程成为一个Linux容器。换句话说,容器就是Linux。下面我们来进一步探讨一下这句话的含义。

容器安全性就是Linux安全性

一旦了解了容器的工作原理,就容易理解“容器安全性就是Linux安全性”这句话。多个容器在同一个共享主机上安全运行的能力,其重要性不亚于内核在容器与底层主机操作系统之间提供多租户隔离的能力。这包括Linux内核命名空间以及其他安全功能,例如SELinux,其由内核及您所选择的Linux主机发行版来提供;同时也包括Linux发行版本身的安全性和可靠性。最终,这意味着,您的容器与其运行时所依赖的Linux主机同样安全。

另一个重要因素是确保容器中运行的内容是可信的。Docker开源项目为不可变容器镜像引入了一种分层封装格式,但用户仍然需要确保他们所运行的镜像是安全的。每个容器镜像由一个基本的Linux用户空间层以及依赖于应用的其他层组成。例如,对于红帽企业版Linux 7和红帽企业版Linux 6,红帽提供了基本镜像,同时还通过认证容器注册表,为各种语言runtimes、中间件、数据库等提供了大量的认证镜像。红帽聘请了大批工程师从已知的源代码中封装镜像内容,并努力确保这些内容不存在漏洞。红帽还提供安全监控功能,以便在检测到新问题时,能够获得修复程序并发布更新的容器镜像,进而使企业用户能够更新他们运行在这些容器上的应用。

容器性能就是Linux性能

我们还能很容易看到容器性能如何与Linux性能相关联。一个容器镜像就是一个用于对容器实例进行实例化的分层Linux文件系统。对所使用的Linux文件系统的选择 – OverlayFS、Device Mapper、BTRFS、AUFS等,可能会影响到有效地构建、存储和运行这些镜像的能力。性能以及这方面的相关问题通常会涉及到Linux主机文件系统的故障排除。

红帽公司已经在与云原生计算基金会(CNCF)合作,在OpenShift上大规模地测试Kubernetes上的容器部署。在我们最近的性能基准测试中,在一个由100台物理服务器组成的裸机集群上以及一个由2048台虚拟机组成的虚拟机集群上测试了容器。当您阅读这些测试结果时,您很快就能够发现容器性能与Linux性能之间有多么密切的关系。在红帽公司,依靠我们的Linux性能和规模工程团队的技能和经验,并与客户和社区开展合作,以确定大规模运行容器的最佳配置。

容器的可靠性就是Linux的可靠性

最终,如果企业为其生产应用采用了容器,他们当然需要知道他们的容器是否可靠地运行。无论是关于安全性、性能、可扩展性或是一般质量方面的问题,容器的可靠性总是与其运行的Linux发行版的可靠性,以及其背后的供应商有莫大的关系。容器代表了一种在Linux上封装及运行应用的新方法。红帽公司在支持商业机构和公共部门把Linux用于关键任务应用方面具有悠久历史。可靠性是红帽企业版Linux的标志,也是它能够成为企业中Linux事实上的标准的原因。这种可靠性也是红帽企业版Linux正在成为在企业环境中运行Linux容器标准的原因。

 

 

文章来源    红帽