TKG 服務提供兩個 API 和支援用戶端,用於佈建 TKG 叢集和管理其生命週期。

TKG 叢集佈建

此圖說明了在 主管 上佈建 TKG 叢集的工作流程。
圖 1. 主管 上佈建 TKG 叢集
在 主管 上佈建 TKG 叢集

TKG 叢集類型

有兩種類型的 Kubernetes 工作負載叢集可以在 vSphere IaaS control plane 基礎結構上佈建,其中 主管 作為管理叢集運作並託管 Kubernetes 叢集 API (CAPI)。每種類型以 ClusterClass 為基礎。請參閱 TKR 版本資訊以取得支援的版本。另請參閱 將 Kubernetes 版本與 TKG 服務 叢集搭配使用
具有參考預設 ClusterClass (名為 tanzukubernetescluster) 的 CAPI 叢集的 TanzuKubernetesCluster
叢集簽章:
apiVersion: run.tanzu.vmware.com/v1alpha3
kind: TanzuKubernetesCluster

這種類型的工作負載叢集是使用叢集 API (CAPI) 建置、參考預設 ClusterClass (名為 Tanzu Kubernetes) 的 tanzukubernetescluster 叢集。叢集類型為 TanzuKubernetesCluster,佈建 API 為 v1alpha3。由於這是建置於 CAPI 叢集之上的抽象,因此不會在叢集資訊清單中指定對後端叢集類別的參考。該參考由系統處理。

對於這種類型的工作負載叢集,TanzuKubernetesCluster 物件位於一線,並用作抽象層。佈建此類叢集的工作流程與在 vSphere IaaS control plane 版本 7 上佈建 TKGS 叢集的工作流程相同。

參考預設 ClusterClass (名為 tanzukubernetescluster) 的 CAPI 叢集
叢集簽章:
apiVersion: cluster.x-k8s.io/v1beta1
kind: Cluster
這種類型的工作負載叢集是使用叢集 API 建置、參考預設 ClusterClass (名為 tanzukubernetescluster) 的純 CAPI 叢集。叢集類型為 Cluster,佈建 API 為 v1beta1
對於此類型的工作負載叢集,CAPI 叢集 API 位於一線;沒有 TKC 抽象層。系統提供了用於處理基礎結構的控制器,因此您無需建立 ClusterClass 相關物件。將公開變數,以便您可以自訂叢集。叢集規格中的欄位與 TKC 規格中的欄位不同,但佈建工作流程是相同的。

TKG 叢集佈建 API

vSphere 8 主管 上的 TKG 提供了兩個 API 用於管理 TKG 叢集的生命週期:v1alpha3v1beta1。這兩個 API 本質上都是宣告式的,類似於 Kubernetes API。透過宣告式叢集佈建,可以指定 TKG 叢集的所需狀態:節點數目、可用儲存區、虛擬機器大小、Kubernetes 軟體版本。TKG 可執行工作來佈建和維護與宣告狀態相符的叢集。

如果要將現有 Tanzu Kubernetes 叢集升級到 vSphere 8 主管 上的 TKG,該叢集必須使用 v1alpha2 API,這樣才能開始升級程序。如需完整詳細資料,請參閱升級說明文件:
API 種類 vCenter 版本 說明
v1beta1 叢集 vCenter 8+ 用於管理以叢集類別為基礎之叢集生命週期的新 API。
v1alpha3 TanzuKubernetesCluster vCenter 8+ 繼續使用 v1alpha2 API。v1alpha3 API 支援 API v1alpha2 支援的所有功能。新增了新功能。
v1alpha2 TanzuKubernetesCluster vCenter 7 U3 舊版 API,用於在 vCenter 7 U3 主管上佈建 Tanzu Kubernetes 叢集,以及將叢集升級到 vCenter 8 主管。在升級到 vSphere 8 或在其上進行佈建時,v1alpha2 API 會自動轉換為 v1alpha3 API。
v1alpha1 TanzuKubernetesCluster vCenter 7 U1、U2 已棄用的 API,用於在第一代 vCenter 7 主管上佈建 Tanzu Kubernetes 叢集。

TKG 叢集佈建用戶端

vSphere 8 主管 上的 TKG 支援用於佈建 TKG 叢集的各種用戶端工作流程: