VMware Infrastructure 3の販売開始当時は、VMware HAは物理マシンの故障に対応することをのみを目的として提供されていたが、その後機能が拡張され、仮想マシンの故障を監視する機能も提供されるようになった。
仮想マシン上で動作しているゲストOSが、例えばブルースクリーン状態などでフリーズしてしまった場合を考える。この「ゲストOSが停止してしまっている状態」を検出し、その仮想マシンの再起動を行う機能もVMware HAで提供されている。この機能はVMware ESX 3.5ならびにVirtualCenter 2.5(2007年12月出荷開始)で「試験的サポート」という取り扱いで提供された。その後VMware ESX 3.5 Update 2/VirtualCenter 2.5 Update 2 (2008年7月出荷開始)より「正式サポート」扱いとなったため、以降のバージョンを利用している場合は正規の機能として利用することができる。
仮想マシンの監視にはVMware ESXと、ゲストOS上で動作するサービスVMware Toolsとの間の独自通信機構が利用される。このため、通常のネットワークインフラを介さず、ハイパーバイザとゲストOS間の直接的なやりとりによるハートビート監視を実現している。
仮想マシンの監視の設定もクラスタのVMware HA構成画面にて行うようになっている。チェックボックス「仮想マシンの監視を有効にする」を有効化することで、この機能を利用することができる。なお本機能はクラスタ全体に対して適用され、仮想マシン単位での個別設定を行うことはできない。
仮想マシンの監視機能は、デフォルト設定のままでも多くの環境においてそのまま利用することが可能だが、必要に応じて動作パラメータを変更することもできる。調整可能なパラメータには以下がある。
das.failureInterval
説明: ESXとゲストOSとの間のハートビートが途絶えた際に、仮想マシンの故障と判定するまでの時間。この値で設定した時間値以上連続してハートビートが途絶えたとき、その仮想マシンは故障したと判断される
単位: 秒
デフォルト値: 30
das.maxFailures
説明: 一定の時間枠内において、仮想マシンの故障検出と再起動処理を実行する最大回数。故障と再起動を永遠に繰り返してしまう状態を回避するための機構
単位: 回数
デフォルト値: 3
das.maxFailureWindow
説明: 上述の「一定の時間枠」を決定する時間値。この値で指定されている時間枠の中において、das.maxFailuresにて指定されている回数まで、仮想マシン単位の故障監視と再起動が実行される。値として -1 を設定すると回数上限機構無しで動作するようになる
単位: 秒
デフォルト値: 3600
das.minUptime
説明: VMのパワーオン後、どれくらいの時間が経過するとハートビートが安定すると想定してよいかを指定するための時間値。仮想マシンによっては起動直後の初期構成に時間がかかり、VMware Toolsとのハートビートが安定するまでに時間がかかる場合がある。そのような場合はこのパラメータを調整する
単位: 秒
デフォルト値: 120
上記パラメータの設定は、「詳細オプション」を選択することで調整できる。
今回はVMware HAの構成方法について紹介した。システムの高可用性を実現する上でVMware HAは非常に有効であるが、管理は極めてシンプルで直感的に行えるということがお分かりいただけたかと思う。また仮想マシン単位の故障検出と再起動を実行する機能も提供されており、ハードウェアとソフトウェアの両面から監視と再起動を行う機構を利用することができる。
さて、2009年5月21日に、VMware vSphere 4と呼ばれる新製品が正式に出荷開始となった。VMware vSphere 4はVMware Infrastructure 3の後継製品であり、そのまま正常進化させた製品である。これまでの連載で紹介してきた考え方や設定方法などがそのまま適用できる部分も多いため、ぜひ最新版をダウンロードして新機能を評価していただきたい。
次回より、新連載として、VMware vSphere 4に新たに追加された機能やVMware Infrastructure 3からの変更点などを紹介する予定である。
Copyright © ITmedia, Inc. All Rights Reserved.