最热技术容器(关于容器的发展)
History:
containerd于2014年出生于Docker,最初是Docker引擎的低层运行时管理器。继2017年3月被CNCF接受之后,containerd已经成为一个行业标准的容器运行时,专注于简单性,健壮性和可移植性,其最广泛的用途和采用是Docker引擎和OCI runc执行器之间的层。containerd可用作Linux和Windows的守护程序。它管理其主机系统的完整容器生命周期,从图像传输和存储到容器执行和监督,再到低级存储,再到网络附件等。
背景:1、containerd是一个行业标准的容器运行时,强调简单性,健壮性和可移植性。containerd可用作Linux和Windows的守护程序。
2、containerd管理其主机系统的完整容器生命周期,从图像传输和存储到容器执行和监督,再到低级存储,再到网络附件等。
特征:
1、OCI Image Spec支持
2、图像推拉支持
3、用于创建,修改和删除接口的网络基元
4、多租户支持CAS存储全局图像
5、OCI运行时规范支持(又名runC)
6、容器运行时和生命周期支持
7、管理网络名称空间容器以加入现有名称空间
future:
截至今天,业界有一个重要的趋势,即从VM迁移到容器以部署软件应用程序。其主要原因是与VM相比,容器提供的灵活性和低成本。谷歌多年来一直使用容器技术与Borg和Omega容器集群管理平台大规模运行Google应用程序。更重要的是,Google通过实施cgroup和参与libcontainer项目为容器空间做出了贡献。在过去几年中,Google可能已经在使用容器的性能,资源利用率和整体效率方面获得了巨大的收益。最近,微软没有在Windows平台上进行操作系统级虚拟化,立即采取措施在Windows Server上实现对容器的本机支持。
在生产环境中,Docker、Rocket和其他容器平台不能在单个主机上运行,原因是它们暴露于单个故障点。当一个容器集合在单个主机上运行时,如果主机失败,在该主机上运行的所有容器也将失败。为了避免这种情况,需要使用容器主机集群。解决这个问题的第一个最开放源码的容器集群管理平台之一是Apache Mesos。它最初是作为一个研究项目在加州大学伯克利分校开发的,后来在2012年左右转移到了阿帕奇(Apache)。Google采取了类似的步骤来实现一个先进的、开放源码的容器集群管理系统,名为Kubernetes。Docker还启动了一个名为Docker Swarm的解决方案。今天,这些解决方案还处于非常早期的阶段,可能需要几个月才能完成全部功能集,并在生产环境中广泛应用。
微型服务是另一项突破性的技术,而不是一种使用容器进行部署的软件体系结构。微服务是一个Web服务的轻量级实现,与标准Web服务相比,它的启动速度非常快。这是通过在一个服务中打包一个功能单元并将其嵌入到一个轻量级的Web服务器二进制文件中来实现的。
通过考虑上述事实,我们可以预测,在未来几年内,容器可能会占用虚拟机,有时可能会完全取代它们。去年,我与一些企业合作,在POC层面实施基于容器的解决方案。很少有人想接受挑战并将其投入生产。随着容器集群管理系统变得更加成熟,这可能会很快发生变化