3.3.5 系のペアダウンによる系切り替え
次の事象発生時に,系切り替え元の系を強制的に停止し,系切り替えを継続できます。これを,系のペアダウンといいます。
-
サーバ障害時
-
系切り替え元で実行するユーザコマンドが失敗した時
-
系切り替え元で実行するサーバの停止コマンドが失敗した時
(1) サーバ障害時に系ごと切り替える系のペアダウン
系切り替えできる状態で実行サーバが障害になったとき,障害が発生した系を強制停止して待機系に切り替えます。
次の場合に,この機能を使用します。
-
障害が発生した系で個々のリソースの切り離し処理をしないで,系の強制停止によって速やかに系切り替えをさせる場合
-
同じグループ内の他のサーバを停止しないで,系の強制停止によって速やかに系切り替えさせる場合
この機能は,次のサーバで使用できます。
-
サーバモードのサーバ
-
モニタモードのサーバ(サーバ対応の環境設定のptrlcmd_exオペランドを指定して,モニタモードのサーバを監視している場合)
ペアダウンの契機となる実行サーバの障害には,サーバ自身が検出した障害およびサーバのスローダウンがあります。また,TP1/Server BaseまたはHiRDBをサーバモードのサーバとして使用する場合,サーバのスローダウンを検出したときだけペアダウンをするオプションも指定できます。
実行系のリセットは,停止するHAモニタからの連絡を,待機系のHAモニタが受けて実行します。このとき,リセット優先系の判断や,リセット発行系の決定には従わないで,即時リセットを実行します。
- 必要な環境設定
-
サーバ対応の環境設定のpairdownオペランドで指定します。
(2) ユーザコマンド失敗時に系ごと切り替える系のペアダウン
サーバ障害による系切り替え時(online -a start),または計画系切り替え時(online -w start)に系切り替え元で実行するユーザコマンドが失敗した場合に,系のペアダウンをすることもできます。
次の要件をすべて満たす場合に,この機能を使用します。
-
ユーザコマンドで,系切り替え元のリソースの切り離しを実行している場合
-
系切り替え元のリソースの切り離しに失敗したあとに,系を強制停止することでリソースを解放して,系切り替えを継続させたい場合
ユーザコマンドの失敗とは,次のような場合です。
-
ユーザコマンドの終了コードが0以外である。
-
ユーザコマンドが実行できない。
-
ユーザコマンドの実行後,リターンしてこない。
ただし,この失敗に対処する場合は,サーバ対応の環境設定のdev_timelimitオペランドまたはdev_offlimitオペランドを指定して処理を打ち切る必要があります。
- 必要な環境設定
-
サーバ対応の環境設定のuoc_pairdownオペランドにuseを指定します。また,サーバ障害による系切り替え時(online -a start),または計画系切り替え時(online -w start)に実行するユーザコマンドは,異常終了時に0以外の終了コードでリターンするように記述してください。
(3) サーバの停止コマンド失敗時に系ごと切り替える系のペアダウン
系切り替え時に実行するサーバの停止コマンドが失敗した場合に,系のペアダウンをすることもできます。
サーバの停止コマンドの実行に失敗したあとに,系を強制停止することでサーバを強制停止させ,系切り替えを継続させたい場合に,この機能を使用します。
サーバの停止コマンドの失敗とは,次のような場合です。
-
サーバの停止コマンドの終了コードが0以外である。
-
サーバの停止コマンドが実行できない。
-
サーバの停止コマンドの実行後,リターンしてこない。
ただし,この失敗に対処する場合は,サーバ対応の環境設定のstop_timeoutオペランドまたはstop_timeout_swオペランドを指定して処理を打ち切る必要があります。
- 必要な環境設定
-
サーバ対応の環境設定のterm_pairdownオペランドにuseを指定します。