Hitachi

Cosminexus V11 アプリケーションサーバ 機能解説 保守/移行編


2.5.8 N:1リカバリシステムでトラブルが発生した場合

N:1リカバリシステムでトラブルが発生した場合のリカバリ手順について,OSごとに説明します。

〈この項の構成〉

(1) Windowsの場合

N:1リカバリシステムで,待機系のホスト(リカバリ専用サーバ)でのリカバリ処理がデータベースサーバの障害(サーバダウンやデッドロックなど)によってタイムアウトした場合,ログを取得して,手動でリカバリを実行してください。リカバリ手順を次に示します。

  1. N:1系切り替えシステムのログを取得します。

    N:1リカバリシステムでトラブルが発生した場合,クラスタログを取得する必要があります。取得するログは,1:1系切り替えシステムでトラブルが発生した場合に取得するログと同じです。取得するログの詳細については,「2.5.7 1:1系切り替えシステムでトラブルが発生した場合」を参照してください。

  2. N:1系切り替えシステムを手動でリカバリします。

    次のどちらかの方法で,N:1リカバリシステムを手動でリカバリしてください。

    • 待機系のホストの対象リソースをオンラインにする

    • J2EEサーバのトランザクション回復コマンド(cjstartrecover)を実行する

(a) 待機系のホストの対象リソースをオンラインにしてリカバリを実行する

待機系のホストの対象リソースをオンラインにしてリカバリを実行する手順について説明します。

  1. データベースを再起動するなどして,タイムアウトした原因を解消します。

  2. 待機系のホストの対象リソースをオンラインにします。

(b) J2EEサーバのトランザクション回復コマンド(cjstartrecover)を実行してリカバリを実行する

J2EEサーバのトランザクション回復コマンド(cjstartrecover)を実行してリカバリを実行する手順について説明します。

  1. データベースを再起動するなどして,タイムアウトした原因を解消します。

  2. 待機系のホストの汎用スクリプトの「Dir_Name」に指定したパスにフォルダを作成します。

    すでにフォルダが存在する場合は,削除してからフォルダを作成してください。

  3. 待機系のホストの汎用スクリプトがオンラインのときに,クラスタのログを参考に,cjstartrecoverを実行します。

  4. リカバリに成功したら,「Dir_Name」に指定したパスに作成したフォルダを削除します。

cjstartrecoverコマンドの詳細については,マニュアル「アプリケーションサーバ リファレンス コマンド編」の「cjstartrecover(J2EEサーバのトランザクション回復)」を参照してください。

(2) UNIXの場合

N:1リカバリシステムで,待機系のホスト(リカバリ専用サーバ)でのリカバリ処理がデータベースサーバの障害(サーバダウンやデッドロックなど)によってタイムアウトした場合,次の手順に従って手動でリカバリを実行します。

  1. データベースを再起動するなどして,タイムアウトした原因を解消します。

  2. 待機系のホストで,ダウンした実行系のホストに対応するmonbeginを実行します。

    # monbegin サーバの識別名

    下線部分には,serversファイルのオペランド「alias」に指定されている実行系のサーバの識別名を指定します。

  3. 待機系のホストで,ダウンした実行系のホストに対応するmonactを実行します。

    # monact サーバの識別名

    下線部分には,serversファイルのオペランド「alias」に指定されている実行系のサーバの識別名を指定します。

    これによって,待機系のホスト(リカバリ専用サーバ)で,ダウンした実行系のホストで未決着だったトランザクションのリカバリ処理が実行されます。

    参考

    serversファイルの定義など,HAモニタでのサーバ対応の環境設定については,マニュアル「アプリケーションサーバ 機能解説 運用/監視/連携編」の「19.5.4 HAモニタの環境設定」を参照してください。