切っても切れない仮想化とストレージの関係続・実践! Xenで実現するサーバ統合(1)(1/2 ページ)

仮想化ソフトウェアの「Xen」を用いてサーバを統合するのはいいけれど、肝心のデータやアプリケーションを格納するストレージはどのように配置するのが最も効果的でしょうか? 続編では仮想化とストレージの効果的な活用にフォーカスを当てていきます(編集部)

» 2008年04月18日 00時00分 公開
[中嶋一樹@IT]

 仮想化ソフトウェア「Xen」で構築した環境において、共有ストレージはどのような役割を果たすのでしょうか?

 この連載では、「実践! Xenで実現するサーバ統合」に続き、仮想化環境においてどのような場面で共有ストレージが必要とされるのかを説明します。そして、NASやiSCSIといったさまざまなインターフェイスを備えるストレージ専用機とXenを組み合わせるためのセットアップ手順についても解説したいと思います。

 データを保管するストレージは、従来のサーバ同様、仮想化環境においても、容量、性能、可用性など、さまざまな側面で重要な役割を担っています。

 しかしストレージには、DAS、NAS、iSCSI、ファイバチャネルなどさまざまな種類があり、選択には注意を要します。そのうえ、RAID設計、論理ボリューム設計、パーティション設計と設計項目も多岐にわたっており、特に仮想化環境では仮想マシンの実体をどのようにディスク上に配置するかという課題もあるため、設計者にとっては悩みどころになっているのではないでしょうか。

 本連載ではこのあたりを整理し、ストレージごとの構築方法を解説しようと思います。なお、Xenの環境はCentOS 5.1をベースとして話を進めます。

仮想化環境における共有ストレージの必要性

 まず仮想化環境のストレージ構成には、大別して「ローカルHDD構成」と「共有ストレージ構成」という2つの選択肢があります。

図1 ローカルHDD構成と共有ストレージ構成 図1 ローカルHDD構成と共有ストレージ構成

 仮想化環境はある程度以上の規模になってくると、往々にして、共有ストレージ導入の必要に迫られます。これはなぜでしょうか?

 ローカルHDD構成では、仮想マシンの実体データを格納するのに、ホストサーバ上のディスクを用いることになります。ホストサーバ1台ですべてを賄うことができるため、手軽にセットアップできることが魅力です。

 それに対して共有ストレージ構成では、別途ストレージ専用機、またはストレージ用途に特化したサーバを立てる必要があります。ローカルHDD構成と比べ、構成はいくぶん複雑になりますが、複数のホストサーバで仮想マシンのデータを共有できるようになるという大きなメリットがあります。

 複数サーバでのデータ共有は珍しいことではありません。しかし仮想化環境では、仮想マシンのデータを複数サーバで共有することによって、ライブマイグレーションと呼ばれる特殊な機能を使用できるようになります。これは、あるホストサーバで稼働中の仮想マシンを、オンライン状態のままほかのホストに移動させることができるというものです。

図2 ライブマイグレーション 図2 ライブマイグレーション

 この機能は、ホストサーバのカーネルアップデートやハードウェアのメンテナンスなど、ホストサーバを停止しなければ行えないメンテナンス作業の際に有用です。そのホストサーバ上で稼働している仮想マシンをほかのホストにライブマイグレーションさせ、一時的に退避することにより、仮想マシンはオンラインのままでホストサーバのメンテナンス作業ができるようになります。

 ライブマイグレーションはまた、上記のメンテナンスのほかに、ホストサーバのリソースの調節にも利用できます。

 例えば、ホストサーバAで、複数の仮想マシンが同時に多くのCPUリソースを必要としている場合、そのままでは仮想マシン1台当たりに割り当てられるCPUリソースが少なくなってしまい、十分な処理能力を確保できません。

 このとき、ホストサーバB上の仮想マシンではほとんどCPUリソースを使用していなかったとしましょう。この場合、ホストサーバA上のいくつかの仮想マシンをホストサーバBにライブマイグレーションすることによって、ホストサーバAの負荷を下げ、全体のリソースを満遍なく利用することができます。

 耐障害性についてはどうでしょうか。あるホストサーバが故障し、その上で稼働していた仮想マシンがすべて停止してしまったとしましょう。その場合でも、共有ストレージ構成であれば、仮想マシンの実体はほかのホストサーバからアクセスできる共有ストレージ上にあります。余力があるほかのホストサーバから、ダウンした仮想マシンを指定して起動し直してあげれば、容易に仮想マシンの復旧が可能です。

 ローカルHDD構成だと、そう簡単には復旧できません。新しいサーバハードウェアを用意してそこにディスクを差し替えるといった作業が必要になります。ディスク自体が壊れてしまった場合には、復旧が不可能ということも起こり得ます。

 このあたりが、仮想化環境と共有ストレージが切っても切れない関係である大きな要因です。ストレージ専用機の容量の拡張性や高性能なバックアップ/リストア機能も、ある程度以上の規模の仮想化環境には非常に魅力的なものでしょう。

ストレージごとの最適なレイアウトを考えよう

 少し前まではSANといえばファイバチャネル(Fibre Channel)によるものでしたが、最近では、iSCSIを採用したIP-SANがずいぶん増えてきました。

 一般的にiSCSIはファイバチャネルに比べて性能が劣るといわれていますが、実際はパフォーマンス面でも1Gbpsのインターフェイスを2〜3本束ねてI/Oのスループットを確保し、ファイバチャネルと比較してもほとんど遜色(そんしょく)ない性能を発揮します。

 ファイバチャネルでは最近、4Gbpsのインターフェイスが普及してきています。が、実際は、それほどの帯域を使用する前にディスクI/O性能が頭打ちとなるケースもあり、一概にネットワーク部分のスペックが実測値に大きく影響するとは言い切れません(注1)。

注1ただしRAIDを構成するディスク本数が多い場合は、この限りではありません


 10Gbpsのイーサネットが普及してくれば、iSCSIを検討する可能性はさらに大きくなるでしょう。

 ここではローカルHDD構成、NAS構成、iSCSI構成について、それぞれ

  • ホストサーバからストレージはどのように見えるのか
  • 仮想マシンの配置方法

という項目について見ていきたいと思います。

       1|2 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。