本文說明 Compute Engine 對巢狀虛擬化的支援。有了巢狀虛擬化功能,您就能在其他 VM 內執行虛擬機器 (VM) 執行個體,自行建立虛擬化環境。為支援巢狀虛擬化,Compute Engine 會在 VM 中新增 Intel 虛擬化技術 (VT-x) 指令,因此當您建立 VM 時,該 VM 上已有的管理程序可以執行其他 VM。
Compute Engine VM 會在實體主機上執行,該主機具有以 KVM 為基礎的 Google 安全強化型管理程序。使用巢狀虛擬化時,實體主機及其 Hypervisor 是第 0 層 (L0) 環境。L0 環境可代管多個第 1 級 (L1) VM。每個 L1 VM 上都有另一個管理程序,用於安裝第 2 層 (L2) VM。圖 1 顯示實體主機、L1 VM 和 L2 VM 之間的關係:
用途
以下列舉可能需要使用巢狀虛擬化的情況:
您有無法在 Compute Engine 上執行的 VM:舉例來說,您可能為在 VM 上執行的內部部署工作負載提供災害復原解決方案,而這些 VM 會容錯移轉至 Compute Engine VM。執行巢狀虛擬化可節省時間,不必將 VM 移植到 Compute Engine。
您有一個軟體驗證架構,可用於測試及驗證不同作業系統多個版本上的軟體套件新版本:使用巢狀虛擬化可避免轉換及管理 Compute Engine 映像檔程式庫。
效能注意事項
即使有硬體輔助巢狀虛擬化,巢狀 VM 的效能仍可能降低 10% 以上 (CPU 處理工作負載),輸入/輸出處理工作負載的效能降幅可能更大。
限制
L1 VM 具有下列限制:
L1 VM 僅支援 Linux KVM 管理程序,不支援 Microsoft Hyper-V。
您無法使用下列 VM:
E2 VM
採用 AMD 和 Arm 處理器的 VM
如要瞭解各個區域支援的處理器,請參閱「可用地區和區域」。
L2 VM 具有下列限制:
- 如要使用授權作業系統,必須自備授權。
使用巢狀虛擬化功能
如要使用巢狀虛擬化,請完成下列步驟:
如果在建立啟用巢狀虛擬化的 VM 或巢狀 VM 時遇到任何問題,請參閱「排解巢狀虛擬化作業問題」。