Hitachi

高信頼化システム監視機能 HAモニタ Linux(R)(x86)編


2.3.4 系障害の検出

系間の監視,リセットパスや監視パスの監視などについて説明します。

〈この項の構成〉

(1) 系間の監視

実行系と待機系のHAモニタは,互いに一定時間ごとに報告するaliveメッセージを確認し合う方法で,系を監視します。ここでは,aliveメッセージによる系間の監視について説明します。

(a) aliveメッセージによる系障害の検出

HAモニタは,aliveメッセージの途絶によって系障害を検出します。そのため,aliveメッセージを最後に受信してから系障害と判断するまでの時間(系障害監視時間)を,HAモニタの環境設定のpatrolオペランドに指定しておきます。なお,aliveメッセージの送信間隔は,HAモニタの環境設定のalive_intervalオペランドで指定できます。系障害監視時間を短く設定する場合は,aliveメッセージの送信間隔の設定をデフォルトから変更することを強く推奨します。

aliveメッセージの送信は,他系のHAモニタと連絡が取れ,系切り替えができる状態になった時点で開始されます。aliveメッセージの送受信は,監視パスを介して行われます。指定した系障害監視時間を超えても他系からaliveメッセージが送信されなかった場合,HAモニタは他系に系障害が発生したと判断します。

実行系と待機系のHAモニタは,デフォルトでは,互いに1秒間隔でaliveメッセージを確認し合っています。HAモニタの環境設定のpatrol_100msオペランドを指定すると,aliveメッセージの確認間隔を100ミリ秒に変更できます。系障害監視時間を短く設定する場合は,100ミリ秒間隔でaliveメッセージを確認することを推奨します。

(b) aliveメッセージの通信方式

HAモニタは,ユニキャストでaliveメッセージを送受信します。ユニキャストでは,監視パス当たり接続ホスト台数分のaliveメッセージを送受信します。

ただし,HAモニタ Extensionを使用して系の最大数を33以上に設定する場合,HAモニタは,マルチキャストでaliveメッセージを送受信します。マルチキャストでは,監視パス当たり一つのaliveメッセージを送受信します。送受信するメッセージの量および送受信に掛かる処理量を削減できるため,マシンのCPU利用率の上昇が抑えられ,監視パスに使用するLANへの負荷を軽減できます。系の最大数の変更については,「3.7.2 系の最大数の変更」を参照してください。

(2) リセットパスのヘルスチェック

系障害時に系リセットができるかどうかを判断するために,HAモニタでは接続するすべての他系の障害管理プロセサの状態をヘルスチェックしています。ヘルスチェックは,自系と接続した他系が実行サーバと待機サーバの起動完了によって系切り替えができる状態になった時点で開始します。それ以降は,2分ごとにチェックします。この間隔はHAモニタの環境設定のresetpatrolオペランドで設定できます。

RV3000で管理サーバを使用する場合は,管理サーバの冗長性を確認します。主系管理サーバまたは待機系管理サーバのどちらかに障害などが発生し,管理サーバの冗長性が確保されていない場合は,メッセージKAMN655-Wを出力します。このメッセージは,冗長性が確保されていないことを検知した最初の1回だけ出力されます。管理サーバの冗長性が確保されると,メッセージKAMN656-Iを出力します。

リセットパスが障害から回復した場合で,管理サーバの冗長性が確保されていないときは,メッセージKAMN646-IおよびメッセージKAMN655-Wが出力されます。

ヘルスチェックは実行系と待機系の両方から実行します。

注※

次のどちらかの場合は,系間が接続された時点でヘルスチェックを開始します。系間が接続されている間は,ヘルスチェックを続けます。

  • マルチスタンバイ機能を使用している場合

  • HAモニタの環境設定のreset_typeオペランドでhostを指定している場合

障害管理プロセサまたはリセットパスの障害を検出すると,HAモニタは次のような障害検出のメッセージを出力し,該当する系に対するリセットパスのヘルスチェックを中断します。

