7.4.2 サーバの再起動失敗に対処する

サーバ障害発生時にサーバを自動的に再起動する設定にしている場合で,サーバが自動的に起動しなかったときの対処について説明します。サーバの運用方法によって,対処をするタイミングが異なります。

サーバモードのサーバの場合
  • サーバの再起動をリトライ分繰り返したあとに再起動限界を検出したとき
モニタモードのサーバの場合
  • サーバの再起動に失敗したとき
  • プログラムの再起動に失敗したとき
<この項の構成>
(1) サーバモードのサーバの場合
(2) モニタモードのサーバの場合

(1) サーバモードのサーバの場合

ここでは,次の両方に当てはまる場合の対処方法について説明します。サーバ対応の環境設定のswitchtypeオペランドに"switch"または"restart"を指定している場合はHAモニタが系切り替えをするため,オペレータの操作は不要です。

上記に当てはまる場合,実行系(障害が発生した系)の実行サーバは停止し,待機系の待機サーバは実行サーバの起動待ち状態になっています。

対処

待機サーバが実行サーバの起動待ち状態になっているため,業務を再開するために,起動待ち状態の待機サーバを実行サーバとして起動します。

  1. 実行系の状態を確認する。
    次のことを確認します。
    • 実行サーバが停止していること
    • サーバが使用する共有リソースが切り離されていること
  2. 待機系の待機サーバを,実行サーバとして起動する。
    待ち状態のサーバ起動コマンド(monactコマンド)を実行して,実行サーバの起動待ち状態になっている待機サーバを,実行サーバとして起動します。
  3. 実行サーバが起動したことを確認する。
    メッセージKAMN251-Iが出力されることを確認します。
  4. 実行系(障害が発生した系)で,サーバの障害を取り除く。
  5. 実行系で,待機サーバを起動する。
    プログラムが提供する起動コマンドを実行します。

対処後の確認方法

  1. 系切り替えができる状態になったことを確認する。
    次のどちらかの方法で確認します。
    • メッセージKAMN252-Iが出力された。
    • サーバ・系の状態表示コマンド(monshowコマンド)を実行し,実行サーバの状態が"ONL",待機サーバの状態が"SBY"と表示された。

(2) モニタモードのサーバの場合

モニタモードのサーバの場合に再起動に失敗したときの対処方法を,それぞれ説明します。

(a) サーバの再起動に失敗したとき

サーバをモニタモードで運用する場合,サーバの再起動失敗には,次の原因が考えられます。

ここでは,次に当てはまる場合の,対処方法について説明します。異なるメッセージが出力されている場合は,異なる原因が考えられます。出力されているメッセージを基に対処してください。

なお,サーバの再起動時に,サーバ対応の環境設定のnameオペランド,またはactcommandオペランドに指定したサーバの起動コマンドの戻り値が0以外だった場合,サーバ対応の環境設定のtermcommandオペランドに指定したサーバの停止コマンドは実行しないで処理を中断します。

対処

サーバの起動・停止コマンド,またはサーバ対応の環境設定を修正して,サーバを再起動させます。

  1. 障害の原因を取り除く。
    メッセージKAMN273-Eに表示されるエラーコードに基づいて,原因を取り除きます。エラーコードの詳細については,「表7-3 メッセージKAMN273-Eに表示されるエラーコード一覧」を参照してください。
  2. 待機系で,実行サーバを起動する。
    次のどちらかの方法があります。
    • 実行系(障害が発生した系)でモニタモードのサーバ停止コマンド(monendコマンド)を実行していったん実行サーバを停止したあとに,待機系でモニタモードのサーバ起動コマンド(monbeginコマンド)を実行して,実行サーバを起動します。
    • 待機系でモニタモードのサーバ起動コマンド(monbeginコマンド)を実行して待機サーバを起動したあと,実行系で計画系切り替えコマンド(monswapコマンド)を実行して待機系に計画系切り替えをします。
  3. 実行系で,待機サーバを起動する。
    モニタモードのサーバ起動コマンド(monbeginコマンド)を実行して待機サーバを起動します。

対処後の確認方法

  1. 系切り替えができる状態になったことを確認する。
    次のどちらかの方法で確認します。
    • メッセージKAMN252-Iが出力された。
    • サーバ・系の状態表示コマンド(monshowコマンド)を実行し,実行サーバの状態が"ONL",待機サーバの状態が"SBY"と表示された。

メッセージKAMN273-Eに表示されるエラーコードの一覧と対処を次の表に示します。

