以下主題定義 Tanzu Kubernetes Grid (TKG) 部署的重要詞彙和概念。本節中的其他主題會提供重要 TKG 元素的參考,並說明實驗性 TKG 功能。
Tanzu Kubernetes Grid (TKG) 是適用於 Kubernetes 的高階多雲端基礎結構。Tanzu Kubernetes Grid 可讓開發人員將 Kubernetes 當做公用程式使用,就像電網一樣。操作員可以使用此網格建立和管理用於裝載容器化應用程式的 Kubernetes 叢集,開發人員可以使用此網格來開發、部署和管理應用程式。如需詳細資訊,請參閱什麼是 Tanzu Kubernetes Grid?。
管理叢集這種 Kubernetes 叢集可部署和管理其他裝載容器化應用程式的 Kubernetes 叢集,稱為工作負載叢集。
有關管理叢集的詳細資訊,請參閱管理叢集:主管和獨立。
Tanzu Kubernetes Grid 部署的工作負載叢集是符合 CNCF 標準的 Kubernetes 叢集,其中部署並執行容器化應用程式和封裝服務。
工作負載叢集由管理叢集部署,並在相同的私有雲或公有雲基礎結構上執行。
您可以有多個工作負載叢集,為了符合其裝載應用程式的需求,工作負載叢集可以執行不同的 Kubernetes 版本,並具有不同的「拓撲」,包括可自訂的節點類型和節點計數、多種作業系統、處理器、儲存區,以及其他資源設定和組態。
對於網繭到網繭的網路,依預設,工作負載叢集會使用 Antrea,此外還可使用 Calico。
有關不同類型的工作負載叢集的詳細資訊,請參閱工作負載叢集。
Tanzu Kubernetes Grid 執行個體是完整部署的 Tanzu Kubernetes Grid,包括管理叢集、已部署的工作負載叢集及其執行的封裝服務。您可以針對於不同的環境 (例如:生產、暫存和測試)、不同的 IaaS 提供者 (例如 vSphere、Azure 和 AWS),以及不同的故障網域 (例如 Datacenter-1
、AWS us-east-2
或 AWS us-west-2
),操作許多 Tanzu Kubernetes Grid 執行個體。
Tanzu CLI 會啟用 tanzu
命令,以用來部署和操作 TKG。例如:
tanzu cluster
命令會與 TKG 管理叢集通訊,以建立和管理裝載容器化工作負載的工作負載叢集。tanzu package
命令會安裝和管理託管工作負載所使用的封裝服務。tanzu apps
命令會透過執行於工作負載叢集上的 Tanzu Application Platform,來管理所託管的工作負載。tanzu management-cluster
(或 tanzu mc
) 命令會在目標基礎結構上建立獨立管理叢集,來部署 TKG,然後在獨立管理叢集執行時管理部署。Tanzu CLI 會使用外掛程式,來模組化及擴充其功能。
使用獨立管理叢集時,管理叢集執行的 Kubernetes 版本與 Tanzu CLI 使用的 Kubernetes 版本相同。
如需詳細資訊,請參閱 Tanzu CLI 架構和組態。
啟動機器是一部用來下載及執行 Tanzu CLI 的筆記型電腦、主機或伺服器。
使用 Tanzu CLI 來部署獨立管理叢集時,它會先在啟動機器上建立管理叢集,以作為 kind
叢集,然後再將它部署至目標基礎結構。
將 Tanzu CLI 連線至現有管理叢集的方式取決於其部署選項:
啟動機器可以是本機筆記型電腦、Jumpbox 或是任何其他實體或虛擬機器。
為了安全又有效率執行,裝載 Kubernetes 應用程式的節點上通常需要有特定修補程式版本的 Kubernetes 和基礎作業系統,以及其他相容版本的元件。這些元件版本會隨時間改變。
為了促進流通性、安全性和相容性,VMware 發佈 Tanzu Kubernetes 版本 (TKr),其中封裝修補程式版本的 Kubernetes 及可執行 Kubernetes 的基礎作業系統版本,還有其他版本化元件來支援該版本的 Kubernetes 及其裝載的工作負載。
管理叢集使用 TKr 建立工作負載叢集,以執行所需的 Kubernetes 和作業系統版本。
舉凡特定 Kubernetes 修補程式版本在各種雲端基礎結構上的各種虛擬機器類型上執行所需的一切,每個 TKr 都會將其包含在內。
如需詳細資訊,請參閱 Tanzu Kubernetes 版本和自訂節點映像。
若要為託管的工作負載提供驗證、入口控制、容器登錄、可觀察性、服務探索和記錄等服務,您可以在 TKG 叢集中安裝 Tanzu 封裝的服務或套件。
除了在多個工作負載叢集中執行同一服務的不同執行個體,具有獨立管理叢集的 TKG 另外支援將某些服務安裝到共用服務叢集,這是一種可將其服務發佈到其他工作負載叢集的特殊工作負載叢集。
Tanzu 封裝的服務與 Carvel imgpkg 工具綁定在一起,且經 VMware 測試用於 TKG。
此類套件可包括:
有關如何下載和安裝 imgpkg
的資訊,請參見安裝 Carvel 工具。
在 Tanzu Kubernetes Grid v1.x 及 TKG 2.x 支援的以 TKC 為基礎的舊版叢集中。,叢集計劃是工作負載叢集的標準化組態。計劃會為控制平面節點、工作節點、虛擬機器類型等進行設定。
TKG v1.x 提供兩個預設計劃:dev
叢集具有一個控制平面節點和一個工作節點,prod
叢集具有三個控制平面節點和三個工作節點。
TKG 2.x 支援更精細的叢集拓撲組態,如設定以類別為基礎的工作負載叢集中所述。
ytt
覆疊TKG 叢集和計劃的組態設定來自上游開放原始碼來源,例如「叢集 API」專案及其 IaaS 特定的提供者專案。這些來源會以 YAML 來發佈 Kubernetes 物件規格,且會預先設定一些設定。
TKG 支援 Carvel ytt 覆疊,可自訂物件供您自行安裝,不具破壞性,保留原始 YAML 規格。當 YAML 自訂檔案位於啟動機器上時,這十分有用,因為直接變更這些檔案會損毀原始上游組態的本機複本。
安裝 TKG 外掛程式,則會在啟動機器的 ~/.config/tanzu/tkg
目錄中安裝叢集和叢集計劃組態檔,且這些組態支援 ytt
覆疊。
ytt
覆疊會指定如何在來源 YAML 檔案內變更目標位置中的目標設定,以支援任何可能的自訂。
如需詳細資訊,請參閱使用 ytt 設定進階 TKC 組態。
有關如何下載和安裝 ytt
的資訊,請參見安裝 Carvel 工具。
若要部署具有獨立管理叢集的 TKG,您可以執行 tanzu mc create --ui
命令,啟動 Tanzu Kubernetes Grid 安裝程式 (一種圖形精靈)。安裝程式精靈在啟動機器上執行,並提供使用者介面來引導您完成獨立管理叢集的部署程序。
在下列情況下,Tanzu CLI 使用叢集組態檔來建立叢集:
TKG 安裝程式建立獨立管理叢集時會從使用者介面擷取使用者輸入,並將輸入的值寫入叢集組態檔。然後,TKG 安裝程式會使用此叢集組態檔來部署獨立管理叢集。
叢集組態檔中的必要變數和選用變數取決於管理叢集部署選項:
升級 TKG 根據其部署選項而有所不同:
tanzu management-cluster upgrade
,會將獨立管理叢集升級至 CLI 版本的 Kubernetes。升級 Tanzu Kubernetes Grid 中的工作負載叢集表示將其節點移轉至具有較新版本 Kubernetes 的基礎虛擬機器映像上執行。依預設,工作負載叢集會升級至管理叢集的原生 Kubernetes 版本,但您可以指定將工作負載叢集升級至其他非預設 Kubernetes 版本。
若要瞭解 Tanzu Kubernetes Grid 中可用的 Kubernetes 版本,請參閱:
若要將管理叢集與 Tanzu Mission Control (具有 UI 主控台的 Kubernetes 管理平台) 整合在一起,請參閱: