Hyper-Vの「拡張セッションモード」は、Windows 8.1/Windows Server 2012 R2で追加された機能です。クライアントHyper-Vでは、利用可能な場合に「拡張セッションモード」が使用されます。
「拡張セッションモード」は、仮想マシンとの内部的な通信のための仮想マシンバス(VMBus)を通じ、リモートデスクトッププロトコル(RDP)でWindows仮想マシンのデスクトップに接続する機能です。リモートデスクトップ接続で利用可能なデバイスのリダイレクト機能(プリンタ、ドライブ、PnPデバイス、RemoteFX USBデバイス)やクリップボード共有といった機能を、「仮想マシン接続」ウィンドウで利用できるという利点があります。
「拡張セッションモード」は、仮想マシンのゲストOSがリモートデスクトップ接続のサーバ機能をサポートするWindows 10とWindows Serverで利用できますが、Windows 10 バージョン1803からはLinuxゲストに対しても利用できるようになりました(画面5)。
この機能は、「hvsocket」というHyper-VおよびLinux向け統合サービスの機能を利用して実現されます。そのため、仮想マシンに対するhvsocketによる拡張セッションモードの有効化(既定はVMBus)や、Linuxゲスト側への「xrdp」の導入と構成が必要です。Ubuntu 18.04 LTSの場合の具体的な手順については、以下の筆者の個人ブログにまとめています。
クライアントHyper-Vの用途の一つに、Windows ServerのHyper-VやMicrosoft Azureにデプロイするための仮想マシンイメージの準備があります。
Hyper-Vの仮想マシンには「仮想マシン構成バージョン」があり、Hyper-Vのバージョンが新しくなると、既定の構成バージョンも新しくなります。
一方で、新バージョンのHyper-Vは、旧バージョンとの相互運用性や旧バージョンからの移行を可能にするため、旧バージョンのHyper-Vの仮想マシン構成バージョン(ただし、Windows 8およびWindows Server 2012 R2以降のHyper-V)もサポートしています。そのため、Windows 10の最新のクライアントHyper-Vで、Windows Server 2016 Hyper-Vで実行するための仮想マシンを作成することが可能です。
Windows 10およびWindows Server 2016以降のPowerShell用Hyper-Vモジュールでは、「Get-VMHostSupportedVersion」コマンドレットが利用可能です。このコマンドレットをオプションなしで実行すると、ローカルのHyper-Vでサポートされる仮想マシン構成バージョンのリストを取得できます。
Windows 10 バージョン1803のクライアントHyper-Vの仮想マシン構成バージョンは「8.3」、Windows Server 2016 Hyper-Vの仮想マシン構成バージョンは「8.0」です。仮想マシンを新規作成するための「New-VM」コマンドレットは、「-Version」オプションを指定することが可能です。例えば、Windows Server 2016用の第2世代仮想マシンを作成するには、次のコマンドラインを実行します(画面6)。
New-VM -Name ”仮想マシン名” -Generation 1 -Version 8.0
仮想プロセッサやメモリ割り当て、仮想ハードディスク、ネットワークアダプターなど、仮想マシンのその他の構成もPowerShellのコマンドレットで構成できますが、上記のコマンドラインで仮想マシンを作成後、「Hyper-Vマネージャー」の「仮想マシンの設定」ウィンドウで編集する方が簡単です。
Azure仮想マシン用のイメージは、仮想マシン構成バージョンを考慮する必要はありません。以下のドキュメントに示されているように、第1世代仮想マシンの容量固定VHDを準備すればよいからです。
岩手県花巻市在住。Microsoft MVP:Cloud and Datacenter Management(Oct 2008 - Sep 2016)。SIer、IT出版社、中堅企業のシステム管理者を経て、フリーのテクニカルライターに。Microsoft製品、テクノロジーを中心に、IT雑誌、Webサイトへの記事の寄稿、ドキュメント作成、事例取材などを手掛ける。個人ブログは『山市良のえぬなんとかわーるど』。近著は『Windows Server 2016テクノロジ入門−完全版』(日経BP社)。
Copyright © ITmedia, Inc. All Rights Reserved.