ざっと見る限り、Windows 10 Nested Hyper-V と変わっていないようですが、TP4 で Windows Update すると Nested Hyper-V がエラーになる問題が TP5 で解消されたので、TP5 Nested Hyper-V の構築手順を解説します。
Windows 10 Nested Hyper-V 解説はこちら
Windows 10 Insider Preview Build 10565 Nested Hyper-V
http://www.vwnet.jp/Windows/w10/NestedHyperV/Build10565Hyper-V.htm
MS ドキュメントはこちら
Nested Virtualization
https://msdn.microsoft.com/en-us/virtualization/hyperv_on_windows/user_guide/nesting
MS ドキュメントを見ると、Windows 10 Nested Hyper-V と制限事項が若干違います。
・ホスト側の Device Guard が有効になっていると VM 側の Hyper-V が有効にできない
アーキテクチャーとかは Windows 10 のコンテンツ見てもらうとして、さっそく構築手順です。
まずは Nested Hyper-V する VM を構築します。
< VM 要件 >
Build 10565 以降の Windows 10 or Windows Server 2016
Technical Preview 5
Gen 2 VM
メモリー4GB以上固定割り当て
Guest 割り当て分を加えてた vCPU 割り当て
Guest 割り当て分を加えてた vSW 割り当て
VM の準備が出来たら Nested Hyper-V 設定スクリプトをダウンロードします。
Invoke-WebRequest https://raw.githubusercontent.com/Microsoft/Virtualization-Documentation/master/hyperv-tools/Nested/Enable-NestedVm.ps1 -OutFile ~/Enable-NestedVm.ps1 |
VM をシャットダウンしてダウンロードしたスクリプトを使って VM を Nested 指定します
~/Enable-NestedVm.ps1 -VmName "en-TP5" |
PS C:\> ~/Enable-NestedVm.ps1 -VmName "en-TP5" This script will set the following for en-TP5 in order to enable nesting: Virtualization extensions will be enabled Optionally enable mac address spoofing Input Y to accept or N to cancel:Y 警告: 入れ子構造の仮想化は、サポートされていないプレビュー機能です。ゲスト仮想マシンで実行されている Hyper-V ハイパーバイザー以外のハイパーバイザーでは、エラーが発生する可能性があります。さらに、Hyper-V の一部の機能には、動的メモリ、チェックポイント、保存/復元などの入れ子構造の仮想化との互換性がありません。 Mac Address Spoofing isn't enabled (nested guests won't have network). Would you like to enable MAC address spoofing? (Y/N)Y PS C:\> |
Nested Hyper-V VM が起動したら、VM の Hyper-V の役割を有効にし、割り当てた vSW を VM 側で vSW 設定すれば孫 VM 構築ができます。
どの VM が Nested Hyper-V になっているかを確認するには、確認用のスクリプトをダウンロードして実行します。
Invoke-WebRequest
https://raw.githubusercontent.com/Microsoft/Virtualization-Documentation/master/hyperv-tools/Nested/Get-NestedVirtStatus.ps1
-OutFile ~/Get-NestedVirtStatus.ps1 ~/Get-NestedVirtStatus.ps1 |
緑バックの YES になっている VM が Nested Hyper-V 設定になっています。
PS C:\> ~/Get-NestedVirtStatus.ps1 Getting system information...done. Getting build information...done. Validating host information...done. The virtualization host WSTP5 supports nested virtualization: NO The following host configuration errors have been detected: Virtualization Based Security is running Virtualization Based Security is partly installed on you system. To completely remove Virtualizaiton Based Security, ple ase follow instructions under "Remove Credential Guard" found here: https://technet.microsoft.com/en-us/library/mt483740 %28v=vs.85%29.aspx Computer : WSTP5 Manufacturer : ASUS Model : All Series ProccessorManufacturer : GenuineIntel Product Name : Windows Server 2016 Datacenter Technical Preview 5 Installation Type : Server Edition ID : ServerDatacenter Build Lab : 14300.1010.amd64fre.rs1_release_svc.160415-2143 HypervisorRunning : True FullHyperVRole : True HostNestedSupport : False HypervisorLoadOptionsPresent : False HypervisorLoadOptionsValue : IumInstalled : False VbsRunning : True VbsRegEnabled : False BuildSupported : True VbsPresent : True Looking for VMs...found 2 VMs. Validating virtual machines...done. The virtual machine en-NanoServer supports nested virtualization: NO The following VM configuration errors have been detected: This VM is not configured to expose virtualization extensions. The VM has Dynamic Memory enabled. Name : en-NanoServer SupportsNesting : False ExposeVirtualizationExtensions : False DynamicMemoryEnabled : True SnapshotEnabled : False State : Off The virtual machine en-TP5 supports nested virtualization: YES Name : en-TP5 SupportsNesting : True ExposeVirtualizationExtensions : True DynamicMemoryEnabled : False SnapshotEnabled : False State : Off Press any key to continue... PS C:\> |
Nested Hyper-V を解除するには、Set-VMProcessor で解除します。
Set-VMProcessor -VMName <VM名> -ExposeVirtualizationExtensions:$false |
PS C:\>
Set-VMProcessor
-VMName
"en-TP5"
-ExposeVirtualizationExtensions:$false PS C:\> |
Copyright © MURA All rights reserved.