Kubernetes vs Docker:了解2021年的容器

- 前言 -

- 什么是容器? -


- 什么是 Docker? -
管理容器生命周期。 代理請求來回容器。 監(jiān)視和記錄容器活動(dòng)。 安裝共享目錄。 對容器設(shè)置資源限制。 生成鏡像。Dockerfile是構(gòu)建容器鏡像的格式文件。 從注冊處推送和拉取圖像。 在第一次迭代中,Docker 使用 Linux 容器 (LXC) 作為運(yùn)行時(shí)間后端。隨著項(xiàng)目的發(fā)展,LXC被容器所取代,docker自己的實(shí)施。現(xiàn)代docker安裝分為兩個(gè)服務(wù):containerd,負(fù)責(zé)管理容器;dockerd,處理剩余的部分。 

- 什么是 Kubernetes? -
吊艙:吊艙是共享內(nèi)存、CPU、存儲(chǔ)和網(wǎng)絡(luò)等資源的邏輯容器組。 自動(dòng)縮放:Kubernetes 可根據(jù)需要啟動(dòng)和停止吊艙,從而自動(dòng)適應(yīng)不斷變化的工作負(fù)載。 自我修復(fù):容器在故障時(shí)被監(jiān)控并重新啟動(dòng)。 負(fù)載均衡:請求分布在健康的可用吊艙上。 推出:kubernetes支持自動(dòng)推出和回滾。使 Canary 和 Blue-Green 等復(fù)雜程序變得微不足道。我們可以將Kubernetes的架構(gòu)視為兩架飛機(jī)的組合:


- 容器格式 -
定義鏡像二進(jìn)制格式的鏡像規(guī)范。 描述如何拆開和運(yùn)行容器的運(yùn)行時(shí)規(guī)范。OCI 維護(hù)稱為runc的參考實(shí)現(xiàn)。容器和 CRI-O 都使用背景中的流體生成容器。OCI 標(biāo)準(zhǔn)帶來了不同容器解決方案之間的互操作性。因此,一個(gè)系統(tǒng)內(nèi)置的圖像可以在任何其他合規(guī)堆棧中運(yùn)行。

- Docker VS Kubernetes -


- 棄用 Dockershim -
變?yōu)椋?nbsp;

- 那么,為什么要改變呢? -

- 我需要改變什么? -
使用Docker特定的日志記錄和監(jiān)視。即,從日志中解析 Docker 消息或投票 Docker API。 使用Docker優(yōu)化。 運(yùn)行依賴docker CLI 的腳本。 運(yùn)行docker命令在特權(quán)吊艙。例如:構(gòu)建鏡像。有關(guān)替代解決方案,請參閱卡尼科等項(xiàng)目。docker build 使用docker工人設(shè)置。 運(yùn)行窗口容器。容器確實(shí)在 Windows 中工作, 但它的支持水平還沒有達(dá)到 Docker 的。目標(biāo)是通過集裝箱版本 1.20為 Windows 提供穩(wěn)定的容器釋放。 如果您在 AWS EKS、Google GKE 或 Azure AKS 等云提供商上使用托管集群,請?jiān)?Docker 支持消失之前檢查您的集群是否使用了支持的運(yùn)行時(shí)。有些云供應(yīng)商落后幾個(gè)版本,因此您可能有更多的時(shí)間來計(jì)劃。因此,請咨詢您的提供商。舉個(gè)例子,谷歌云宣布,他們正在改變默認(rèn)運(yùn)行時(shí)從Docker到容器的所有新創(chuàng)建的工人節(jié)點(diǎn),但你仍然可以選擇Docker。
切換到容器 切換到CRI-O 或者,如果你想繼續(xù)使用Docker過去的版本1.23,按照cri-dockerd項(xiàng)目,它計(jì)劃保持Docker作為一個(gè)可行的運(yùn)行時(shí)選擇。

評論
圖片
表情
