サーバー統合と仮想化によるITコストの削減
仮想化技術によってサーバーを統合するという方向性を後押しする要因となったのが、プロセッサのマルチコア化の進展だ。x86プロセッサの性能向上は、ムーアの法則に沿った集積度の向上とクロック周波数の向上を踏まえて急速に進んだが、ここ数年は熱対策と省電力化への要求や、クロック周波数自体の引き上げペースが鈍化したりと、行き詰まり感を示していた。そこで浮上したのが、増大し続けるトランジスタ数をこれまでとは異なるやり方で活用することで性能向上につなげるというアプローチで、これがマルチコア化への方向転換の理由となっている。
マルチコア化によってプロセッサ内部での並列演算性能は大幅に高速化し、同時にクロック周波数上昇に歯止めを掛けて、やや周波数を低く抑えたことで電力消費量も改善したのは大きな成果だが、一方でソフトウエアの対応がまだ追いついていないという問題もある。従来のソフトウエアはマルチコアプロセッサに最適化された構造になっていないため、急激に並列度を増したプロセッサの演算リソースを使い切れないという。端的に言えば、マルチコアプロセッサで実行しても、コアを使い切ることができず、「遊んで」しまうコアが生じてしまうケースは少なくない。
サーバーの仮想化は、マルチコアプロセッサの演算性能を使いこなすための効果的な手段の1つと考えることもできる。仮想化を利用して複数のサーバーイメージが1台のサーバーハードウエア上で実行されれば、相互に依存性のない並列化されたタスクが多数実行されることになるためだ。単純に考えて、4コアを実装したサーバー上で仮想化された4台のサーバーイメージが動作する場合、各コアごとに異なるサーバーイメージが実行されることになり、ソフトウエアの並列化について心配するまでもなく、高性能なCPUの性能を使い切ることができる。
仮想化で高効率と高可用性を実現
さらに、サーバー仮想化の活用に関して大きなインパクトを与えたのが、「ライブマイグレーション」が実用化したことだ。ライブマイグレーションは、稼働中の仮想サーバーを別のハードウエアに移動する技術だ(図3)。物理サーバー上で稼働中のシステムイメージを丸ごと別のハードウエアに移すのは簡単ではないが、仮想サーバーであれば、仮想化ソフトウエアがすべてのリソース使用状況を把握できていることもあって、ハードウエア側での特別な支援なしに実現可能となる。仮想サーバーのハードウエアをまたいだ移動が実現した段階で、仮想サーバーは完全に物理ハードウエアから切り離され、運用の独立性を確保したと言えるだろう。
これにより、単に大規模なサーバー上に複数のタスクを静的に集積するという運用から、複数のサーバー間でタスクを動的に移動し、全体で運用効率を最適化したり可用性を向上させる道が開けた。
運用効率の最適化とは、たとえば一時的に物理マシンの負荷が増大した場合に、他の物理サーバーに仮想サーバーを移動することで、物理サーバーの負荷を分散させるということだ。これにより、各物理サーバーのタスクの安定稼働を図るだけでなく、冷却効率も平準化できる。また、物理サーバーの負荷が低い状態のときは、1台のサーバーに仮想サーバーを集約し、他の物理サーバーの電源を落とし、電力消費を下げることもできる。もうひとつのメリットである可用性の向上は、物理サーバーの障害が発生したときに、他の物理サーバーに仮想サーバーを移動させることで、無停止の仮想サーバーを構築できるということだ。
サーバー統合と仮想化ソフトウエアの運用は、単にTCO削減の手段であるばかりでなく、可用性の向上にも大きく貢献するソリューションなのである。