Hitachi

JP1 Version 12 JP1/Integrated Management 2 - Manager 構築ガイド


8.4.1 クラスタソフトに登録するスクリプトの作成(UNIXの場合)

UNIXのクラスタソフトでは,通常,スクリプトなどによりアプリケーションを制御するツールを作成して,クラスタソフトに登録します。このときのスクリプトには一般的に,起動,停止,動作監視,強制停止の機能が必要です。

ここでは,スクリプト設計に必要なJP1/IM - Managerの情報を次に説明します。この情報を基に,クラスタソフトの仕様に合わせて,JP1/IM - Managerを制御するスクリプトを作成し,クラスタソフトに登録してください。

表8‒4 クラスタ登録でのスクリプト設計のための詳細情報

登録する機能

説明

起動

JP1/IM - Managerを起動します。

  • 使用するコマンド

    「jco_start.cluster 論理ホスト名

  • 起動コマンドの終了タイミング

    起動コマンドは,JP1/IM - Managerが起動するのを待って終了します。ただし,何らかの問題によって,タイムアウト時間(デフォルト300秒)を過ぎても起動処理が完了しない場合は,起動処理の途中でコマンドが終了します。この場合,起動処理は中断せず,起動処理を続けている状態のままコマンドが終了します。

    タイムアウト時間の設定方法については,マニュアル「JP1/Integrated Management 2 - Manager 導入・設計ガイド」の「13.7.11 JP1/IM - Manager の起動・停止のタイムアウト時間の検討(UNIXの場合)」を参照してください。

  • 起動コマンドの結果判定

    JP1/IM - Managerを起動した結果は,後述する動作監視の方法によって判定してください。通常は,クラスタソフトの動作監視によって判定します。なお,起動コマンドの戻り値は,0(正常終了)と1(引数異常)のため,戻り値での結果判定はできません。

停止

JP1/IM - Managerを停止します。

  • 使用するコマンド

    「jco_stop.cluster 論理ホスト名

  • 停止コマンドの終了タイミング

    停止コマンドは,JP1/IM - Managerが停止するのを待って終了します。ただし,何らかの問題によって,タイムアウト時間(デフォルト300秒)を過ぎても停止処理が完了しない場合は,停止処理の途中でコマンドが終了します。この場合,停止処理は中断せず,停止処理を続けている状態のままコマンドが終了します。

    タイムアウト時間の設定方法については,マニュアル「JP1/Integrated Management 2 - Manager 導入・設計ガイド」の「13.7.11 JP1/IM - Manager の起動・停止のタイムアウト時間の検討(UNIXの場合)」を参照してください。

  • 停止コマンドの結果判定

    JP1/IM - Managerを停止した結果は,後述する動作監視の方法によって判定してください。なお,停止コマンドの戻り値は,0(正常終了)と1(引数異常)のため,戻り値での結果判定はできません。

なお,停止コマンドが終了したあと,後述する強制停止コマンドを実行することをお勧めします。これは,何らかの問題がある場合でも確実にプロセスを終了させ,フェールオーバーが失敗することを防ぐためです。

JP1/IM - Managerの動作監視※1

JP1/IM - Managerが正常に動作していることを監視します。

  • 使用するコマンド

    「jco_spmd_status -h 論理ホスト名

正常動作していることは,jco_spmd_statusコマンドの戻り値によって判定します。このコマンドでは,各プロセスが動作しているか,動作していないかで動作状態を判定しています。

動作監視の機能を提供していないクラスタソフトもあります。また,JP1/IM - Managerの障害時にフェールオーバーする必要がない場合,この機能は登録しません。

  • 動作監視の結果判定

    各戻り値の判定方法を次に示します。

    戻り値=0 (すべて動作)

    JP1/IM - Managerは正常に動作しています。

    戻り値=1 (エラー)

    回復不能なエラーが発生しました。異常と判定してください。

    注意

    共有ディスクがオフラインの待機系サーバでjco_spmd_statusコマンドを実行すると,共有ディスクがないため戻り値が1になります。

    戻り値=4 (一部停止)

    JP1/IM - Managerの一部のプロセスが,何らかの問題によって停止しています。異常と判定してください。

    戻り値=8 (すべて停止)

    JP1/IM - Managerのプロセスが何らかの問題によって停止しています。異常と判定してください。

    戻り値=12 (リトライ可能エラー)

    jco_spmd_statusコマンドによる動作状態の確認中に,リトライによって復旧可能なエラーが発生しました。一定回数を限度に,動作状態の確認をリトライしてください。

IMデータベースの稼働状態の確認※2

IMデータベースが正常に稼働しているかどうかを確認します。

  • 使用するコマンド

    「jimdbstatus -h 論理ホスト名

稼働状態は,jimdbstatusコマンドの戻り値によって判定します。

  • 稼働状態の結果判定

    各戻り値の判定方法を次に示します。

    戻り値=0:稼働中

    戻り値=1:jimdbstatusコマンドが異常終了

    戻り値=4:起動・停止処理中

    戻り値=8:停止中(IMデータベースが再起動中断状態であり,不安定な状態)

    戻り値=12:停止中(正常に停止された状態)

    戻り値=20:組み込みHiRDBが未セットアップの状態

    戻り値1,4がリトライ対象の値となります。また,戻り値8以降はエラーで,フェールオーバー対象となります。

強制停止

JP1/IM - Managerを強制的に停止し,使用中のリソースを解放します。

  • 使用するコマンド

    「jco_killall.cluster 論理ホスト名

jco_killall.clusterコマンドを実行すると,JP1/IM - Managerの終了処理を一切行わずに,各プロセスを強制的に停止します。

注意

強制停止をする前に,停止コマンドによってJP1/IM - Managerを停止してください。

注※1

動作確認に関するJP1の動作について,ここで説明しているUNIXの場合と,Windowsの場合は,使用するコマンドは同じですが動作は異なりますので注意してください。

Windowsの場合は,Windowsのサービス制御との関連によって,UNIXの場合とは動作が異なります。Windowsでは,プロセスの一部が停止すると,JP1のプロセス管理が自動的にすべての各プロセスを停止して,サービスを停止状態にします。サービスの停止によって異常と判定するか,jco_spmd_statusコマンドなどの戻り値が8になるのを待ってから異常と判定してください。

注※2

IMデータベースを使用している場合に実行します。

メモ

JP1の再起動について

クラスタ運用のJP1の障害を検知した場合に,待機系サーバにフェールオーバーする前に,同じサーバでJP1を再起動して回復を試みる場合があります。

この場合は,JP1のプロセス管理による再起動を使用しないでください。

クラスタソフトはJP1の障害検知後に再起動を試みるため,障害の内容によってはJP1の再起動機能が影響を受け,正常に動作できない可能性があります。より確実に再起動を行うために,クラスタソフトからの制御でJP1を再起動してください。