6.14.1 待機サーバの起動時に実行するコマンドの作成
待機サーバの起動時に実行するコマンドを作成することで,待機サーバの起動時に,プロセスの起動や任意の処理を実行できます。
ここでは,待機サーバの起動時に実行するコマンドについて,呼び出されるタイミング,および作成方法を説明します。
(1) 待機サーバの起動時に実行するコマンドが呼び出されるタイミング
作成したコマンドは,HAモニタがスーパユーザの権限で実行します。
コマンドは,次の場合に,共有リソースを切断したあと呼び出されます。
-
モニタモードのサーバの起動コマンド(monbeginコマンド)を実行して,待機サーバを起動する場合
-
待機サーバ障害時に待機サーバを再起動する設定で,待機サーバを再起動する場合
(2) 待機サーバの起動時に実行するコマンドの作成方法
待機サーバの起動時に実行するコマンドを作成して,監視対象のプログラムの起動などを実行するようにしてください。
コマンドの環境変数は,呼び出されたタイミングによって,引き継ぐ環境変数が異なります。タイミングごとの引き継ぐ環境変数を次に示します。
- 待機サーバの起動のタイミングで呼び出された場合
-
モニタモードのサーバの起動コマンド(monbeginコマンド)を実行したユーザの環境変数を引き継ぎます。
- 待機サーバの再起動のタイミングで呼び出された場合
-
HAモニタの起動コマンド(monstartコマンド)を実行したユーザの環境変数を引き継ぎます。
シェルの中でプログラムの起動に必要な動作環境を設定してください。
作成したコマンドは,サーバ対応の環境設定のsby_actcommandオペランドに指定します。HAモニタはサーバ対応の環境設定のsby_actcommandオペランドに指定したコマンドの戻り値を評価します。戻り値ごとのHAモニタの処理を,次に示します。
- 戻り値が0の場合
-
コマンドの処理に成功したとして,待機サーバを起動完了とします。
- 戻り値が0以外の場合
-
コマンドの処理に失敗したとして,待機サーバの起動を中止します。待機サーバを再起動しようとした場合は,待機サーバの再起動に失敗します。再起動に失敗したとき,サーバ対応の環境設定のsby_termcommandオペランドに指定したコマンドを実行します。再起動に失敗したときの対処については,「7.5.2 サーバの再起動失敗に対処する」を参照してください。
コマンドが起動してから終了するまでのタイムアウト時間は,サーバ対応の環境設定のsby_start_timeoutオペランドで指定できます。