仮想化ソフトの利用例は数多くあれど,現在もっとも注目を集めているのは「デスクトップ仮想化」である。業務アプリケーション・サーバーなどのサーバー機だけでなく,エンドユーザーがオフィス・ソフトなどを動かすクライアントPCも仮想化してしまおう,という試みだ。

 デスクトップ仮想化は,サーバー統合(サーバー仮想化)と同じく,データセンターの高性能サーバー機に仮想化ソフト(VMwareやHyper-Vなど)を導入し,その上で複数の仮想マシンを動作させる。これらの仮想マシンにWindows XPやWindows VistaなどのクライアントOSをインストールし,エンドユーザーのデスクトップPCとして利用する(図1)。

図1●デスクトップ仮想化の仕組み
図1●デスクトップ仮想化の仕組み
サーバー統合と同様に,大量のクライアントPCも少数のサーバー機に統合できる

 エンドユーザーは,この仮想デスクトップPCをシンクライアント端末から遠隔操作する。仮想デスクトップPCからシンクライアント端末へは,画面情報だけを送る仕組みになっている。この遠隔操作技術は,従来の画面転送型シンクライアント・システムと同じである。

 そもそも,仮想化ソフトの中核機能は,1台のコンピュータ・ハードウエアの上で,複数の仮想コンピュータ(仮想マシン)を同時に動作させるというもの。ここで,「個々の仮想マシンを何の用途に使うか」という業務上の都合に応じて,仮想マシンを前提としたさまざまな運用管理ソフトが開発されている。サーバー仮想化を目的とした運用管理ソフトがあるように,デスクトップ仮想化を目的とした運用管理ソフトもある。

この仮想マシンは誰のもの?

 デスクトップ仮想化のための運用管理機能として重要なのは「デスクトップ・ブローカ」である(図2)。サーバー機上に複数ある仮想デスクトップPCとエンドユーザーをヒモ付けて管理するものだ。個々のユーザーごとに異なる専用のデスクトップ環境を立ち上げ,その画面情報を端末に配信する。デスクトップ・ブローカやシンクライアントなどで構成するデスクトップ仮想化基盤を総称して「VDI(Virtual Desktop Infrastructure)」と呼ぶ。

図2●デスクトップ仮想化を支える運用管理ソフト
図2●デスクトップ仮想化を支える運用管理ソフト
ユーザーと仮想デスクトップPCをヒモ付けて管理するデスクトップ・ブローカ機能を中核に,OSイメージを複数ユーザーで共有する「プロビジョニング」が可能な製品もある

 デスクトップ・ブローカをシンプルに実装した例としては,アイベクスが開発した「VMconnector」がある。Rubyで開発したWeb連携アプリケーションとして実装している。エンドユーザーはWebブラウザでVMconnectorにアクセスし,ユーザー認証を受けることで,サーバー機上にある自分の仮想デスクトップPCにアクセスできるようになる。RDP(Remote Desktop Protocol)クライアントとして動作するActiveXコントロールからアクセスする仕組みだ。仮想デスクトップPCを稼働させるサーバー機が複数ある場合は,新たなユーザーが接続するたびに,仮想デスクトップPCを稼働させるサーバー機をラウンドロビン方式で選び,処理負荷を分散させることができる。