IT環境では今,“仮想化”が流行っている。OSやアプリケーションが動作する「仮想マシン」のことだ。以下では,仮想マシン技術はどういう方向に向かっていくのか,仮想化技術の今後について考えてみる。

 仮想化の一つの定義は,「サーバー,ネットワーク,ストレージなどの物理的なリソースを隠して,論理的な単位として提供する技術」である。現在は主に,WindowsやLinuxで稼働する「VMware」や,Linuxで動く「Xen」などのように,仮想化技術を単一のソフトで実現している。

 まず最初に,仮想化のメリットについて説明しておこう。仮想化技術の用途は個人と企業とで少し異なる。個人レベルでは,Windows上でLinuxを動かす,ベータ版のOSやソフトウエアを試す,ソフトウエアの開発に役立てる,といった用途に使われる。

 企業で仮想化ソフトを使う主なメリットは,物理的なサーバーのコスト削減である。一般にファイル・サーバーやメール・サーバー,Webサーバーなどを個別のマシンで運用している場合,効率が悪い。各サーバーには平均すると30%から40%程度の負荷しかかかっていないからだ。

 しかし,個別のマシンを1台に統合すると,サーバーのリソースを有効活用している分,特定のサーバー・アプリケーションの負荷が上がった場合に,サーバーの能力を超えてしまいやすくなる。そうなると,負荷が上がったアプリケーションを別のサーバーに移動させるなどの作業が発生してしまう。

 このようなサーバー統合のデメリットを抑えるのが,仮想化ソフトだ。仮想化ソフトには,実行中のOSとアプリケーションをそのまま他のサーバーに移動できる機能(ライブ・マイグレーション)を備えるものがある。負荷が上昇したときに,他のサーバーにOSごと移動できる。性能の異なるサーバーを複数運用している場合,その時々に「重くなる」アプリケーションを高性能なサーバーに配置し,「軽い」アプリケーションをそれ以外のサーバーに逃がすといった使い方もできる。

 企業にとって仮想化には,マシン購入の稟議(りんぎ)の手続きを省略できるというメリットもある。例えば,保険サービスを手がけるAIGは,「必要な保険商品パッケージを提供するためにはサーバーの構築が必要になる。サーバー構築時間を大幅に短縮することは,そのまま競合他社よりも素早く保険の新商品を販売できることになる」(AIG 情報技術担当取締役の谷川 宏氏)という。「物理的なサーバーを購入する場合は,マシン選定や購入のための稟議を通すことに時間を取られていた。仮想マシンに変えてから,新しい保険サービスの企画からサービス構築までの時間を短縮できた」(同)。

 このほか,サーバーを新しい機種に買い換えるケースにも仮想化は有効だ。サーバー・マシンを更新すると,OSやアプリケーションも新版に更新することになる。そうすると,それまで動いていたアプリケーションが動かなくなることがある。仮想化ソフトを使えば,古いOSと古いアプリケーションを新しいサーバー上でそのまま動かし続けることができる。

 このように仮想化は一時の流行というより,IT環境に定着しつつある,ごく当たり前の技術と言える。単体のパソコン上,小規模なサーバーの上,さらにデータセンターやホスティング・サービスなど大量のサーバー・マシンを運用しなければならない用途など,さまざまな規模で仮想化ソフトが使われている。

 例えば米VMwareは,1台のパソコン上で動作する「VMware Player」や,サーバー上で動作し少数のクライアント・マシンからアクセスして利用する「VMware Server」といった仮想化ソフトを無償化,ダウンロード利用できるようにしている。VMware Playerは提供から4カ月で100万ダウンロードを突破し,だれもが利用できる仮想化ソフトの定番となった。

 仮想化ソフト「Xen」は,小規模なLinuxサーバーで使われることが多い。既に米Red Hat(Red Hat Enterprise Linux,Fedora Core),米Novell(SUSE Enterprise Linux Server,openSUSE)のLinuxディストリビューションに含まれており,標準で利用できる。商用Linuxだけではなく,Fedora Coreなど無償で利用できるLinuxでも簡単に使える。

 このほか,大規模なホスティング・サービスに使われている仮想化ソフト「OpenVZ」の商用ソフト版である「Virtuozzo」も,クララオンラインが運営するサーバー・ホスティングで,VPS(Virtual Private Server)サービスを構築するために利用されている。

