稼働する系の総数が三つ以上となる複数スタンバイ構成の場合,監視パス障害などで一つの系が残りの系の系障害を検知すると,次の図の例のように,残りのすべての系をリセットして一つの系に系切り替えをすることがあります。この場合,一定数以上の系が稼働している必要があるシステムでは,業務が停止してしまいます。
図3-10 複数スタンバイ構成で,残りのすべての系をリセットして一つの系に系切り替えをする場合の例
この例は,メモリ容量などの理由によって一つの系で実行サーバを3台以上稼働させられないシステムとしています。このシステムでは,系1で実行サーバが5台稼働しようとすると,システムが動作できないため,業務が停止してしまいます。
HAモニタでは,このような一定数以上の系が稼働している必要があるシステムで系がリセットされるのを抑止し,業務が停止するのを防止できます。システムが業務を継続するために必要な系の数のことを,最少稼働ホスト数と呼びます。ここでは,系のリセット抑止時の動作や環境設定などについて説明します。
次に示す場合別に,系のリセット抑止時のHAモニタの動作について説明します。
ここでは,最少稼働ホスト数が3で,かつ一つの系で稼働できる実行サーバの数が2台までの場合を例に説明します。
一つの系で系障害が発生して系をリセットし,業務が継続する場合の動作について,次の図に示します。
図3-11 一つの系で系障害が発生して系をリセットし,業務が継続する場合の動作
次に,図に示した流れの詳細について説明します。番号は,図中の番号と対応しています。
この例の場合,系切り替え後も最少稼働ホスト数を満たしていて,かつ一つの系で実行サーバが最大で2台しか稼働していないため,業務が継続します。
一つの系で監視パス障害が発生して系のリセットを抑止し,業務が継続する場合の動作について,次の図に示します。
図3-12 一つの系で監視パス障害が発生して系のリセットを抑止し,業務が継続する場合の動作
次に,図に示した流れの詳細について説明します。番号は,図中の番号と対応しています。
この例の場合,系切り替え後も最少稼働ホスト数を満たしていて,かつ一つの系で実行サーバが最大で2台しか稼働していないため,業務が継続します。
三つの系での縮退運用中に系障害が発生してリセットを抑止し,業務が停止する場合の動作について,次の図に示します。
図3-13 三つの系での縮退運用中に系障害が発生してリセットを抑止し,業務が停止する場合の動作
次に,図に示した流れの詳細について説明します。番号は,図中の番号と対応しています。
この例の場合,系3で稼働していた実行サーバがなくなり,最少稼働ホスト数である3を満たさなくなるため,業務が停止します。
なお,他系に系切り替えできる待機サーバの有無によって,待ち状態のサーバ起動コマンド(monactコマンド)の実行などの操作が必要です。詳細については,サーバが停止した場合は「7.2.1 起動する」を,サーバが系切り替え待ち状態(ONL??)になった場合は「7.3.1 待ち状態のサーバを起動して業務を再開する」を参照してください。
系のリセットを抑止できるのは,aliveメッセージの途絶によって検出できる系障害の場合だけです。
他系のHAモニタからペアダウンを通知された場合や,系切り替え時に共有ディスクの切り離しに失敗した場合は,他系からの障害検知通知を待たないで他系をリセットして系切り替えをします。また,ハードウェアから障害通知を受信した場合,他系のOSパニックを検知した場合,およびサーバ障害が発生した場合は,障害検知通知を待たないで系切り替えをします。
次の条件をすべて満たす場合にだけ,系のリセットを抑止できます。
系のリセットを抑止できる例とできない例を,それぞれ次の図に示します。
図3-14 系のリセットを抑止できる例
この例では,系のリセットを抑止するためのすべての条件を満たしています。
図3-15 系のリセットを抑止できない例
この例では,系1~系3上に,系4および系5上のサーバとペアになる待機サーバが存在しません。そのため,系のリセットを抑止するための条件を満たしていません。
系のリセットを抑止するには,HAモニタの環境設定のsuppress_resetオペランドを指定します。