Windows 7とWindows Server 2008 R2で始めるデスクトップ仮想化【最終回】

Aeroを使う、USBメモリを使う、プールされた仮想マシンを使う


 前回、デスクトップ仮想化環境の構築まで紹介した。とはいえ、前回までの話だけでは、リモートデスクトップとの違いをあまり実感できなかっただろう。今回は、デスクトップ仮想化を使うメリットを感じる利用方法を紹介する。


Windows XP/Vistaをデスクトップ仮想化環境で使う

 Windows 7を使ってデスクトップ仮想化環境を構築する方法を紹介したが、もちろんWindows XPやWindows Vistaを利用することも可能だ。基本的には、Hyper-V上でFQDNの名前をつけた仮想マシンを作成し、それぞれのOSをインストールし、同様の設定を行えばいい。


Hyper-VでWindows Vista用の仮想マシンを作成。名前はWindows 7と同様FQDNで設定しようWindows XP用の仮想マシンの場合も同様

 ただし、Windows 7と少し違うのは、統合サービスをインストールしなければいけないという点だ。統合サービスは仮想マシンからHyper-Vが提供する機能を利用するために必要なソフトウェア。最新OSのWindows 7には、最初から統合サービスが組み込まれているため、インストールする必要はなかったが、それ以外のOSを利用する場合は必ずインストールしておこう。統合サービスは、OSをインストールした直後にインストールする。


インストール後、コンソールウィンドウのメニューにある「操作」→「統合サービスセットアップディスクの挿入」を選択「Hyper-V統合サービスのインストール」をクリックインストールが終了したら、Windows Vistaを再起動する。Windows XPの場合も同様にインストールしよう

 Windows XPの場合、デスクトップ仮想化用の設定が一部異なる。リモートデスクトップの設定やAdministratorsグループの設定などは同じだが、コマンドプロンプトでのファイアウォールの設定が異なる。Windows XPの場合は、「netsh firewall set service remoteadmin enable」と入力しよう。また、レジストリの設定内容も異なる。Windows 7やWindows Vistaには「AllowRemoteRPC」があるが、Windows XPにはないので、新たに作成し、値も変更しておこう。


コマンドプロンプトを起動し、netsh firewall set service remoteadmin enableと入力「HKEY_LOCAL_MACHINE」→「SYSTEM」→「CurrentControlSet」→「Control」→「Terminal Server」の順に開く。Windows XPには「AllowRemoteRPC」がないので作成する「編集」→「新規」→「DWORD値」をクリック

「AllowRemoteRPC」と入力「AllowRemoteRPC」をダブルクリックし、値を0から1に変更し、「OK」をクリック

 新しく作成したデスクトップ環境にユーザーを割り当てるのは、リモートデスクトップ接続にある、「RD仮想化ホストサービス」→「個人用仮想デスクトップ」で行う。今回作成したWindows VistaやWindows XPに限らず、追加のWindows 7でも同様の操作になるので覚えておこう。


「リモートデスクトップ接続」→「RD仮想化ホストサービス」→「個人用仮想デスクトップ」にある「個人用仮想デスクトップを割り当てる」をクリックウィザードにしたがって設定する。割り当てる仮想マシンを間違えないようにしよう正しく設定していれば、このようにWindows Vistaにもアクセスできる

Windows XPやWindows Vistaからデスクトップ仮想化環境を使う

 デスクトップ仮想化環境へのアクセスは、Windows 7などのクライアントOSからも可能だ。ただし、使用しているRDPのバージョンが古いとアクセスできない場合があるので、最新のサービスパックを適用しておこう。


Windows XPからアクセスした例。SPを適用していないため、エラーメッセージが表示されたActive Xコントローラが有効になっていないとアクセスできないので、有効に設定することも忘れずに

リソースプール機能で無駄なPCを排除

 デスクトップ仮想化の利点として紹介されるのが、プールされたデスクトップを自由に使えるという点だろう。このプールは、あらかじめ用意されたデスクトップ環境を、必要に応じて利用するという機能だ。前回紹介した方法は、ひとつのデスクトップを一人のユーザーが占有してしまうが、プール機能を利用することで、使われていないデスクトップを必要に応じて利用するといった使い方が可能になる。

 プール機能を使うには、プール用の仮想マシンを用意する必要がある。手順は前回紹介したものと同じ。注意が必要なのは、ユーザーを割り当てている仮想マシンはプール用に使ってはいけないという点くらいだ。当たり前だが、プールする場合は同じOSのデスクトップでないとだめだ。

 設定は、コネクションブローカー用サーバーで行う。サーバーマネージャーの役割にある「リモートデスクトップサービス」の「リモートデスクトップ接続マネージャー」から、「仮想デスクトッププールの作成」を選択。ウィザードが起動するので、プールする仮想マシンを選択すればOKだ。あとはプールに名称をつければ完了。


リソースプールで使う仮想マシンを作成する。ユーザーを割り当てている仮想マシンには使わないように。今回は、3台のWindows 7クライアントを割り当てるリモートデスクトップ接続の右側にある「仮想デスクトッププールの作成」をクリック「次へ」をクリック
リソースプールで使用する仮想マシンを選択し、「次へ」をクリックポータルページに表示される名前とプールIDを設定し、「次へ」をクリック「完了」をクリック。設定はこれで完了

 コネクションブローカーのポータルサイトにログインすると、プールされたコンピュータのアイコンが表示されている。これをクリックすると、プールされたデスクトップにアクセスできる。


正しく設定できているかどうかアクセスしてみるマイデスクトップのほか、リソースプールへアクセスするためのアイコンが表示される個人用に割り当てた場合と同じようにアクセスできる

