色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Docker、Containerd和Kubernetes之間的關系

阿銘linux ? 來源:阿銘linux ? 2023-04-08 10:44 ? 次閱讀

1)Kubernetes與Docker

Docker是最早出現的那批容器引擎工具,所以它最早占領了市場。Kubernetes主要用來做容器編排,用來管理容器集群,是一個平臺。

Kubernetes要想去控制容器,就得借助容器引擎,在早期的Kubernetes版本里,除了選擇Docker作為容器引擎外,沒更好的選擇。所以早期的Kubernetes和Docker深深地綁定了在一起。由于Docker可以在沒有Kubernetes的情況下使用,而Kubernetes必須要有容器運行時(Docker引擎)才能進行編排。

這對于Kubernetes來說,絕對是一個非常大的隱患,這相當于是將自己命根子交給了別人,如果哪天Docker翻臉了,Kubernetes必然損失巨大。

好在,Kubernetes發展比Docker更加迅猛,勢頭遠遠蓋過了Docker,Kubernetes終于有資格自己決定做一些事情了。

2)CRI

為了解決隱患,Kubernetes在1.5版本里,引入了一個新的接口標準:CRI(Container Runtime Interface),它主要用來規定如何調用容器運行時來管理容器和鏡像,但這個接口標準和之前的Docker調用標準有不少差異,所以兩者完全不兼容。這意味著,Kubernetes可以撇開Docker,使用其它容器運行時(如rkt)。

由于Docker用戶非常龐大,Kubernetes也意識到了直接不兼容Docker會有許多不確定風險,當時,Kubernetes用了一個臨時方案,在Kubernetes和Docker中間開發了一個Dockershim,主要用來將Docker的接口標準轉換成CRI標準。

3)Containerd

Docker意識到Kubernetes的改變,為了迎合Kubernetes,將Docker Engine拆分成多個模塊,其中Docker Daemon部分也就是說Containerd捐獻給了CNCF。

所以,Containerd實際上是Docker引擎拆出來的一個模塊。

Containerd 作為 CNCF 的托管項目,自然是要符合 CRI 標準的。但當時的Docker 出于自己諸多原因的考慮,它只是在 Docker Engine 里調用了 containerd,外部的接口仍然保持不變,也就是說還不與 CRI 兼容。

在當時的Kubernetes版本里,有兩種方法調用容器:

第一種是用 CRI 調用 dockershim,然后 dockershim 調用 Docker,Docker 再走 containerd 去操作容器。

第二種是用 CRI 直接調用 containerd 去操作容器。

6de4b732-d5a9-11ed-bfe3-dac502259ad0.png

很明顯,第一種方法多了兩層調用,性能明顯不如第二種方法。所以Kubernetes決定將dockershim移除,所以也就不能直接使用Docker了,在外界看來就像是Kubernetes棄用了Docker。

4)棄用dockershim

2020年Kubernetes發布1.20版本時,對外聲明將在后續版本里(實際上是在22年的1.24版本里)移除dockershim,也就是取消對Docker的支持。當時,眾多吃瓜群眾理解錯了意思,認為成了Kubernetes棄用Docker。它實際上只是“棄用了 dockershim”這個小組件,也就是說把 dockershim 移出了 kubelet,并不是“棄用了 Docker”這個軟件產品

這個舉措對Kubernetes和 Docker 來說都不會有什么太大的影響,因為他們兩個都早已經把下層都改成了開源的 containerd,原來的 Docker 鏡像和容器仍然會正常運行,唯一的變化就是 Kubernetes繞過了 Docker,直接調用 Docker 內部的 containerd 而已。

5)Kubernetes移除dockershim后對Docker的影響

雖然現在 Kubernetes 不再默認綁定 Docker,但 Docker 還是能夠以其他的形式與 Kubernetes 共存的。

首先,因為容器鏡像格式已經被標準化了(OCI 規范,Open Container Initiative),Docker 鏡像仍然可以在 Kubernetes 里正常使用,原來的開發測試、CI/CD 流程都不需要改動,我們仍然可以拉取 Docker Hub 上的鏡像,或者編寫 Dockerfile 來打包應用。

