ここでは、クラスタソフトウェア設定の管理に役立つ情報について説明します。
クラスタは、いくつかのクラスタ間通信メカニズムを使用して、障害発生時のデータ整合性とクラスタの正常な動作を保証します。クラスタはこれらのメカニズムを使用して以下のことを行います。
システムがいつクラスタメンバーになるかを制御する
クラスタシステムの状態を判断する
障害が発生したときのクラスタの動作を制御する
ここでは、クラスタの通信メカニズムについて説明します。
共有(quorum)パーティション
各クラスタシステムは、タイムスタンプとシステムのステータスを、 共有ストレージにあるrawパーティションであるプライマリおよびシャドー共有パーティションに 定期的に書き込みます。各メンバは、他のメンバが書き込んだシステムのステータスと タイムスタンプを読み取り、それらが最新状態になっているかどうかを判断します。 メンバは、まずプライマリ共有パーティションから情報を読み取ろうとします。 このパーティションが破損している場合、メンバはシャドー共有パーティションから情報を読み取り、 同時にプライマリパーティションを修復します。データ整合性がチェックサムで維持され、パーティション間の不整合は自動的に訂正されます。
メンバが再起動したにもかかわらず両方の共有パーティションに書き込みを行えない場合、 システムはクラスタに組み込まれません。また、 既存のメンバが両方のパーティションに書き込みを行えなくなると、 シャットダウンして自分自身をクラスタから除外します。
共有パーティションは、ネットワークタイブレイカーが無効になっている2台のメンバ クラスタでのみ通信手段として使用されます。
リモート電源スイッチのモニタリング
リモート電源スイッチが存在する場合、各メンバはリモート電源スイッチ接続の状態を定期的に監視します。メンバはこの情報を使用して、 他のクラスタメンバのステータスを判断します。電源スイッチの通信メカニズムが完全にダウンしたことによって自動的にフェイルオーバーが実行されることはありません。
Ethernetハートビート
メンバは、ポイントツーポイントEthernet回線を使用して相互に接続されています。各メンバは、これらの回線を通じてハートビート(ping)を送信します。 クラスタはこの情報を使用して、メンバのステータスを判断したり、 クラスタの正常な動作を保証します。 ハートビートの通信メカニズムが完全にダウンしたからといって 自動的にフェイルオーバーが実行されることはありません。
メンバは、もう一方のメンバからのタイムスタンプが最新ではないと判断すると、 ハートビートのステータスをチェックします。メンバへのハートビートが動作している場合、 クラスタソフトウェアはこの時点で何も行いません。 ある一定時間が経過してもメンバがタイムスタンプを更新せず、 ハートビートpingに応答しない場合、そのメンバはダウンしているとみなされます。
クラスタは、他のすべての通信メカニズムがダウンしても、1つのクラスタシステムが共有パーティションに書き込みを行える限り動作可能のままになります。
2メンバ構成のなかには、共有パーティションがバックアップとしてしか使用されないものがあるので 注意してください。ネットワークメンバ構成アルゴリズムは、 アクティブなクラスタメンバとアクティブではないメンバを判断するための主要な要素になります。 この構成で自身のタイムスタンプを更新していないメンバは、 メンバがダウンしていることをclumembdがレポートしない限り フェイルオーバーにはなりません。