メッセージが出力された場合の処置は,マニュアル高信頼化システム監視機能 HAモニタ メッセージを参照してください。また,リセットパス状態表示コマンド(monrpコマンド)で障害管理プロセサの状態を確認できます。

コマンドの詳細については,「9. コマンド」を参照してください。なお,障害からの回復後,リセットパス状態表示コマンド(monrpコマンド)を使用することで,中断していたヘルスチェックを再開できます。

HAモニタの環境設定のresetpath_retryオペランドにuseを指定している場合,またはオペランドの指定を省略している場合は,HAモニタが一定間隔で自動的に状態を確認します。リセットパスが復旧すれば,KAMN646-Iメッセージを出力して中断していたヘルスチェックを再開します。

メモ

マシンの機種がBladeSymphonyの場合,HAモニタの環境設定のresetpatrol_modeオペランドを指定する必要があります。詳細については,「8.3.1 HAモニタの環境設定(sysdef)」を参照してください。

(3) 監視パスのヘルスチェック

HAモニタでは,監視パスの状態を一定間隔でヘルスチェックできます。ヘルスチェックの間隔は,HAモニタの環境設定のpathpatrolオペランドで指定します。監視パスに障害が発生すると,HAモニタは通信障害のメッセージを出力します。

監視パスの状態は,HAモニタを起動してから,環境設定でヘルスチェック間隔に指定した時間が経過した時点でチェックします。それ以降は,指定したヘルスチェック間隔でチェックします。ヘルスチェックは,系に接続しているすべての監視パスについて実行し,HAモニタの停止時に終了します。また,自系と他系に監視パスが接続されていて,HAモニタが稼働している場合にだけチェックします。

ユーザは監視パス状態表示コマンド(monpathコマンド)で監視パスの状態を表示できます。

監視パスの障害を検出した場合,HAモニタの環境設定のpathpatrol_retryオペランドを指定していれば,監視パスの状態を再チェックできます。再チェックしても障害を検出した場合,HAモニタは次に示すメッセージのどれかを出力します。

メッセージが出力された場合の処置は,マニュアル高信頼化システム監視機能 HAモニタ メッセージで示す説明に従ってください。なお,再チェック中は,監視パス状態表示コマンド(monpathコマンド)を実行してもメッセージKAMN393-Eが出力され,監視パスの状態は確認できません。

(4) 問い合わせ応答メッセージのリトライ

HAモニタでは,aliveメッセージ以外にも,監視パスを使用して他系とメッセージをやり取りしています。例えば,サーバの起動時に,同じサーバが他系ですでに起動していないかどうかを確認するための問い合わせ応答メッセージなども,監視パスを使用して送受信しています。

これらの問い合わせ応答メッセージの送信に失敗した場合は,HAモニタが3秒間隔でメッセージ送信をリトライし,送信が成功するまでリトライを続けます。HAモニタの環境設定のmessage_retryオペランドを指定しておくと,ユーザがメッセージ送信のリトライ間隔を指定できます。

aliveメッセージの送信が開始される前など,系間の監視中でない場合,問い合わせ応答メッセージの送信が60秒を超えても成功しないと,HAモニタは系障害が発生したと判断します。

注※

HAモニタの環境設定のmessage_retryオペランドの指定が60秒以上の場合は,その時間を超えても送信が成功しないときにHAモニタは系障害が発生したと判断します。

(5) 自系のスローダウン認識

システムの高負荷などの理由から,HAモニタの環境設定のpatrolオペランドに指定した系障害監視時間以上動作できなかった場合(系のスローダウン)のHAモニタの動作について説明します。

実行系にスローダウンが発生した場合,HAモニタは,待機系に系切り替えをします。

一方,待機系にスローダウンが発生した場合は,実行系のHAモニタは待機系の系障害が発生したと判断します。この場合,待機系がスローダウンから回復すると,待機系のHAモニタは待機系に系障害が発生したとは判断していないため,系間で状態が不一致となります。

このため,待機系のHAモニタは,待機系がスローダウンから回復した時点で系間を再接続し,待機サーバを再起動します。これによって,自動的に系間の状態を一致させ,実行系と待機系の両方の系の監視を再開させます。