其次,Docker 是一個完整的軟件產品線,不止是 containerd,它還包括了鏡像構建、分發、測試等許多服務,甚至在 Docker Desktop 里還內置了 Kubernetes。單就容器開發的便利性來講,Docker 還是暫時難以被替代的,廣大云原生開發者可以在這個熟悉的環境里繼續工作,利用 Docker 來開發運行在 Kubernetes 里的應用。

再次,雖然 Kubernetes 已經不再包含 dockershim,但 Docker 公司卻把這部分代碼接管了過來,另建了一個叫 cri-dockerd的項目,作用也是一樣的,把 Docker Engine 適配成 CRI 接口,這樣 kubelet 就又可以通過它來操作 Docker 了,就仿佛是一切從未發生過。

綜合來看,Docker 雖然在容器編排戰爭里落敗,被 Kubernetes 排擠到了角落,但它仍然具有強韌的生命力,多年來積累的眾多忠實用戶和數量龐大的應用鏡像是它的最大資本和后盾,足以支持它在另一條不與 Kubernetes 正面交鋒的道路上走下去。而對于我們這些初學者來說,Docker 方便易用,具有完善的工具鏈和友好的交互界面,市面上很難找到能夠與它媲美的軟件了,應該說是入門學習容器技術和云原生的“不二之選”。

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 容器
    +關注

    關注

    0

    文章

    495

    瀏覽量

    22060
  • 鏡像
    +關注

    關注

    0

    文章

    164

    瀏覽量

    10707
  • Docker
    +關注

    關注

    0

    文章

    457

    瀏覽量

    11846
  • kubernetes
    +關注

    關注

    0

    文章

    224

    瀏覽量

    8712

原文標題:Docker、Containerd和Kubernetes之間的關系

