共用方式為


在 Azure Lab Services 中啟用巢狀虛擬化

重要

Azure 實驗室服務將於 2027 年 6 月 28 日淘汰。 如需詳細資訊,請參閱 淘汰指南

巢狀虛擬化支援 Azure 實驗室服務中的實驗室,其中包含多個虛擬機器 (VM) 環境。 您可以為多個 VM 環境準備實驗室範本。 使用者不需要在其實驗室 VM 上啟用巢狀虛擬化,或在其上安裝巢狀 VM。 當您發佈實驗室時,每位實驗室使用者都會有一部已包含巢狀虛擬機器的實驗室 VM。

必要條件

  • 具有有效訂用帳戶的 Azure 帳戶。 如尚未擁有 Azure 訂用帳戶,請在開始之前先建立免費帳戶

如需巢狀虛擬化的相關概念、考量和建議,請參閱 Azure Lab Services 中的巢狀虛擬化

注意

Hyper-V 以外的虛擬化應用程式不支援巢狀虛擬化。 這包括任何需要硬體虛擬化延伸模組的軟體。

重要

在建立實驗室時,請選取 [大型 (巢狀虛擬化)] 或 [中型 (巢狀虛擬化)] 作為虛擬機器大小。 否則,將無法使用巢狀虛擬化。

啟用巢狀虛擬化

若要在範本 VM 上啟用巢狀虛擬化,您必須先使用遠端桌面 (RDP) 用戶端來連線到 VM。 然後,您可以執行 PowerShell 指令碼或使用 Windows 工具來套用設定變更。

重要

建議您搭配 Windows 11 使用巢狀虛擬化。 您可以在 Windows 用戶端 OS 上安裝 Hyper-V 時,利用所建立的「預設交換器」。 當您需要對網路設定進行額外控制時,您應該在 Windows Server 作業系統上使用巢狀虛擬化。

重要

Azure 實驗室服務將於 2027 年 6 月 28 日淘汰。 如需詳細資訊,請參閱 淘汰指南

您可以使用 PowerShell 指令碼,在 Azure Lab Services 的範本 VM 上設定巢狀虛擬化。 下列步驟將引導您如何使用 Lab Services Hyper-V 指令碼。 指令碼適用於 Windows 11。

  1. 請依照下列步驟,連線到範本電腦並進行更新

  2. 以系統管理員身分啟動 PowerShell

  3. 您可能必須變更執行原則,才能成功執行指令碼。 執行以下命令:

    Set-ExecutionPolicy bypass -force
    
  4. 下載並執行指令碼,以啟用 Hyper-V 功能和工具。

    Invoke-WebRequest 'https://aka.ms/azlabs/scripts/hyperV-powershell' -Outfile SetupForNestedVirtualization.ps1
    .\SetupForNestedVirtualization.ps1
    

    注意

    指令碼可能要求重新啟動 VM。 若是如此,請從 Azure 實驗室服務網站停止並啟動範本 VM,並重新執行指令碼,直到您在輸出中看到指令碼已完成為止。

  5. 別忘了重設執行原則。

    Set-ExecutionPolicy default -force
    

範本 VM 現在已設定為與巢狀虛擬化搭配使用。 您可以在其內部建立 VM。 建立新的 Hyper-V VM 時,請使用指令碼指定的切換。

連線至另一個實驗室 VM 中的巢狀 VM

需要額外的設定,才能從一個實驗室 VM 上的巢狀 VM 連線到另一個實驗室 VM 中裝載的巢狀 VM。 使用 Add-NetNatStaticMapping PowerShell Cmdlet,將靜態對應新增至 NAT 執行個體。

注意

您無法使用 ping 命令來測試與巢狀 VM 的連線。

注意

靜態對應僅適用於您使用私人 IP 位址。 實驗室使用者所連線的 VM 必須是實驗室 VM,或使用進階網路時,VM 必須位於相同的網路上。

範例案例

請考慮以下的實驗室設定範例:

  • 實驗室 VM 1(Windows Server 2022、IP 10.0.0.8)

    • 巢狀 VM 1-1 (已允許 Ubuntu 20.04、IP 192.168.0.102、SSH)
    • 巢狀 VM 1-2 (Windows 11、IP 192.168.0.103、啟用及允許遠端桌面)
  • 實驗室 VM 2 (Windows Server 2022、IP 10.0.0.9)

    • 巢狀 VM 2-1 (已允許 Ubuntu 20.04、IP 192.168.0.102、SSH)
    • 巢狀 VM 2-2 (Windows 11、IP 192.168.0.103、啟用及允許遠端桌面)

