關於巢狀虛擬化


本文說明 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 之間的關係:

圖 1. L0 實體主機,其中包含 L1 VM 和 L2 VM。

用途

以下列舉可能需要使用巢狀虛擬化的情況:

  • 您有無法在 Compute Engine 上執行的 VM:舉例來說,您可能為在 VM 上執行的內部部署工作負載提供災害復原解決方案,而這些 VM 會容錯移轉至 Compute Engine VM。執行巢狀虛擬化可節省時間,不必將 VM 移植到 Compute Engine。

  • 您有一個軟體驗證架構,可用於測試及驗證不同作業系統多個版本上的軟體套件新版本:使用巢狀虛擬化可避免轉換及管理 Compute Engine 映像檔程式庫。

效能注意事項

即使有硬體輔助巢狀虛擬化,巢狀 VM 的效能仍可能降低 10% 以上 (CPU 處理工作負載),輸入/輸出處理工作負載的效能降幅可能更大。

限制

L1 VM 具有下列限制:

L2 VM 具有下列限制:

使用巢狀虛擬化功能

如要使用巢狀虛擬化,請完成下列步驟:

  1. 檢查巢狀虛擬化限制是否已停用

  2. 建立已啟用巢狀虛擬化的 L1 VM

  3. 建立巢狀 L2 VM

如果在建立啟用巢狀虛擬化的 VM 或巢狀 VM 時遇到任何問題,請參閱「排解巢狀虛擬化作業問題」。