本節介紹如何建立自訂機器映像,以用作 Tanzu Kubernetes Grid (TKG) 獨立管理叢集及其建立的工作負載叢集的節點虛擬機器範本。
要為 vSphere with Tanzu 主管叢集建立自訂映像,請參閱 vSphere Tanzu Kubernetes Grid Image Builder 存放庫。
本主題提供有關 TKG 自訂映像的背景資訊。
附註若要將自訂機器映像用於管理叢集節點,您需要使用安裝程式介面來部署管理叢集,而不是從組態檔來部署。
每個自訂機器映像套件都會將基礎作業系統 (OS) 版本和 Kubernetes 版本以及任何其他自訂項目,封裝到 vSphere 上執行的映像中。Linux 自訂映像也可以在 AWS 或 Microsoft Azure 基礎結構上執行。自訂映像必須是以 Tanzu Kubernetes Grid 所支援的作業系統版本為基礎。基礎作業系統可以是 VMware 支援但未散佈的作業系統,例如 Red Hat Enterprise Linux (RHEL) v8。若要檢視支援的作業系統清單,請參閱目標作業系統。
若要為 Tanzu Kubernetes Grid 叢集節點建置自訂機器映像,請使用上游 Kubernetes Image Builder 專案中的容器映像。Kubernetes Image Builder 會在您的本機工作站上執行,且會使用以下內容:
ISO
,來建置「開放式虛擬化封存檔 (OVA)」映像。vm template
。若為常見的「作業系統版本/Kubernetes 版本/目標基礎結構」組合,Tanzu Kubernetes Grid 會提供預設機器映像。例如,在 vSphere 上,會有一個 ova-ubuntu-2004-v1.24.10+vmware.1-tkg
映像作為 Ubuntu v20.04 和 Kubernetes v1.24.10 的 OVA 映像。
若為其他的「作業系統版本/Kubernetes 版本/基礎結構」組合 (例如 RHEL v8 作業系統或 Windows),則沒有預設的機器映像,但您可以建置它們。
如果您建置並使用自訂映像,且其作業系統版本、Kubernetes 版本和基礎結構與預設映像相同,則您的自訂映像會取代預設映像。之後,Tanzu CLI 會使用您的自訂映像來建立新叢集,且不再使用該「作業系統版本/Kubernetes 版本/目標基礎結構」組合的預設映像。
叢集 API (CAPI) 是根據不可變基礎結構的原則來建置的。構成叢集的所有節點都是從一般範本或機器映像衍生而來。
當 CAPI 從機器映像來建立叢集時,它會預期有些項目需要加以設定、安裝,以及可供存取或正在執行,這些項目包括:
kubeadm
、kubelet
和 kubectl
版本。containerd
。kubeadm init
和 kubeadm join
的所有必要映像。您必須包含任何未發佈且必須在本機提取的映像,如同使用 VMware 簽署的映像一樣。cloud-init
已設定為接受啟動指示。如需如何建置映像的相關資訊,請參閱以下主題。