Microsoft VDI by Windows Server 2008 R2 (Beta)


CitrixのXenDesktopとVMwareのVMwareView、そしてその他各社のツール群によって市場が形成されつつあるVirtual Desktop Infrastructure (VDI) ですが、デスクトップ市場における覇者であるMicrosoft自身がついにWindows Server 2008 R2から参入します。サーバの仮想化ではVMware、ターミナルサーバではCitrixに先行されていますが、はたしてデスクトップの仮想化ではどのような状況となっていくのでしょうか。
…で、検証環境を作るにもちょっと手間がかかってめんどくさそうなのですが、とりあえずは先日紹介したWindows Server 2008 R2 Beta1 機能評価ガイドに含まれている"仮想デスクトップインフラストラクチャー(VDI)"をパラパラと読んでみました。感想としては、んー、Microsoftらしいといえばらしいのですが、色々制約が厳しかったり最新バージョンで環境をそろえていく必要があるなど、なかなか難しい感じ。本命、MicrosoftなだけにCitrixやVMwareをあわてさせるような簡易性や機能を盛り込んでくるのかと思っていたのですが、ちょっと残念ではあります。とはいえあくまでもこれはBeta1に対する感想なので、正式リリース時にはだいぶスマートになっているかもしれません(と、期待してみる)。

この図にあるとおり、Microsoft VDI環境を構築するためにはクライアントからのログイン窓口となる"RAD(RemoteApp and Desktop connection) Web Access"サーバ、接続先の受付を処理するリダイレクトモードに設定された"Remote Desktop Server"、ADへの権限確認や仮想デスクトップ環境の準備を担当する"RD Connection Broker"などが必要となります*1。なぜ"Remote Desktop Server"と"RD Connection Broker"がコンポーネントとして分離しているのかがいまいちよく分かりません。また、仮想デスクトップとして使用する仮想マシンは"RD Virtualization"というコンポーネントが導入されている"Hyper-V 2.0"環境に配置されている必要があります。そして当然ながらAD。VDI関連のサーバとVDIで使用される仮想デスクトップ環境の全てが同じADに参加している必要があることはもちろん、"Personal Domain Desktops"と呼ばれる仮想デスクトップとユーザを1:1で結びつける方式を使うためにはドメインの機能レベルをWindows Server 2008以上にし、かつドメインコントローラがWindows Server 2008 R2である必要があります。VDIを検討するユーザの多くが"Personal Domain Deskopts"構成を必要とすると思われますので、これはかなりハードルを自分自身で上げてしまっている気がするのですが…。
Microsoft VDIには2種類の接続方式が用意されています。

  1. "Personal Domain Desktops"…仮想マシンを特定ユーザに紐づける方式。WindowsXP以降の仮想デスクトップを構成可能。
  2. "Virtual Desktop Pool"…複数台の仮想マシンをプールとしてグループ化してユーザ・グループに紐づける方式。WindowsVista以降の仮想デスクトップを構成可能。

…で、最も行けてないなぁと思うのが、「1台のRemote Desktop Serverは1つのプール(Virtual Desktop Pool)またはPersonal Domain Desktopsのいずれかを処理することができます。複数のプールを展開する場合や、プールとPersonal Domain Desktopsを併用する場合は、複数のRemote Desktop Serverを設置する必要があります。」という点。なるほど、"RD Connection Broker"の部分は複数プール/Personal Domain Desktopsに対応できているけど"Remote Desktop Server"は対応できないからコンポーネントとして分離している訳か…微妙。
それにしてもMicrosoftはどうしても守らなければならないものが多くあるためか、製品のライセンスや提供の仕方がどうも上手くない気がします。特にこのVDIについてはMicrosoftが制覇してきたデスクトップ市場に影響のある部分なだけに、ぜひMicrosoftには頑張ってもらいたい部分なのですが。

*1:これらの3サーバ機能はパフォーマンスや可用性を考慮しないのであれば単一サーバ上に同居して構成することが可能。