在了解相關背景知識後,我們進入到 Kubernetes 的章節!
Kubernetes 是一個開源的容器管理工具,它可以用於自動化
最初是由 Google 使用 Golang 開發,後來是給 CNCF(Cloud Native Computing Foundation)管理。
Kubernetes 可以將「n」個容器分組為一個邏輯單位,以便輕鬆管理和部署。
它能夠與所有雲端服務提供商(如公共雲、混合雲和內部部署)出色地協同工作。
首先,我們必須安裝 Kubernetes 並設置 Kubernetes 集群。
至少需要一個主節點和兩個工作節點。
我們可以在任何提供 Kubernetes 作為服務的雲端平台上設置 Kubernetes 集群。
之後,我們必須部署清單文件,包括:
完成編寫清單文件後,使用 kubectl
透過該文件部屬 pods。
在完成建立 pods 後,我們可能需要將服務公開到外部。
因此,我們需要再編寫一個清單文件,包含:
至此有個疑問,Docker 跟 Kubernetes 差在哪裡?
Docker 更多地專注於單個容器的運行和管理。
而 Kubernetes 則提供了容器集群的全面管理和編排功能。
通常,Docker 用於容器的建立和運行,Kubernetes 用於管理和協調這些容器。
以下提供幾個 feature 比較兩者用來管理和容器編排工具
功能 | Kubernetes | Docker (Docker Swarm) |
---|---|---|
自動擴展 | 是 | 否 |
負載均衡 | 自動 | 手動配置 |
滾動更新 | 直接對容器進行 | 對 Pods 整體進行 |
儲存 | 與其他容器共享 | 在同一 Pods 內的多個容器之間 |