APP下载

Kubernetes正式支援containerd1.1版,改善Kubernetes效能

消息来源:baojiabao.com 作者: 发布时间:2024-04-23

报价宝综合消息Kubernetes正式支援containerd1.1版,改善Kubernetes效能
图片来源: 

Kubernetes

在2016年,Docker公司为容器技术标准化做出的重要贡献,就是将Docker引擎中的Runtime元件containerd开源释出,而云端服务四大龙头AWS、微软、Google及IBM,都承诺要投入该专案。事隔一年,Kubernetes开始支援Containerd,还推出了容器Runtime界面(Container Runtime Interface,CRI),让Kubernetes可以相容不同的容器Runtime,而在近日Kubernetes宣布,该调度工具要正式支援containerd,现在正式环境中的Kubernetes丛集,也要可以执行containerd 1.1版了。只要是版本序号在1.1版后的Kubernetes,都能相容containerd。

原先支援containerd 1.0版时,Kubernetes的设计架构,Kubelet与containerd间,夹着cri-containerd,而该Daemon程式,会负责Kubelet传来的需求,并使用containerd,管理容器及容器映像档。虽然该机制比Docker设计的更为精简,不过Kubernetes认为,这样设计仍不利于开发者进行部署工作,也会带来不必要的讯息传输成本。

而现在支援containerd 1.1后,cri-containerd被重新设计结构,变成containerd CRI套件,不仅内建在containerd中,也预设启用。如此一来,Kubelet就能直接与containerd沟通,“让整合变得更稳定、有效率。”Kubernetes表示。

而这个翻新的架构,也改善了Kubernetes的效能,“包含Pod启动效能,以及Daemon程式资源使用效率。”Kubernetes也比较了使用Docker 18.03 CE版,和containerd 1.1版的效能。相比使用Docker,使用containerd,能改善Pod的启动延迟性(Startup Latency)。如果在单一丛集内,开启105个Pod(目前单一丛集可容纳的最大数量),“无论是CPU、内存的使用,containerd 1.1版都比Docker 18.03 CE版更好。”Kubernetes举例,像是runtime CPU使用量,containerd比Docker少了68.13%。

不过也有不少开发者好奇,这样是否代表,未来就不能在Kubernetes环境,使用Docker引擎。而Kubernetes表示,由于Docker引擎是建置在containerd之上,而下一个社群版Docker,也会整合containerd 1.1版。由于Kubelet、Docker引擎都会使用containerd这个元件,Kubernetes表示,使用者除了能受益于Kubernetes的功能、效能改进外,也能保留既有使用Docker引擎的应用。

而现在支援containerd 1.1后,cri-containerd被重新设计结构,变成containerd CRI套件,不仅内建在containerd中,也预设启用。如此一来,Kubelet就能直接与containerd沟通,让整合工作变得更稳定、有效率。图片来源:Kubernetes

Kubernetes表示,由于Docker引擎是建置在containerd之上,而下一个社群版Docker,也会整合containerd 1.1版。由于Kubelet、Docker引擎都会使用containerd这个元件,Kubernetes表示,使用者除了能受益于Kubernetes的功能、效能改进外,也能保留既有使用Docker引擎的应用。图片来源:Kubernetes

 

 

2018-05-25 17:32:00

相关文章