2015年5月にリリースされたWindows Server Technical Preview 2のインストール方法と注目すべき新機能、プロダクションチェックポイントと注意すべき変更点について3回にわたってご紹介しました。
最終回の今回は、次期Hyper-Vの互換性についてご紹介します。
目次
Hyper-Vマネージャー
vNextのHyper-Vマネージャーは、WIN2012以上のHyper-Vと互換性が取られています。具体的にはクライアントOSも含めるとvNext 、WIN2012、 Windows 8、 WIN2012R2 と Windows 8.1となります。Hyper-Vマネージャーから「サーバーに接続」メニューを使って、これらのHyper-Vにリモートで接続して管理することが可能です。
ただし、上位バージョンであるvNext のHyper-Vに、下位バージョンであるWIN2012R2のHyper-Vマネージャーからリモート接続した場合など、一部利用できない機能があります。上位バージョンのHyper-Vにリモート接続したとしても、Hyper-Vマネージャー自体の機能がバージョンアップしているわけではないためです。
例えば新しい「プロダクションチェックポイント」の設定などは、WIN2012R2のHyper-VマネージャーからvNext のHyper-Vにリモート接続した場合には、メニュー自体が従来のWIN2012R2のHyper-Vマネージャー相当の、チェックポイントファイルの場所のみしか表示されません。固定メモリのサイズ変更や、ネットワークアダプタの動的な追加削除も同様に利用できません。下位のHyper-V自体の機能に限定されてしまうということです。
vNext のHyper-Vの新機能をHyper-Vマネージャーから利用したい場合は、vNextのHyper-Vマネージャーから直接か、同じvNext同士からリモート接続をして利用する必要があります。反対にvNextのHyper-Vマネージャーから、WIN2012R2のHyper-Vにリモート接続した場合、残念ながらご想像どおりWIN2012R2のHyper-V上の仮想マシンに対して新機能は使えません。ちょっと紛らわしいのですが、WIN2012R2のHyper-VマネージャーからvNext のHyper-Vにリモート接続して仮想マシンを作成した場合は、バージョンは6.2となります。リモートからでも、作成される仮想マシンのバージョンはHyper-Vマネージャーのバージョンに左右されることはありません。
Windows Server 2012 R2のHyper-Vマネージャーから、Windows Server Technical Preview 2のHyper-Vに接続したところです。Hyper-Vマネージャーからは、vNext、WIN2012双方向で接続管理が可能ですが、一部利用できない機能があります。
ライブマイグレーション
Hyper-Vの主要機能の1つ、ライブマイクレーションの互換性は非常に気になるところです。これまでの経験を振り返ってみると、WIN2012のHyper-VとWIN2012R2のHyper-Vとの間のライブマイグレーションは、WIN2012のHyper-VからWIN2012R2のHyper-Vへの一方通行のものでした。Hyper-Vのサービス環境をすべてアップグレードする前提での移行過程としては、一方通行でも問題はありませんでしたが、新旧のバージョンを混在して運用を考えている場合、これは50点の出来です。
WIN2012R2のHyper-V上で作成した仮想マシンは、vNextのHyper-Vとの間で双方向にライブマイグレーションで移動可能です。このとき仮想マシンのバージョンは5.0のままで行うことが可能です。ライブマイグレーションに仮想マシンのアップグレードが不要なので、双方向の移動が可能となっています。
また、WIN2012のHyper-Vから、vNextのHyper-Vへのライブマイグレーションは、WIN2012のHyper-VからWIN2012R2のHyper-Vへと同様、一方向のみサポートされています。この場合は仮想マシンのバージョンはライブマイグレーションと同時に5.0にアップグレードされています。WIN2012より前のWindows Server 2008R2などのHyper-Vからのライブマイグレーションはサポートされていません。vNextのHyper-Vで作成されたバージョン6.2の仮想マシンには下位互換性は無く、vNext同士の間でのみライブマイグレーションによって移動することができます。完全互換とはいかないまでも、ここまでできれば互換性という意味では及第点の85点をつけることができるでしょう。
双方向 | ||
Windows Server Technical Preview 2 | <――> | Windows Server Technical Preview 2 |
仮想マシンバージョン5.0のみ双方向 | ||
Windows Server Technical Preview 2 | <――> | Windows Server 2012 R2 |
一方向 | ||
Windows Server Technical Preview 2 | <――> | Windows Server 2012 |
サポート対象外 | ||
Windows Server Technical Preview 2 | <――> | Windows Server 2008 R2 |
仮想マシン
vNext のHyper-V上で仮想マシンとしてサポートされるOSは、いまのところvNext自体と、Windows、LinuxやFreeBSDなど含めてWIN2012R2のHyper-Vでサポートされる内容と同様と考えられます。
これは、WIN2012R2のHyper-V上の仮想マシンはバージョン5.0であれば、vNext のHyper-Vとの間の双方向でライブマイグレーションが可能ということで予想することができます。Windows Server 2003、Windows Server 2003 R2に関しては2015年7月15日にサポートが終了するため、サポートされる仮想マシンとしては除外されます。
vNext のHyper-V上で仮想マシンを新規で作成した場合や、ライブマイグレーションでvNext のHyper-V上に仮想マシンを移動してきた場合は、最適化するために統合サービスをアップデートする必要があります。前述したように、vNextのHyper-Vからは統合サービスがWindows Update や Windows Server Update Services (WSUS) を通じて仮想マシンへ提供される仕様へ変更となっています。
現在Windows Updateで提供されているvNext のHyper-V用統合サービスは以下となります。
・Windows 8.1 Update1 (KB919355適用済み)
・WIN2012R2 Update1 (KB919355適用済み)
・Windows 7 SP1
・Windows Server 2008 R2 SP1
・Windows Server 2008 SP2
LinuxやFreeBSDはOS自体に統合サービスの機能が含まれているのでそのまま利用可能です。
統合サービスについては下位互換があり、仮想マシンとしてサポートされているWindowsについては、ライブマイグレーションなどでWIN2012R2のHyper-Vへ移動したとしても問題はありません。
インポート/エクスポート
仮想マシンのHyper-V間の移動手段としてライブマイグレーションだけではなく、インポート/エクスポートを使った移動方法もあります。インポート/エクスポートの移動要件もライブマイグレーションと同様にホストとなるWindows Serverのバージョンによって異なります。
仮想マシンのバージョンが5.0であればチェックポイントや構成ファイルはそのまま変換されることはなく、相互間でエクスポート/インポートが可能です。バージョン6.2の仮想マシンは、vNextのHyper-V同士でのみエクスポート/インポートが可能となります。前述しましたが、仮想マシンのバージョンによって、構成ファイルのファイル形式とフォーマットが異なるためです。
インポート/エクスポートの互換性の問題で移行ができないという場合は、限定的ですが仮想ハードディスクファイルだけをコピーして移動先のHyper-V上で新たに仮想マシンを作成するという方法が可能です。この場合の条件としては、チェックポイント(スナップショット)は移動できないという条件付きになります。
エクスポート\インポート | 2008 | 2008R2 | 2012 | 2012R2 | Technical Preview 2 |
2008 | ○ | ○ | △ | △ | △ |
2008R2 | ? | ○ | ○ | ○ | ○ |
2012 | ? | ? | ○ | ○ | ○ |
2012R2 | ? | ? | ? | ○ | ○ |
Technical Preview 5.0 | ? | ? | ? | ○ | ○ |
Technical Preview 6.2 | ? | ? | ? | ? | ○ |
仮想ネットワーク NVGRE
WIN2012のHyper-Vから実装されたNVGREはHyper-Vでサポートされている仮想ネットワークの1つです。NVGREを用いることで、Windows Server間、Hyper-Vの間では、1つの物理ネットワークで複数の仮想ネットワークを構築することが可能となります。
NVGREの仕組みは簡単に言うと、1つの物理ネット―ワーク内で、それぞれの仮想ネットワークの通信内容をカプセル化して、他の仮想ネットワークの通信内容と混在しないようにする方法です。サーバーとサーバーの間は、仮想ネットワークごとにトンネルが構築された状態で通信されています。Hyper-V自体が各仮想ネットワークのルーティングテーブルを持つ仕様となっており、特にネットワークコントローラーなどを配置する必要はありません。
vNextのHyper-Vでもこれまでと同様にNVGREによるネットワークの仮想化が可能となっています。ネットワークの仮想化関連については、今現在のvNextの時点では特に変更点などは発表されていないので、WIN2012R2のHyper-V同等のものが利用可能となっています。
念のため実際に仮想マシンを使いNVGREの設定を行い検証をしてみましたが、結果、これまでと同様に全く問題なく仮想化ネットワークを構築できたため、互換性は問題なしと判断しました。
今回の検証にはHyper-Vコミュニティーの「InvokeV」にて無償で提供されているNVGREの設定ツール「WNVManager」を利用しました。「WNVManager」はNVGREに特化した、簡単にNVGREの設定、確認ができるツールとなっています。
https://www.facebook.com/groups/749187091776055/
WMI PowerShell
vNextのHyper-VはWIN2012のHyper-Vと同様のWMI「root\virtualization\v2」という名前空間(API)が利用できます。したがって、メソッドやプロパティーは全く同じものが使えます。「root\virtualization」から「root\virtualization\v2」に変わった時のような悪夢は回避できたようで、注目すべき新機能の章で紹介した、メモリとネットワークアダプタの動的追加削除、プロダクションチェックポイントについても、これまでと同様のメソッドでプログラマチックに利用可能です。
WMIが元となっているPowerShellも同様にこれまでのコマンドが利用可能です。チェックポイントの項目については、設定項目が増えた関係でパラメーターが増えています。
Set-VMMemory -VMName "VMName" -DynamicMemoryEnabled $false -StartupBytes 4GB
Add-VMNetworkAdapter -VMName "VMName" -Name "NICName"
Remove-VMNetworkAdapter -VMName "VMName" -Name "NICName"
Checkpoint-VM -Name "VMName" -SnapshotName "CHKName"
Restore-VMSnapshot -VMName "VMName" -Name "CHKName"
プロダクションチェックポイント + スタンダードチェックポイント
Set-VM -Name " VMName " -CheckpointType Production
プロダクションチェックポイントのみ
Set-VM -Name " VMName " -CheckpointType ProductionOnly
スタンダードチェックポイント
Set-VM -Name " VMName " -CheckpointType Standard
チェックポイントの取得を無効
Set-VM -Name " VMName " -CheckpointType Disabled
さらに、WIN2012ではHyper-V関連のPowerShellは178個ありましたが、vNextでは204個に増えています。コマンド一覧は以下で確認できます。
コマンド数は
Get-Command -Module Hyper-V
コマンド数は
Get-Command -Module Hyper-V | Measure-Object
追加されたコマンド
Update-VMVersion 仮想マシンを6.2にバージョンアップ
Get-VMAssignableDevice 利用用途不明
Add-VMAssignableDevice 利用用途不明
Remove-VMAssignableDevice 利用用途不明
Mount-VMHostAssignableDevice 利用用途不明
Dismount-VMHostAssignableDevice 利用用途不明
Get-VMVideo Hyper-Vマネージャーから仮想マシン接続した場合の画面の大きさ情報の取得(拡張セッションモード未使用時)
Set-VMVideo Hyper-Vマネージャーから仮想マシン接続した場合の画面の大きさの設定(拡張セッションモード未使用時)
Add-VMGroupMember
Add-VMSwitchTeamMember
Add-VMTPM
Disable-VMConsoleSupport
Enable-VMConsoleSupport
Get-VHDSet
Get-VHDSnapshot
Get-VMGroup
Get-VMHostCluster
Get-VMSwitchTeam
Get-VMTPM
Get-VMVideo
New-VMGroup
Optimize-VHDSet
Remove-VHDSnapshot
Remove-VMGroup
Remove-VMGroupMember
Remove-VMSwitchTeamMember
Rename-VMGroup
Set-VMHostCluster
Set-VMSwitchTeam
Set-VMTPM
Set-VMVideo
Start-VMTrace
Stop-VMTraceM
Update-VMVersion
Hyper-Vクラスターのローリングアップグレード
WIN2012R2でHyper-Vフェールオーバークラスタを構成している場合に、仮想マシンを止めることなくvNextがクラスターの新しいノードとして参加することが可能です。また、仮想マシンを止めることなくWIN2012R2をvNextにアップグレードすることも可能です。WIN2012R2とvNextが混在しているクラスター環境では、新規で作成される仮想マシンのバージョンは5.0となり、vNextのもつHyper-Vの新機能は利用することができません。
クラスター環境で新機能を利用するためには、PowerShellのコマンドUpdate-VmConfigurationVersionでクラスター自体のアップグレードが必要となります。ただし、一度アップグレードしたクラスターにWIN2012R2は追加することができなくなります。
おわりに
サービス開発者の立場でvNextのHyper-Vの注目すべき機能、互換性をご紹介いたしました。今回ご紹介できなかった新機能など一部ありますが、次期Windows Server のHyper-Vの魅力は十分お伝えできたはずです。
今までよりもさらに進化し、そして十分な互換性を保持した仮想化プラットフォームHyper-V、待ち遠しい限りです。
*本文中に記載されている会社名および商品名・サービス名は、各社の商標 または登録商標です。
著書の紹介欄
Hyper-Vで本格的なサーバー仮想環境を構築。仮想環境を設定・操作できる!
できるPRO Windows Server 2016 Hyper-V
◇Hyper-Vのさまざまな機能がわかる ◇インストールからの操作手順を解説 ◇チェックポイントやレプリカも活用できる Windows Server 2016 Hyper-Vは、仮想化ソフトウェア基盤を提供する機能であり、クラウドの実現に不可欠のものです。 本書では、仮想化の基礎知識から、Hyper-Vでの仮想マシンや仮想スイッチの設定・操作、プライベートクラウドの構築、Azureとの連携などを解説します。
初めてのWindows Azure Pack本が発売
Windows Azure Pack プライベートクラウド構築ガイド
本書は、Windows Azure PackとHyper-Vを利用し、企業内IaaS(仮想マシン提供サービス)を構成するための、IT管理者に向けた手引書です。試用したサーバーは、最小限度の物理サーバーと仮想マシンで構成しています。Windows Azure Packに必要なコンポーネントのダウンロード、実際にプライベートクラウド構築する過程を、手順を追って解説しています。これからプライベートクラウドの構築を検討するうえで、作業負担の軽減に役立つ一冊です。
ブログの著者欄
採用情報
関連記事
KEYWORD
CATEGORY
-
技術情報(452)
-
イベント(161)
-
カルチャー(36)
-
デザイン(18)
TAG
- 5G
- Adam byGMO
- AI
- AWX
- BIT VALLEY
- blockchain
- ChatGPT
- cloudflare
- cloudnative
- CloudStack
- CM
- CNDO
- CNDT
- CODEGYM Academy
- ConoHa
- CS
- CSS
- CTF
- DC
- Designship
- Desiner
- DeveloperExpert
- DevSecOpsThon
- DNS
- Docker
- DTF
- GitLab
- GMO Developers Day
- GMO Developers Night
- GMO GPUクラウド
- GMO Hacking Night
- GMO kitaQ
- GMO SONIC
- GMOアドパートナーズ
- GMOアドマーケティング
- GMOイエラエ
- GMOグローバルサイン
- GMOソリューションパートナー
- GMOデジキッズ
- GMOブランドセキュリティ
- GMOペイメントゲートウェイ
- GMOペパボ
- GMOリサーチ
- Go
- GTB
- Hardning
- Harvester
- HCI
- iOS
- IoT
- ISUCON
- JapanDrone
- Java
- JJUG
- K8s
- Kaigi on Rails
- Kids VALLEY
- LLM
- MetaMask
- MySQL
- NFT
- NVIDIA
- OpenStack
- Perl
- perplexity
- PHP
- PHPcon
- PHPerKaigi
- QUIC
- Rancher
- RPA
- Ruby
- Selenium
- Spectrum Tokyo Meetup
- splunk
- SRE
- SSL
- Terraform
- TLS
- TypeScript
- UI/UX
- VLAN
- VS Code
- アドベントカレンダー
- インターンシップ
- オブジェクト指向
- オンボーディング
- お名前.com
- カルチャー
- コンテナ
- スクラム
- スペシャリスト
- セキュリティ
- ソフトウェアテスト
- チームビルディング
- ドローン
- ネットワーク
- プログラミング教育
- ブロックチェーン
- マルチプレイ
- ミドルウェア
- モバイル
- ゆめみらいワーク
- リモートワーク
- レンタルサーバー
- 京大ミートアップ
- 協賛レポート
- 基礎
- 多拠点開発
- 大学授業
- 宮崎オフィス
- 応用
- 技育プロジェクト
- 新卒
- 暗号
- 機械学習
- 決済
PICKUP