啟用從實驗室 VM 2 連線到巢狀實驗室 VM 1-1 的 SSH 連線:

  1. 在實驗室 VM 1 上,新增靜態對應:

    Add-NetNatStaticMapping -NatName "LabServicesNat" -Protocol TCP -ExternalIPAddress 0.0.0.0 -InternalIPAddress 192.168.0.102 -InternalPort 22 -ExternalPort 23
    
  2. 在實驗室 VM 2 上,使用 SSH 連線:

    ssh user1@10.0.0.8 -p 23
    

啟用從實驗室 VM 2 或其巢狀 VM 連線到巢狀實驗室 VM 1-2 的 RDP 連線:

  1. 在實驗室 VM 1 上,新增靜態對應。

    Add-NetNatStaticMapping -NatName "LabServicesNat" -Protocol TCP -ExternalIPAddress 0.0.0.0 -InternalIPAddress 192.168.0.103 -InternalPort 3389 -ExternalPort 3390
    
  2. 在實驗室 VM 2 或其巢狀 VM 上,使用 RDP 連線至 10.0.0.8:3390

    重要

    在使用者名稱前面包含 ~\。 例如,~\Administrator~\user1

疑難排解

這些建議可能會解決一些常見問題。

Linux VM 只會顯示黑色畫面

執行下列步驟來驗證您的巢狀 VM 設定:

Hyper-V 未啟動。錯誤: The virtual machine is using processor-specific xsave features not supported

  • 當實驗室用戶將 Hyper-V VM 保留在儲存狀態時,就會發生此錯誤。 您可以在 Hyper-V 管理員中以滑鼠右鍵按一下 VM,然後選取 [刪除儲存狀態]

    警告

    刪除儲存狀態表示任何未儲存的工作將會遺失,但儲存至磁碟的任何項目則會保持不變。

  • 當 Hyper-V VM 已關閉且 VHDX 檔案損毀時,就會發生此錯誤。 如果實驗室使用者建立 VDHX 檔案的備份,或儲存快照集,他們可以從該點還原 VM。

建議您設定將 Hyper-V VM 自動關機動作設為關機

Hyper-V 太慢

增加 Hyper-V 管理員中指派給 Hyper-V VM 的 vCPU 和記憶體數目。 vCPU 總數不能超過主機 VM (實驗室 VM) 的核心數目。 如果您使用可變記憶體的預設選項,請提高指派給 VM 的記憶體數量下限。 如果您使用可變記憶體,則指派的記憶體數量上限可能會超過主機 VM 的記憶體數量。 此方法在只需要其中一個 Hyper-V VM 上完成密集作業時,能夠有更大的彈性。

如果您針對實驗室使用中型 (巢狀虛擬化) VM 大小,請考慮改用大型 (巢狀虛擬化) VM 大小,讓每部實驗室 VM 有更多的計算資源。

巢狀 VM 的網際網路連線無法運作

  • 確認您已依照先前的步驟啟用巢狀虛擬化。 請考慮使用 PowerShell 指令碼選項。

  • 如果您使用的是 Windows Server,請檢查主機 VM (實驗室 VM) 是否已安裝 DHCP 角色。

    不支援以 DHCP 伺服器身分執行實驗室 VM。 請參閱 是否可以在虛擬網路中部署 DHCP 伺服器?。 變更實驗室 VM 的設定可能會導致其他實驗室 VM 發生問題。

  • 檢查 Hyper-V VM 的網路介面卡設定。

    • 將 DNS 伺服器和 DHCP 伺服器的 IP 位址設定為 168.63.129.16

    • 如果客體 VM IPv4 位址已手動設定,請確認其位於連線到 Hyper-V 交換器之 NAT 網路的範圍內。

    • 請嘗試開啟 Hyper-V DHCP 防護路由器防護

      Get-VMNetworkAdapter * | Set-VMNetworkAdapter -RouterGuard On -DhcpGuard On
      

注意

您無法使用從 Hyper-V VM 到主機 VM 的 ping 命令。 若要測試網際網路連線,請啟動網頁瀏覽器,並確認網頁已正確載入。

無法啟動 Hyper-V VM

當您建立實驗室時,您可以選擇建立非系統管理員使用者。 若要能夠啟動或停止 Hyper-V VM,您必須將這類使用者新增至 Hyper-V 系統管理員群組。 如需 Hyper-V 和非系統管理員使用者的詳細資訊,請參閱 非系統管理員使用者

現在您已在範本 VM 上設定巢狀虛擬化,您可以使用 Hyper-V 建立巢狀虛擬機器。 請參閱 Microsoft 評估中心來查看可用的作業系統和軟體。