Google Distributed Cloud 的 VM Runtime 是重要元件,可讓您在 Bare Metal 上安裝 Google Distributed Cloud (僅限軟體),並執行以虛擬機器為基礎的工作負載。
什麼是 GDC 的 VM 執行階段?
GDC 的 VM Runtime 是 Google Distributed Cloud 的一部分,可讓您在 Kubernetes 之上執行 VM,做法與執行容器相同。透過 GDC 上的 VM 執行階段,您可以在開發及執行新的容器式應用程式時,一併執行現有的 VM 型工作負載。GDC 上的 VM Runtime 就像其他虛擬化環境中的管理程序。
您可以使用 GDC 上的 VM Runtime 查看及管理 VM 狀態,並收集稽核或主控台記錄。VM Runtime on GDC 的運作方式,與其他虛擬化環境中使用的管理控制台工具類似。
您不必強制將現有的 VM 工作負載現代化或升級,才能使用 VM Runtime on GDC。VM 的運作方式與其他虛擬化環境相同,但可為叢集中的應用程式提供單一工作流程和程序,準備就緒後,您可以將這些 VM 工作負載遷移至容器,並繼續使用相同的 Google Kubernetes Engine (GKE) Enterprise 版管理工具。
優點
GDC 上的 VM 執行階段具備下列優勢:
- 能夠以程式輔助方式使用 VM 資源,就像使用容器一樣。
- 有效運用容器和 VM 的資源。
- 統一管理及運算 VM 和容器。
- 統一控管新容器化應用程式和舊版 VM 型應用程式之間的流量,並清楚掌握相關資訊。
- 簡化遷移至雲端或容器化應用程式的體驗。
透過 GDC 的 VM Runtime,您可以在裸機叢集上移轉 VM 或建立新的 VM。
GDC 的 VM Runtime 與 KubeVirt 的差異
GDC 上的 VM Runtime 是以 KubeVirt 開放原始碼專案為基礎。Kubevirt 專為 Kubernetes 而建,並遵循宣告式 API 模型,使用 Kubernetes 資源模型、自訂資源定義或運算符。GDC 的 VM Runtime 會將 Kubevirt 整合到 Google Distributed Cloud 軟體專用安裝中,提供一致的應用程式管理方式。本節將列出 VM Runtime on GDC 的部分主要功能,這些功能在 KubeVirt 中無法使用。
生命週期
VM Runtime on GDC 充分運用 GKE Enterprise 的強大功能,並與 GKE Enterprise 平台完全整合。您可以使用 CLI 指令、透過 API 或使用 Google Cloud 控制台,在 GDC 上安裝、升級及解除安裝 VM Runtime。搭配相容的儲存空間使用時,GKE Enterprise 叢集升級作業會包含主機間的 VM 工作負載即時遷移 (搶先版),盡量減少 VM 工作負載中斷的可能性。
雲端支援的管理體驗
GDC 上的 VM Runtime 可為內部部署安裝提供類似雲端的體驗。這項體驗包含下列新的雲端式基本元素:
物件,管理員可以建立具有特定 CPU 和記憶體設定的預先定義 VM 類型。
VirtualMachineType
VirtualMachineDisk
和StorageProfile
物件新增多個磁碟的支援,以及集中管理StorageClass
屬性。Network
物件可在 Kubernetes 中啟用類似虛擬交換器的功能。
儲存空間
GDC 上的 VM 執行階段會自動為叢集中的每個 StorageClass
產生儲存空間設定檔物件 StorageProfile
。這個新的設定檔物件可讓您從單一位置設定 VM 的 StorageClass
屬性,包括 accessMode
和 volumeMode
。
您可以將多個磁碟連接至 VM。您可以連結現有磁碟,也可以建立並連結新磁碟。新的 VirtualMachineDisk
自訂資源可讓您使用隨附的容器化資料匯入工具 (CDI),從現有映像檔建立空白磁碟或磁碟。CDI 甚至可讓您從 Cloud Storage 提取圖片,並以憑證確保安全。
網路
GDC 的 VM Runtime 擴充了 KubeVirt 的預設 pod-network
產品,提供更適合用於實際工作環境 VM 工作負載的網路選項。VM Runtime on GDC 會擴充現有的網路堆疊,該堆疊是以容器網路介面 (CNI) 架構為基礎。GDC 的 VM 執行階段會新增 Network
物件,在 Kubernetes 中啟用類似虛擬交換器的功能。Kubernetes 提供網路外掛程式,但這些外掛程式需要自行安裝、管理生命週期。透過 GDC 上的 VM 執行階段,VM 可以與多個第 2 層網路介面互動,包括支援 VLAN 標記、外部 DHCP 等。GDC 上的 VM 執行階段也會導入介面物件,即使 VM 重新啟動、遷移或重新建立,IP 和 MAC 位址仍可保持不變。新版網路堆疊也與 NetworkPolicy
整合,因此您可以使用 Kubernetes 基本元素,控制 VM 之間的第 4 層流量。
觀測能力
GDC 上的 VM Runtime 會自動支援Google Cloud 控制台中的 VM 可觀測性。除了 GKE 叢集和 GDC 上的 VM Runtime 記錄檔,VM 序列埠控制台記錄檔也會自動串流至 Cloud Logging。您可以在記錄檔探索工具中查看 VM 記錄檔和容器記錄檔。您可以在Google Cloud 控制台中查看 VM 的 CPU、記憶體、磁碟和網路指標。您也可以使用熟悉的 Google Cloud 服務,實作資訊主頁、快訊和通知整合功能。
管理
您可以使用指令列、API 和 Google Cloud 控制台,存取 GDC VM 執行階段的大部分功能。這種彈性做法支援多種開發人員和作業風格。運用 GKE Enterprise 堆疊的強大功能,Config Sync 和 Policy Controller 也可用來實作 GitOps 方法和精細政策。最後,KubeVirt 工具 (例如 virtctl
) 也已擴充,可支援 GDC 上的額外 VM Runtime 功能。
GPU 支援
有了 GDC 的 VM Runtime,您就能在 VM 中啟用支援的 NVIDIA GPU 卡,執行機器學習和其他專屬工作負載。
開始使用
如要開始在 GDC 上使用 VM Runtime,請參閱下列文件: