Docker作為非常流行的容器技術(shù),之前經(jīng)常有文章說(shuō)它被K8S棄用了,取而代之的是另一種容器技術(shù)containerd!其實(shí)containerd只是從Docker中分離出來(lái)的底層容器運行時(shí),使用起來(lái)和Docker并沒(méi)有啥區別,本文主要介紹下containerd的使用,希望對大家有所幫助!
containerd是一個(gè)工業(yè)級標準的容器運行時(shí),它強調簡(jiǎn)單性、健壯性和可移植性。containerd可以在宿主機中管理完整的容器生命周期,包括容器鏡像的傳輸和存儲、容器的執行和管理、存儲和網(wǎng)絡(luò )等。
containerd是從Docker中分離出來(lái)的一個(gè)項目,可以作為一個(gè)底層容器運行時(shí),現在它成了Kubernete容器運行時(shí)更好的選擇。
不僅僅是Docker,還有很多云平臺也支持containerd作為底層容器運行時(shí),具體參考下圖。
K8S CRI
K8S發(fā)布CRI(Container Runtime Interface),統一了容器運行時(shí)接口,凡是支持CRI的容器運行時(shí),皆可作為K8S的底層容器運行時(shí)。
K8S為什么要放棄使用Docker作為容器運行時(shí),而使用containerd呢?
如果你使用Docker作為K8S容器運行時(shí)的話(huà),kubelet需要先要通過(guò) dockershim
去調用Docker,再通過(guò)Docker去調用containerd。
如果你使用containerd作為K8S容器運行時(shí)的話(huà),由于containerd內置了 CRI
插件,kubelet可以直接調用containerd。
使用containerd不僅性能提高了(調用鏈變短了),而且資源占用也會(huì )變?。―ocker不是一個(gè)純粹的容器運行時(shí),具有大量其他功能)。
如果你之前用過(guò)Docker,你只要稍微花5分鐘就可以學(xué)會(huì )containerd了,接下來(lái)我們學(xué)習下containerd的使用。
docker
命令改為 crictl
命令即可操作containerd,比如查看所有運行中的容器;crictl ps
CONTAINER IMAGE CREATED STATE NAME ATTEMPT POD ID 4ca73ded41bb6 3b0b04aa3473f Less than a second ago Running helm 20 21103f0058872 3bb5767a81954 296a6d5035e2d About a minute ago Running coredns 1 af887263bd869 a5e34c24be371 0346349a1a640 About a minute ago Running nginx 1 89defc6008501
查看所有鏡像;
crictl images
IMAGE TAG IMAGE ID SIZE docker.io/library/nginx 1.10 0346349a1a640 71.4MB docker.io/rancher/coredns-coredns 1.8.0 296a6d5035e2d 12.9MB docker.io/rancher/klipper-helm v0.4.3 3b0b04aa3473f 50.7MB docker.io/rancher/local-path-provisioner v0.0.14 e422121c9c5f9 13.4MB docker.io/rancher/metrics-server v0.3.6 9dd718864ce61 10.5MB docker.io/rancher/pause 3.1 da86e6ba6ca19 327kB
進(jìn)入容器內部執行bash命令,這里需要注意的是只能使用容器ID,不支持使用容器名稱(chēng);
crictl exec -it a5e34c24be371 /bin/bash
查看容器中應用資源占用情況,可以發(fā)現占用非常低。
crictl stats
CONTAINER CPU % MEM DISK INODES 3bb5767a81954 0.54 14.27MB 254B 14 a5e34c24be371 0.00 2.441MB 339B 16
從Docker轉型containerd非常簡(jiǎn)單,基本沒(méi)有什么門(mén)檻。只要把之前Docker命令中的 docker
改為 crictl
基本就可以了,果然是同一個(gè)公司出品的東西,用法都一樣。所以不管K8S到底棄用不棄用Docker,對我們開(kāi)發(fā)者使用來(lái)說(shuō),基本沒(méi)啥影響!
到此這篇關(guān)于再見(jiàn) Docker如何5分鐘轉型 containerd的文章就介紹到這了,更多相關(guān)docker轉型containerd內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自本網(wǎng)站內容采集于網(wǎng)絡(luò )互聯(lián)網(wǎng)轉載等其它媒體和分享為主,內容觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如侵犯了原作者的版權,請告知一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容,聯(lián)系我們QQ:712375056,同時(shí)歡迎投稿傳遞力量。
Copyright ? 2009-2022 56dr.com. All Rights Reserved. 特網(wǎng)科技 特網(wǎng)云 版權所有 特網(wǎng)科技 粵ICP備16109289號
域名注冊服務(wù)機構:阿里云計算有限公司(萬(wàn)網(wǎng)) 域名服務(wù)機構:煙臺帝思普網(wǎng)絡(luò )科技有限公司(DNSPod) CDN服務(wù):阿里云計算有限公司 百度云 中國互聯(lián)網(wǎng)舉報中心 增值電信業(yè)務(wù)經(jīng)營(yíng)許可證B2
建議您使用Chrome、Firefox、Edge、IE10及以上版本和360等主流瀏覽器瀏覽本網(wǎng)站