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