表7-3 メッセージKAMN273-Eに表示されるエラーコード一覧

原因コード詳細コードコードの説明対処
1システムコールのerrnoサーバの起動コマンド実行時にシステムエラーが発生しました。システムコールのエラー要因を取り除いてください。
2コマンド戻り値サーバの起動コマンドが戻り値として0以外を返しました。サーバの起動コマンドの内容を確認し,修正してください。
126nameオペランド,またはactcommandオペランドに指定したファイルに実行権限がありません。サーバの起動コマンドに実行権限を与えてください。
127nameオペランド,またはactcommandオペランドに指定したファイルがありません。サーバ対応の環境設定のnameオペランド,またはactcommandオペランドに指定した値とサーバの起動コマンドの格納場所が一致しているかを確認してください。
3システムコールのerrnoサーバの停止コマンド実行時にシステムエラーが発生しました。システムコールのエラー要因を取り除いてください。
4コマンド戻り値サーバの停止コマンドが戻り値として0以外を返しました。サーバの停止コマンドの内容を確認し,修正してください。
126termcommandオペランドに指定したファイルに実行権限がありません。サーバ対応の環境設定のtermcommandオペランドに指定したサーバの停止コマンドに,実行権限を与えてください。
127termcommandオペランドに指定したファイルがありません。サーバ対応の環境設定のtermcommandオペランドに指定した値とサーバの停止コマンドの格納場所が一致しているかを確認してください。
(b) プログラムの再起動に失敗したとき

モニタモードのプログラム管理機能使用時に,プログラムの再起動コマンドを作成すれば,プログラム単体で再起動できます。

プログラムの再起動失敗には,次の原因が考えられます。

ここでは,次に当てはまる場合の,対処方法について説明します。異なるメッセージが出力されている場合は,異なる原因が考えられます。出力されているメッセージを基に対処してください。

対処

モニタモードのプログラム対応の環境設定を修正してサーバを再起動させます。またはプログラムの再起動コマンドを修正して,プログラムを再起動させます。

  1. 障害の原因を取り除く。
    メッセージKAMN285-Eに表示されるエラーコードに基づいて,原因を取り除きます。エラーコードの詳細については,「表7-4 メッセージKAMN285-Eに表示されるエラーコード一覧」を参照してください。
  2. 実行系で,プログラムを再起動する。
    次のどちらかの方法で再起動します。
    • サーバを再起動させます。モニタモードのサーバ停止コマンド(monendコマンド)を実行していったん実行サーバを停止したあとに,モニタモードのサーバ起動コマンド(monbeginコマンド)を実行して,実行サーバを起動します。
    • 障害が発生したUAPを手動で再起動します。

対処後の確認方法

  1. プログラムが起動完了したことを確認する。
    次のどちらかの方法で確認します。
    • メッセージKAMN284-Iが出力された。
    • サーバと系の状態表示コマンド(monshow -uコマンド)を実行し,プログラムの状態が"ACT"と表示された。

メッセージKAMN285-Eに表示されるエラーコードの一覧と対処を次の表に示します。

表7-4 メッセージKAMN285-Eに表示されるエラーコード一覧

原因コード詳細コードコードの説明対処
11タイムアウト時間内に,プログラムの再起動コマンドが完了しませんでした。プログラムの再起動コマンドが完了しなかった原因を取り除いてください。
2タイムアウト時間内にUAPがhamon_patrolstart関数を発行しませんでした。UAPがhamon_patrolstart関数を発行しなかった原因を取り除いてください。
3タイムアウト時間内にプログラムの再起動コマンドが未完了で,かつUAPがhamon_patrolstart関数を発行しませんでした。プログラムの再起動コマンドが完了しなかった原因,およびUAPがhamon_patrolstart関数を発行しなかった原因を取り除いてください。
2コマンド戻り値プログラムの再起動コマンドが戻り値として0以外を返しました。プログラムの再起動コマンドの内容を確認し,修正してください。
126restartcommandオペランドに指定したファイルに実行権限がありません。モニタモードのプログラム対応の環境設定のrestartcommandオペランドに指定したプログラムの再起動コマンドに,実行権限を与えてください。
127restartcommandオペランドに指定したファイルがありません。モニタモードのプログラム対応の環境設定のrestartcommandオペランドに指定した値とプログラムの再起動コマンドの格納場所が一致しているかを確認してください。
256プログラムの再起動コマンド実行時のシステムエラーが発生しました。システムコールエラーの要因を取り除いてください。