文章出處:【微信號:aming_linux,微信公眾號:阿銘linux】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    Kubernetes架構和核心組件組成 Kubernetes節點“容器運行時”技術分析

    的服務,而這些都是受Master的控制。 每次個節點上當然都要運行DockerDocker來負責所有具體的映像下載和容器運行。 Kubernetes主要由以下幾個核心組件組成: 1)etcd保存了整個
    的頭像 發表于 09-25 15:53 ?3442次閱讀
    <b class='flag-5'>Kubernetes</b>架構和核心組件組成 <b class='flag-5'>Kubernetes</b>節點“容器運行時”技術分析

    Containerd常見命令操作

    作為接替 Docker 運行時的 Containerd 在早在 Kubernetes1.7 時就能直接與 Kubelet 集成使用,只是大部分時候我們因熟悉 Docker,在部署集群時
    的頭像 發表于 08-30 10:08 ?4976次閱讀

    Kubernetes之路 2 - 利用LXCFS提升容器資源可見性

    摘要: 這是本系列的第2篇內容,將介紹在DockerKubernetes環境中解決遺留應用無法識別容器資源限制的問題。本系列文章記錄了企業客戶在應用Kubernetes時的一些常見問題第一篇
    發表于 04-17 14:05

    Kubernetes和Mesos集成的優勢與原理

    Kubernetes是一個docker集群管理工具,主要包含資源管理,部署運行,服務發現,擴容縮容等功能,幫助用戶把所有的應用都部署在Docker Container里邊,Kubernetes
    發表于 10-12 17:46 ?0次下載
    <b class='flag-5'>Kubernetes</b>和Mesos集成的優勢與原理

    軟件容器平臺Docker受實體清單限制使用 Docker開源項目應不受影響

    有網友指出此次 Docker 更新的服務協議只是針對 Docker Inc. 相關網站上提供的服務,而大家常提的 Docker(包含 engine、runc 和 containerd
    的頭像 發表于 08-19 09:52 ?2697次閱讀

    解析DockerKubernetes、Openshift的發展歷史及架構

    Kubernetes前身是谷歌大規模集群管理系統Brog,它基于容器技術,實現資源管理的自動化,以及跨數據中心資源利用的最大化。Kubernetes于2015年正式對外發布,經過4年多的發展,為容器編排提供強大的解決方案,成為云原生系統的重要支撐。
    的頭像 發表于 09-08 10:15 ?4293次閱讀

    簡單說明k8s和Docker之間關系

    這篇文章主要介紹了k8s和Docker關系簡單說明,本文利用圖文講解的很透徹,有需要的同學可以研究下 最近項目用到kubernetes(以下簡稱k8s,k和s之間有8個字母)。雖然之前
    的頭像 發表于 06-24 15:48 ?3403次閱讀

    Kubernetes是什么,一文了解Kubernetes

    香了。 這時候就需要我們的主角 Kubernetes 上場了,先來了解一下 Kubernetes 的基本概念,后面再介紹實踐,由淺入深步步為營。 關于 Kubernetes 的基本概念我們將會圍繞如下七點展開: 一、
    發表于 12-21 13:40 ?1811次閱讀
    <b class='flag-5'>Kubernetes</b>是什么,一文了解<b class='flag-5'>Kubernetes</b>

    docker-book DockerKubernetes開源書

    gitee-docker-book.zip
    發表于 04-19 14:22 ?0次下載
    <b class='flag-5'>docker</b>-book <b class='flag-5'>Docker</b>與<b class='flag-5'>Kubernetes</b>開源書

    Containerd控制runC的守護進程

    ./oschina_soft/containerd.zip
    發表于 05-11 10:05 ?0次下載
    <b class='flag-5'>Containerd</b>控制runC的守護進程

    一文詳解Kubernetes架構原理

    打開這篇文章的同學,想必對 Docker 都不會陌生。Docker 是一種虛擬容器技術,它上手比較簡單,只需在宿主機上起一個 Docker Engine,然后就能愉快的玩耍了,如:拉鏡像、起容器、掛載數據、映射端口等等。相對
    的頭像 發表于 07-14 09:50 ?1060次閱讀

    什么是Kubernetes容器運行時CRI

    起初,Docker是事實上的容器技術標準,Kubernetes v1.5之前的代碼中直接調用Docker API,實現容器運行時的相關操作。
    的頭像 發表于 02-20 16:22 ?1502次閱讀
    什么是<b class='flag-5'>Kubernetes</b>容器運行時CRI

    Containerd基礎用法

    Docker 1.11 版本開始,Docker 容器運行就不是簡單通過 Docker Daemon 來啟動了,而是通過集成containerd、runc等多個組件來完成的。 雖然
    的頭像 發表于 04-11 10:50 ?780次閱讀

    docker容器與容器之間通信

    Docker是一種輕量級容器化技術,能夠將應用程序及其依賴項封裝在一個獨立、可移植的容器中。而容器化的應用程序通常是以分布式方式設計的,因此實現容器與容器之間的通信至關重要。 本文將詳細介紹
    的頭像 發表于 11-23 09:36 ?1544次閱讀

    如何啟動本機docker服務

    Docker: sudo apt- get update sudo apt- get install docker-ce docker-ce-cli containerd.io 對于
    的頭像 發表于 11-23 09:43 ?2154次閱讀
    主站蜘蛛池模板: 男人私gay挠脚心vk视频| 成人动漫百度影音| 999zyz色资源站在线观看| 97干97吻| www.久艹| 国产精品无需播放器| 黄色a三级三级三级免费看| 久久这里只有精品2| 欧美动物交ideos| 忘忧草高清| 亚洲一级特黄| 99热最新在线| 国产电影午夜成年免费视频| 国语自产视频在线| 久久亚洲人成网站| 日本一卡2卡3卡四卡精品网站| 亚洲 日韩 国产 制服 在线| 樱花草在线观看影院| JAVASCRIPTJAVA水多多| 国产精品自在自线亚洲| 久久婷婷色一区二区三区| 热久久免费频精品99热| 亚洲地址一地址二地址三| 4hu四虎免费影院www| 嘟嘟嘟WWW免费高清在线中文| 好色的妹妹| 欧美亚洲国产专区在线| 亚洲haose在线观看| 影音先锋av色咪影院| 成人在线免费看片| 娇女的呻吟亲女禁忌h16| 欧美日韩视频高清一区| 亚洲AV无码乱码A片无码蜜桃| 总裁呻吟双腿大开男男H| 纯肉高H种马艳遇风流多| 久久久久久免费高清电影| 日本欧美午夜三级| 尤蜜网站在线进入免费| 古代荡乳尤物H妓女调教| 蓝男色gay| 亚洲444777KKK在线观看|