前のページまでに紹介してきた技術は、どれもこれも一長一短であり、クライアントPCの管理にまつわる問題解決の答えが見つかりそうで見つからないと思うかもしれない。その一方でサーバの仮想化技術はどんどん進化してきている。ハードウェアの進化と相まって、消費電力を削減しながらも物理マシンと遜色(そんしょく)ないパフォーマンスをはじき出し、Windowsの機能の1つとして提供されるHyper-Vでは、導入の敷居を一気に下げることも可能になった。
これをクライアントPCのために使えないか? と誰かが考えたのだろう。その答えがVDI(Virtual Desktop Infrastructure)という、仮想化したデスクトップをサーバに集約する技術である。
一般的なVDIは、サーバの仮想化技術であるハイパーバイザ上に仮想デスクトップを作り、その仮想デスクトップをリモートから利用するところから始まる。プレゼンテーションの仮想化技術はPC−PC間の通信でも利用できるので、デスクトップの実体が前述のRDSのような物理マシン(サーバ)ではなく、ハイパーバイザ上の仮想マシンであっても構わないわけだ。
VDIの基本原理
VDIの基本は、サーバ・ルームのハイパーバイザ上にたくさんの仮想マシンを用意してデスクトップを集約し、それらをシンクライアントなどからリモートで利用するというもの。
このハイパーバイザ上に仮想デスクトップを配置するというアイデアは、以下のようにさまざまなメリットをもたらす。
- 購入したサーバ・リソースをリソース・プールとして最大限活用できる
- クライアント・マシンの性能が少々劣っていても、最新のOSやアプリケーションを利用できる
- 新しいOSの社内展開がサーバ・ルーム内で迅速に実現できる
- デスクトップに関するトラブルにもサーバ・ルーム内で対応できる(クライアント・マシンの故障は別)
- クライアント・マシンが故障した際、代替が容易になる(要件がRDPぐらいで済むため)
- クライアント・マシンに影響されることなく、アプリケーションと互換性のあるOSを仮想マシン化して利用できる
もっとも、実際に上記のメリットを享受するには、ハイパーバイザ上に仮想デスクトップを置いただけでは足りない。多数の仮想デスクトップを効率よく管理する機能や、エンドユーザーに使いやすい形で仮想デスクトップを迅速に提供するサービスなどが必要だ。それに対応すべく大幅に機能拡張されたのが、Windows Server 2008 R2のRDS機能である。次の図は、そのRDSを使って構築した、Windows Server 2008 R2におけるVDI環境の全体像である。
Windows Server 2008 R2におけるVDIの全体像
VDI向けの管理機能を追加されたRDSやHyper-V 2.0、Active Directory、App-Vなどで構成される。なお、「RD」はRemote Desktopの略。
このVDIの要素としては、以下のようなものがある。
- エンドユーザーに仮想マシンやアプリケーションを提供する「窓口」であるVDIポータル(RD Webアクセス)
- 複数の仮想マシンをプール化する機能
管理ツールで10台のWindows XP仮想マシンをプール化したところ
例えばクライアントからWindows XPの仮想マシンが要求されると、VDIはこのプールから空いている仮想マシンを選んで割り当てることができる。
- 仮想マシンをホストするためのHyper-V 2.0
- クライアントからの接続要求を適切な仮想デスクトップにリダイレクトする機能
- ネットワーク遮断などを考慮して既存の接続を管理する接続ブローカ
リモート・デスクトップ・サービスの管理画面
(1)上述の接続ブローカを設定するための管理ツール。
- 利用しなくなった仮想マシンを保存状態にし、ハイパーバイザ・リソースを自動解放する機能
- アプリケーションをリモートから利用するためのRemoteApp
RemoteAppの管理画面
RemoteAppで提供するアプリケーションの設定や、VDIポータル(RD Webアクセス)に表示されるリソースの設定などが可能。
- 仮想マシンからプロファイルを独立させる移動ユーザー・プロファイル(Active Directoryのグループ・ポリシー)
- 仮想デスクトップとアプリケーションを分離して管理するApp-V
- クライアント・マシンと仮想デスクトップとの通信で利用するRDP
エンドユーザーは、VDIによって提供される仮想マシンやアプリケーションを、VDIポータル(RD Webアクセス)と呼ばれるWebサイトから利用できる。
エンドユーザーにとってのVDIのサービス窓口「VDIポータル(RD Webアクセス)」
VDIによる仮想マシンやアプリケーションを利用するには、クライアント・マシンのWebブラウザでこのVDIポータルのページを開き、対象のアイコンをクリックする。
Windows 7やWindows XPなど、プール化された仮想デスクトップへアクセスする機能、個人専用の仮想デスクトップへアクセスする機能、そして直接アプリケーションを呼び出す機能も、このWebサイトから利用できる。
クライアント・マシンからVDIポータルを介して仮想マシンに接続した例
Windows 7のクライアント・マシンからVDIポータルにアクセスし、サーバ・ルームのHyper-V 2.0上で動作しているWindows XP仮想マシンに接続して利用している。
(1)Internet ExplorerでVDIポータルのページを表示したところ。アイコンをクリックすれば、その機能が利用できるという単純な仕組みだ。
(2)これをクリックすると、Windows XP仮想マシンに接続できる。
(3)(2)によって表示されたWindows XP仮想マシンのデスクトップ画面。
エンドユーザーに提供されるVDIの機能やサービスと、それを裏方として支えるVDIシステムの姿がイメージできただろうか。
最後に、Windows Server 2008 R2のVDIを利用する際の、仮想デスクトップとクライアントそれぞれの要件を以下に記す。
■VDI上の仮想デスクトップ(接続される側)
- Windows XP Service Pack 2以降
- Windows Vista
- Windows 7
■VDIに接続するクライアント(RDC 6.1以降が必須)
- Windows XP Service Pack 2(+RDC 6.1モジュール)/Service Pack 3
- Windows Vista Service Pack 1
- Windows 7
- そのほかRDC 6.1以降に対応するOS(Windows Embedded Standard 2009、Windows Embedded Standard 7など)
さて、第1回の記事では、デスクトップの仮想化の整理からスタートし、アプリケーションの仮想化やプレゼンテーションの仮想化に触れ、そして今回の記事の主題でもあるVDIの基本的な考え方と動作原理、Windows Server 2008 R2におけるVDIの機能について説明した。
まずは、「マイクロソフト・テクノロジだけでここまでできる」ということをご理解いただけたら幸いである。第2回以降の記事では、VDIの構築手順を解説していく。
「Windows Server 2008 R2によるVDI実践入門」