クラスタ機能の種類と目的
一般的なクラスタ機能の種類としては、高可用性クラスタと負荷分散クラスタの2種類がありますが、これは仮想化環境においても同様です。以下、それぞれについて見ていきましょう。
高可用性クラスタ
まず、サーバ仮想化環境における高可用性クラスタは、仮想化ホスト(VMware ESX/ESXiやCitrix XenServerのインストールされた物理マシン)の異常を検知して、稼働していた仮想マシンを正常な仮想化ホスト上で再起動する仕組みです。
物理環境で従来から利用されてきた高可用性クラスタ機能との違いは監視対象の範囲です。OS上で動作中のサービスなども監視対象になる物理環境のものと違い、仮想化ソフトウェアのクラスタ機能はゲストOSで稼働する個々のサービスまでは監視しません。アプリケーションやミドルウェアなどの上位レイヤーを監視対象としたクラスタを構成する場合には、サードパーティ製のソフトウェアを利用することになります。
負荷分散クラスタ
サーバ仮想化環境における負荷分散クラスタは、クラスタ内の各仮想化ホストの負荷状況を監視して、その負荷を平準化する機能です。平準化の手段は以下の2通りです。
- 高負荷なホストから低負荷なホストに稼働中の仮想マシンをライブマイグレーション(VMware vMotion、XenMotion)させる
- 仮想マシンを新たに起動する際に、低負荷なホストを探し出し、そこで仮想マシンを起動する
なお、VMware vSphereとCitrix XenServerではこれらの処理を自動で行うか、推奨情報のみを表示させて操作は管理者が手動で行うかを選択できます。
ライブマイグレーションによる負荷の平準化を行うためには、クラスタ内の各ホストおよび仮想マシンがライブマイグレーションの要件を満たしている必要があります。基本的には以下のような点を前提条件として考慮してください。
- 仮想マシンのデータ格納先が共有ストレージ上である
- 仮想マシンがローカルハードウェアに接続していない
- 物理マシンのCPU命令セット(CPUベンダーや世代)に互換性がある
エディションごとのクラスタ機能比較
これらのクラスタ機能を利用可能なVMware vSphere 4.1とCitrix XenServer 5.6のエディションを表にまとめると、以下のとおりです。
VMware vSphereとCitrix XenServer、いずれもクラスタ機能は有償版エディションのみの機能で、高可用性クラスタは比較的下位のエディションから搭載されていますが、負荷分散クラスタについては上位エディションにのみ用意されています。
仮想化ソフトウェアの高可用性クラスタによってフェイルオーバーする場合、フェイルオーバー先ホストの仮想マシン許容量は考慮されるものの、ホスト間の負荷分散(平準化)までは考慮されないため、負荷分散クラスタと組み合わせるとより有効です。上位エディションのソフトウェアを導入している場合には両方のクラスタ機能を利用できるハードウェア構成にすると良いでしょう。