Xen、VMware を始めとした仮想化テクノロジーの波は Microsoft をも巻き込んで、
大型ムーブメントとなってきた感がある。 なぜ仮想化テクノロジーがブームとなってきたのだろうか。 その背景には CPU の高度化、 特に
Core Duo のような低価格なマルチコア CPU の出現による並列実行性能の向上がある。 一般的にアプリケーションは CPU
を使い切っていない。 使い切っているのは入出力性能、それも一時的な、である。 時間をならして見れば CPU
性能は余裕で余り、入出力性能も余りが出るものだ。
仮想化テクノロジーは、このような余った性能を有効活用するところに利点がある。
今回は筆者の考える仮想化テクノロジーによる利点、可能性について説明する。
集約化による資源の共用
二次記憶装置の容量あたりの単価は劇的に下っている。 いまや 250GB のハードディスクが実売 8,000 円である。 ある調査によると年あたり 25% のペースで単価は低下しているとのことで、 今後は更に低価格化が進むであろう。 ファイルサーバ、DB サーバでもない限り、 サーバアプリケーションはそれほど大量の二次記憶を使うわけではないので、 ほとんどのサーバで二次記憶装置は余っていることだろう。 またアプリケーションの多くは 24 時間ずっとハードディスクを読み書きしている訳ではないので、 容量が余っていると同時に、時間的に見れば仕事量も余っていると考えられる。
同じようにネットワークデバイスについて考えてみると、 ブロードバンド時代といっても、 常に帯域を使い切っているサービスは少ないだろうと思われる。 ウェブサーバなどで 大きなファイルダウンロードが起きている状態では一杯一杯であろうが、 稼働時間で転送パケット量を割ってみれば、 平均的には、それほど帯域を使っているわけでも無いことがわかるだろう。 サーバ機器では二つのネットワークデバイスが備わっているものもあるが、 使用帯域を考えれば、二台に一つ、三台に一つでも十分である場合も多いと思わ れる。つまり、ネットワークデバイスの仕事量も余っていると考えられる。
このように考えると、ハードディスク、ネットワークデバイスなどは共用でも問題はなく、 仮想化テクノロジーにより、一台のハードウェアで複数のサーバを働かせれば、 資源を効率良く使うことができることがわかると思う。 資源の共有が仮想化テクノロジーの台頭の最も大きな理由だと考えられる。
環境に優しい省電力化
CPU の高クロック化、高集積化が進むにつれ、 計算機の消費電力が問題となりつつある。 特に数百、数千台の計算機が設置されるデータセンターでは深刻な問題といえる。 一人暮しの方は、 テレビ見ながらドライヤーつけたらブレーカーがとんだ経験がお有りと思うが、 いまやサーバ機器などはドライヤー並みの消費電力となっている。 ドライヤーがラックに 20 台、それがずらりと並んでいて、 ドライヤーの冷却のためにエアコンディショナーが、 これまだずらりと並んでいる、それがデータセンターの実情である。 仮想化テクノロジーを用いてサービスを集約させることは時代の要請ともいえるだろう。
新規テクノロジー開発の可能性
実をいうと仮想化テクノロジーは汎用機、メインフレームの技術であり、 新しいものでは無いのだが、 今、あらためて研究することで、 以前には考えられなかった新規テクノロジー開発の余地があると思う。
例えばセキュリティの分野では、 Xen などの仮想モニタ上で動く OS を、 OS に知られずに監視することで、 ウィルス感染の典型的な兆候である他機器への感染行為など、 特徴的な活動を捉えて問題のある OS を停止させるなど、 これまでに無いセキュリティ対策技術が開発されている。 OS やサービスのバグにより異常停止となった場合に、 別の仮想 OS を起動することで継続的にサービスを提供するなどの技術も開発さ れている。
このような、現状の計算機が抱えている問題を解決するためのブレークスルーと しても仮想化テクノロジーは注目されている。
仮想化テクノロジーはデスクトップでも有用
仮想化テクノロジーはサーバ環境において語られることが多いが、 筆者はユーザー環境、デスクトップ環境においても有益と考えている。 デスクトップ環境は Windows だけではなく、Linux、Mac OS、BSD など、様々なものがある。 Windwos ばかり使われているのは、 アプリケーションやデータファイルの互換性も大きいが、 それ(Windows)しか使う環境が無いからということもある。 Windows が悪いとはいわないが、他の OS にも面白さがある。 仮想化テクノロジーを使うことで、 一台の PC で複数の OS を稼働させる、 つまり、Windows と Linux と Mac OS を並行して使うことができるようになる。 OS 間でファイル共有を行えば、アプリケーションも自由自在に使うことができる。
筆者は週に一度は OS をインストールする OS マニアである。 これまでに何十という OS を使ってきたが、 それぞれに工夫があり、思想があり、主張があって、本当に面白い。 みなさんにも仮想化テクノロジーを使って色々な OS を体験していただきたいと思う。