CPUやOSへ分散する仮想化機能

 さて,本題に入るが,筆者はこれらの仮想化ソフトが今後,消えていくと予想する。消えていくといっても,仮想化技術が無くなるわけではなく,単体のソフトとしての形が無くなっていくという意味だ。

 仮想化ソフトの機能はOSやハードウエアに分散していき,ソフトとしての仮想化機能は,核となる部分だけが残る。そして,核の部分はユーザーからは見えず,管理インタフェースだけがGUIに残される。

 ハードウエアに吸収される動きは既に始まっている。例えば,仮想マシンに役立つCPUの新命令セットとCPUの動作モードを追加した米Intelの「Intel VT」や同様の機能を提供する米AMD社の「AMD-V」だ。これらは仮想化を支えるハードウエア技術として,最初の段階に相当する。今後は,CPU自体のほか,チップセットや各周辺機器のインタフェースにも仮想化を支えるための仕組みが取り入れられていく。

 VMware PlayerやXenなど,仮想化を提供する仮想化ソフトの機能も徐々にOS本体に組み込まれていく。Linuxでは,ディストリビュータが仮想化ソフトをパッケージに組み込むこれまでの流れからさらに一歩進み,Linuxカーネル自体に仮想化ソフトのインタフェースを作る動きを進めている。Linuxでは「Xen」,「OpenVZ」,「Linux V-Server」など複数の仮想化ソフトがトップの地位を競っているが,今後はどの仮想化ソフトを使っていても,ユーザーはそれらの違いを意識せず仮想化機能を利用できる方向に進むだろう。

 Windowsにも仮想化技術が組み込まれる。既に米Microsoftは単体のソフトウエア「Virtual Server 2005 R2」を無償化している。2007年以降に出荷を開始するサーバー向けWindowsである「Longhorn Server」には,仮想化技術を組み込むことが予定されている。Windowsを使っていれば,自動的に仮想化環境が利用できるようになっていく。

 このような「仮想化技術の分散」の動きは,1980年代末に皆が使っていた「メモリー管理ソフト」の動向と似ていると思うのは筆者だけだろうか。当時は1MバイトというMS-DOSのメモリー管理の上限を超えてメモリーを使うために,「DOS extender」などのメモリー管理ソフトが,MS-DOSとは別に提供されていた。DOS extenderを組み込めば,MS-DOSを使いながらも,intelのCPU「80286」が持つ16Mバイトという広大なメモリー空間をアプリケーション・ソフトウエアが利用できた。

 その後,Windows 3.0/3.1がDOS extenderと同様の機能を提供し始めた。Windows 95の普及に至って,DOS extenderは完全の過去のものとなった。メモリー管理ソフトが提供していた機能は,Windowsのごく当たり前の機能となったのだ。

ベンダーは仮想化ソフト単体ビジネスからの転換狙う

 仮想化技術の“分散”の動きが進んでいく中で,前述のVMwareも,これまでのように,仮想化ソフト製品を単体販売するという動きから,仮想マシン上で稼働するOSとアプリケーション・ソフトウエアをプリインストールした仮想化イメージ「バーチャル・アプライアンス」の提供にビジネスをシフトできるよう,準備を進めている。同社は既に,300種類以上のバーチャル・アプライアンスをそろえている。

 バーチャル・アプライアンスが定着すれば,ユーザーは面倒なサーバー用アプリケーションの設定から解放され,仮想化イメージとして用意されたレディ・メイドの各種アプリケーションを利用できるようになる。商用ソフトウエアを組み込んだバーチャル・アプライアンスの提供が進めば,パッケージ・ソフトに続く,ソフトウエアの新しい流通方法の開拓に成功したことになる。

 仮想化ソフトは「消える」。だが,単に見えなくなるだけであり,仮想化技術自体はごく当たり前に利用される技術に変化していくのだろう。