用意している仮想マシン数を超えたユーザーがアクセスしようとすると、エラーメッセージが表示される

 この機能は一時的にデスクトップを使いたい場合に有効だ。また、Windows XPのような古いOS環境をプールで提供するといった使い方も現実的だろう。ただし、決まったデスクトップにアクセスできるわけではないので、仮想マシン上にファイルを残さないような使い方をする必要がある。Active Directoryで移動ユーザープロファイルなどを設定し、デスクトップやドキュメントフォルダをサーバー側で一元化しておけば、プール環境の使い勝手は向上するだろう。


よりリアルなデスクトップ環境を手に入れる

 Windows 7のデスクトップに接続した際、若干残念に感じるのが、Aero UIでない点ではないだろうか。特に接続用に使っているローカルPCでAeroが利用できる場合、リモートで接続した環境が見劣りすると、なんとなく使いたくなくなってしまうのではないだろうか。


Aero環境のWindows 7から仮想マシンにアクセス仮想マシンはAero表示にはなっていない。設定を変更しても反映されない

 実は、Windows 7で採用されているRDP 7.0はAeroをサポートしているので、デスクトップ仮想化環境でもAeroを利用することは可能なのだ。

 設定は、コネクションブローカー用サーバーにある「カスタムRDP設定」に次の2行を入力するだけ。

disable wallpaper:i:0
allow desktop composition:i:1

 これで、デスクトップ仮想化環境でもAero UIを体験できる。ただし、接続するクライアントPCのグラフィックがAeroに対応していないと利用できないので注意が必要だ。また、RDP 7.0をサポートしていないWindows VistaやWindows XPでは、この機能は使えない。


「リモートデスクトップ接続」→「RD仮想化ホストサービス」→「個人用仮想デスクトップ」の右側にある「プロパティ」をクリック「カスタムRDP設定」タブに切り替えて、「disable wallpaper:i:0」「allow desktop composition:i:1」の2行を入力し、「OK」をクリック設定後アクセスすると、Aero環境が利用可能になる。これならエンドユーザーも違和感なく使えるだろう

クライアントPCのリソースをデスクトップ仮想環境で使う

 デスクトップ仮想化環境のメリットは、データセンター側で完全に閉じた環境で運用できるという点だろう。この機能により、データの漏えい防止といったことが容易に行える。

 とはいえ、現実的にはなんらかの形でローカルリソースを使いたい場合もあるだろう。こうした要望も設定ひとつで対応できる。

 設定できるのは、音声の再生・録音、USBデバイスの利用、ローカルPCのHDDへのアクセス、クリップボード、プリンタの利用など、さまざま。これらを組み合わせれば、ビデオチャットの機能を利用したり、クリップボード経由でデータをやりとりしたりすることができる。


ローカルPCにはUSBメモリが接続されているが...仮想マシン側からはアクセスできない
「リモートデスクトップ接続」→「RD仮想化ホストサービス」→「個人用仮想デスクトップ」の右側にある「プロパティ」をクリック「一般的なRDP設定」タブに切り替えて、利用したいデバイスをチェックし、「OK」をクリック
アクセスしようとすると、どのリソースを利用するかを確認するダイアログボックスが表示されるので、利用するデバイスをチェックし、「接続」をクリック仮想マシン側からローカルPCのリソースが利用可能になる

 どの程度までセキュリティを犠牲にするかは管理者の判断が必要だが、こうした機能を利用することで、柔軟な運用にも対応できる。


デスクトップ仮想化の課題はライセンス?

 作るまでは一苦労だが、作ってしまうと、いたってシンプルなのがデスクトップ仮想化だ。まずはどのようなものかを体験し、現実的に利用できるかどうかをしっかりと評価していただきたい。デスクトップ仮想化で十分利用可能であれば、新しいPCを買わずにサーバーに投資したほうがいいだろう。ネットブックと組み合わせれば、おもしろい使い方も考えられそうだ。

 ただし、デスクトップ仮想化にかかる費用がどの程度かが選択する上で重要になるだろう。

 デスクトップ仮想化を実現する上で、Windows Server 2008 R2のライセンスが必要なのはもちろん、利用するユーザー数やデバイス数に応じたリモートデスクトップライセンスも必要になる。

 そのほか、デスクトップ仮想化環境の仮想マシンでWindowsを実行するために必要になるのが、「Windows Vista Enterprise Centralized Desktop(以下、VECD)」というサブスクリプションライセンスだ。VECDはデスクトップ仮想化環境にアクセスするデバイス単位のライセンス。つまり、仮想マシン上にいくつWindowsをインストールしても課金はされないが、その仮想マシン上のWindowsにアクセスするためには費用が発生するというわけだ。

Tech・Ed 2009のプレゼンで紹介されたVECDの価格

 このVECDは、アクセス元のデバイスにより2種類のライセンスが用意されている。ひとつは、Windows XPやWindows Vistaなど既存のPCをアクセス用の端末として利用し、かつ既存PCがSA(ソフトウェアアシュアランス)契約している場合に適用される「Windows Vista Enterprise Centralized Desktop for Software Assurance(VECD for SA)」。もうひとつは、Windows Embeddedなどシンクライアント端末を利用する場合に適用される「Windows Vista Enterprise Centralized Desktop(VECD)」。

 このVECDだが、国内での提供価格は明らかになっていないが、米国で発表されている価格を見ると、VECD for SAが1デバイスあたりで年間23ドル、VECDが1デバイスあたりで年間110ドルとなっている。

 使い方にもよるだろうが、この価格を高いと感じるか、安いと感じるかがデスクトップ仮想化の普及に大きく影響するだろう。





(福浦 一広)

2009/12/11/ 00:00