關於巢狀虛擬化


本文說明 Compute Engine 支援的巢狀虛擬化功能。有了巢狀虛擬化功能,您就能在其他虛擬機器 (VM) 中執行虛擬機器 (VM) 執行個體,自行建立虛擬化環境。為了支援巢狀虛擬化,Compute Engine 會在 VM 中加入 Intel 虛擬化技術 (VT-x) 指令,因此在您建立 VM 時,該 VM 中的管理程序就能執行其他 VM。

Compute Engine VM 會在實體主機上執行,該主機搭載 Google 的安全強化型 KVM 管理程序。在巢狀虛擬化中,實體主機及其輔助作業系統是第 0 層 (L0) 環境。L0 環境可代管多個第 1 級 (L1) VM。每個 L1 VM 上都有另一個管理程序,用於安裝第 2 層 (L2) VM。圖 1 顯示實體主機、L1 VM 和 L2 VM 之間的關係:

圖 1. 包含 L1 VM 和 L2 VM 的 L0 實體主機。

用途

您可能會考慮使用巢狀虛擬化的情況包括:

  • 您有無法在 Compute Engine 上執行的 VM:舉例來說,您可能有針對在 VM 上執行的內部部署工作負載,提供災難復原解決方案,而這些 VM 會備援至 Compute Engine VM。執行巢狀虛擬化功能,或許可以節省將 VM 移轉至 Compute Engine 所需的時間。

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

效能注意事項

即使使用硬體輔助的巢狀虛擬化技術,巢狀 VM 在 CPU 受限的工作負載中,效能可能會降低 10% 以上,而在輸入/輸出受限的工作負載中,效能可能會降低超過 10%。

限制

L1 虛擬機有下列限制:

L2 虛擬機器有下列限制:

  • 如果是需要授權的作業系統,您必須自備授權

使用巢狀虛擬化功能

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

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

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

  3. 建立巢狀 L2 VM

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