在 vSphere 叢集上啟用 vSphere IaaS control plane 且成為 主管 後,將在 Hypervisor 層內建立 Kubernetes 控制平面。此層包含特定物件,讓您能夠在 ESXi 內執行 Kubernetes 工作負載。
此圖顯示了 vSphere IaaS control plane 高層級架構,其中 Tanzu Kubernetes Grid 位於頂部,主管 位於中間,ESXi、網路和儲存區位於底部,由 vCenter Server 對其進行管理。
主管 在 SDDC 層的最上方執行,其中包含的 ESXi 用於計算資源、NSX 或 VDS 網路,以及 vSAN 或其他共用儲存區解決方案。共用儲存區用於 vSphere 網繭 的持續性磁碟區、在 主管 內執行的虛擬機器,以及 Tanzu Kubernetes Grid 叢集中的網繭。建立主管後,身為 vSphere 管理員,您可以在主管中建立 vSphere 命名空間。身為 DevOps 工程師,您可以執行由 vSphere 網繭中執行的容器組成的工作負載,透過虛擬機器服務部署虛擬機器,以及建立 Tanzu Kubernetes Grid 叢集。
可以在三個 vSphere 區域上部署 主管,以提供叢集層級的高可用性,這可以防止 Kubernetes 工作負載發生叢集層級故障。一個 vSphere 區域對應到一個可以設定為獨立故障網域的 vSphere 叢集。在三區域部署中,所有三個 vSphere 叢集都變為一個 主管。還可以在一個 vSphere 叢集上部署一個 主管,這將自動建立一個 vSphere 區域並將其對應到該叢集,除非您使用已對應到某個區域的 vSphere 叢集。在單一叢集部署中,主管 僅在 vSphere HA 提供的主機層級具有高可用性。
在三區域 主管 上,可以在使用虛擬機器服務建立的 Tanzu Kubernetes Grid 叢集和虛擬機器上執行 Kubernetes 工作負載。三區域 主管 具有以下元件:
- 主管 控制平面虛擬機器。一共在 主管 上建立了三個 主管 控制平面虛擬機器。在三區域部署中,每個區域駐留一個控制平面虛擬機器。這三個 主管 控制平面虛擬機器會進行負載平衡,因為每個虛擬機器都有自己的 IP 位址。此外,還會為其中一個虛擬機器指派一個浮動 IP 位址,並保留第 5 個 IP 位址用於修補。vSphere DRS 會確定控制平面虛擬機器在屬於 主管 的 ESXi 主機上的確切放置,並在需要時進行移轉。
- Tanzu Kubernetes Grid 和叢集 API。在 主管 上執行的模組,能夠佈建和管理 Tanzu Kubernetes Grid 叢集。
- 虛擬機器服務.負責部署及執行獨立虛擬機器以及構成 Tanzu Kubernetes Grid 叢集的虛擬機器的模組。
在三區域 主管 中,將在對應到區域的每個 vSphere 叢集上建立一個命名空間資源集區。命名空間分散在每個區域中的所有三個 vSphere 叢集中。用於三區域 主管 的命名空間的資源是從所有三個基礎 vSphere 叢集等分獲得的。例如,如果需要 300 MHz 的 CPU,則將從每個 vSphere 叢集中獲得 100 MHz。
在單一 vSphere 叢集上部署的 主管 還具有三個控制平面虛擬機器,它們駐留在叢集的 ESXi 主機部分上。在單一叢集 主管 上,除了 Tanzu Kubernetes Grid 叢集和虛擬機器外,還可以執行 vSphere 網繭。vSphere DRS 與 主管 控制平面虛擬機器上的 Kubernetes 排程器整合,以便 DRS 確定 vSphere 網繭 的放置。身為 DevOps 工程師,當您排程 vSphere 網繭 時,請求會進行一般的 Kubernetes 工作流程,然後進入 DRS,從而進行最終的放置決策。
由於 vSphere 網繭 支援,單一叢集 主管 具有以下附加元件:
- Spherelet。系統會在每台主機上建立一個名為 Spherelet 的額外程序。它是原生移植到 ESXi 的一個 kubelet,並允許 ESXi 主機成為 Kubernetes 叢集的一部分。
- Container Runtime Executive (CRX) 元件。從 Hostd 和 vCenter Server 的觀點來看,CRX 類似於虛擬機器。CRX 包含與 Hypervisor 共同運作的半虛擬化 Linux 核心。CRX 使用與虛擬機器相同的硬體虛擬化技術,其周圍有虛擬機器界限。使用直接開機技術,可讓 CRX 的 Linux 客體在不需通過核心初始化的情況下啟動主要初始化程序。這可讓 vSphere 網繭 開機的速度幾乎與容器一樣快。