为云原生堆栈选择操作系统和容器运行时

开源云中文社区
容器重新定义了操作系统(OS)的角色。随着大量繁重的工作转移到容器运行时,操作系统已经成为一个提供物理资源访问的“薄层”。这种转变催生了一种新的操作系统,称为容器优化操作系统(container optimized OS,COS)。

容器重新定义了操作系统(OS)的角色。随着大量繁重的工作转移到容器运行时,操作系统已经成为一个提供物理资源访问的“薄层”。这种转变催生了一种新的操作系统,称为容器优化操作系统(container optimized OS,COS)。

COS构成了云原生堆栈的基础层,位于集群的物理基础设施之上一层。与传统操作系统相比,COS是一种轻量级操作系统,占用空间小得多。它包含运行容器运行时所需的最基本组件。选择正确的COS对维护CaaS部署有很大帮助。

用户可以选择红帽公司的Fedora CoreOS,Talos System的Talos,Kinvolk GmbH的Flatcar Container Linux,或者SUSE的RancherOS,来部署COS。

大多数供应商提供可选的商业订阅计划,包括定期更新、修补程序和专业支持。

容器运行时

容器运行时负责管理容器的生命周期,提供执行环境,并充当工作负载和主机操作系统之间的接口。

2015年,Linux基金会发起了开放容器倡议(OCI),以实现容器运行时实现的平等。OCI目前定义了两个规范:运行时规范和镜像格式规范。

根据OCI网站,运行时规范概述了如何运行解包到磁盘上的“文件系统捆绑包”。在较高的层上,OCI实现将下载OCI镜像,然后将该镜像解压到OCI运行时文件系统包中。

镜像格式规范定义了如何创建OCI镜像(通常由构建系统完成),以及如何输出镜像清单、文件系统(层)序列化和映像配置。

Mirantis收购Docker Enterprise后,商业版Docker Engine(Docker Engine Enterprise)由Mirantis出售,提供企业级支持和专业服务。

Containerd project已经发展成为容器运行时的行业标准。它是CNCF的一个毕业项目,在许多生产环境中使用。CRI-O目前是一个社区积极参与的CNCF孵化项目。

Docker Engine(现在是Docker CE)是容器管理平台使用的最流行的容器运行时之一。Frakti是一个基于管理程序的Kubernetes容器运行时,通过在专用虚拟机中运行pod,提供了更强大的隔离。其他选择还有Kata Containers和runC。

THEEND

最新评论(评论仅代表用户观点)

更多
暂无评论