Home > Windows にまつわる e.t.c.

Windows Server 2012 R2 Hyper-V で稼働する VM を Windows Server 2016 Hyper-V で作る


Windows Server 2012 R2(以降 WS12R2) Hyper-V で稼働する VM を暫定的に Windows Server 2016(以降 WS16) Hyper-V で作る事があったので、その際のメモです。

 

WS16 Hyper-V で作った VM は、WS12R2 Hyper-V にもっていっても互換性の関係上稼働させることができません。

では、どうやって WS16 Hyper-V 上に WS12R2 Hyper-V と互換性がある VM を作りましょうか?

Nested Hyper-V を使う手が浮かびますが、WS12R2 Hyper-V を Nested Hyper-V の子供にすることができないのでこの案は使えません。

正解は、VM Version を 5.0 にした VM を作ります。

WS16 Hyper-V は、WS12R2 Hyper-V からの移行がしやすいように WS12R2 Hyper-V VM がそのまま動くようになっています。この時の VM Version が 5.0 なのです。

つまり、VM Version 5.0 の VM を作れば良いわけですが、GUI では VM Version が指定できません。

VM Version を指定する場合は、PowerShell の New-VM コマンドレット オプションの -Version に 5.0 を指定します。

New-VM -Name VM名 -Version 5.0

 

実際に VM を作る際はこんな感じで作ります。

# VM 名
$VMName = "WS12R2_Ver5"

# VHD 名
$VHDName = "C:\WS12R2_VM\DrviceC.vhdx"


# VHD 作成
New-VHD -Path $VHDName -SizeBytes 127GB

# Gen 2 VM を Version 5.0 で作成
New-VM -Name $VMName -Path C:\WS12R2_VM -VHDPath $VHDName -Generation 2 -Version 5.0

# vNIC 割り当てなおし
Remove-VMNetworkAdapter -VMName $VMName
Add-VMNetworkAdapter -VMName $VMName -Name LAN -SwitchName LAN_SW

# メモリー割り当て
Set-VMMemory -VMName $VMName -StartupBytes 4GB -DynamicMemoryEnabled $True

# CPU 割り当て
Set-VMProcessor -VMName $VMName -Count 2 -CompatibilityForMigrationEnabled $True

# ISO イメージマウント
Add-VMDvdDrive -VMName $VMName -Path "C:\ISO\WS12R2u1\MSDN\ja_windows_server_2012_r2_with_update_x64_dvd_6052738.iso"

# ISO を優先起動デバイスに変更
Set-VMFirmware -VMName $VMName -FirstBootDevice (Get-VMDvdDrive -VMName $VMName)

 

VM の OS インストールが完了したら、VM を Export するなり Live Migration するなりで VM を WS12R2 Hyper-V に移動します。

 

参考情報

Hyper-V server 2012 R2
http://www.vwnet.jp/Windows/etc.asp#Hyper-V_server_2012_R2

 

 

back.gif (1980 バイト)

home.gif (1907 バイト)

Copyright © MURA All rights reserved.