Sun Cluster Data Service for Sun Java System Application Server EE (HADB) ガイド (Solaris OS 版)

Sun Cluster HA for Sun Java System Application Server EE (HADB) の障害モニターの調整

Sun Cluster HA for Sun Java System Application Server EE (HADB) の障害モニターは、Sun Java System Application Server EE (HADB) を表すリソースに含まれています。Sun Cluster HA for Sun Java System Application Server EE (HADB) の登録および構成時に、このリソースを作成できます。詳細については、「Sun Cluster HA for Sun Java System Application Server EE (HADB) の登録と構成」を参照してください。

このリソースのシステムプロパティーと拡張プロパティーが、障害モニターの動作を制御します。事前に設定された障害モニターの動作は、これらのプロパティーのデフォルト値に基づいています。現在の動作は、ほとんどの Sun Cluster システムに適しているはずです。したがって、障害モニターを調整するのは、事前に設定されたこの動作を変更する必要がある場合だけに留めるべきです。

詳細については、次の節を参照してください。

検証中の障害モニターによる処理

HADB リソースの開始メソッドは、ローカル Sun Cluster ノードで実行するように構成されている HADB ノードが実行中でない場合に、これを起動します。続いてこのメソッドは HADB データベースを起動しようとします。障害が発生した場合、データベースは後に検証で再起動されます。

障害モニターの検証機能は、HADB データベースと HADB ノードの状態を定期的にチェックします。検証機能は、障害が発生した HADB ノードを再起動します。また検証機能は、起動メソッド時に HADB リソースがデータベースを起動する準備ができていない場合、HADB データベースも起動します。この手順を繰り返すたびに、検証機能は次の手順を実行します。

  1. hadbm status および hadbm status --nodes コマンドを実行することにより、検証機能は HADB データベースと HADB ノードの現在の状態を取得します。

  2. データベースが動作中ではない場合、検証機能は、そのデータベースに対応する HADB stopstate ファイルがローカル Sun Cluster ノード上に存在することをチェックします。hadbm start コマンドは stopstate ファイルを参照して、データベース起動時のノードの役割割り当てを参照します。

  3. stopstate ファイルが存在する場合、HADB リソースはこのファイルを調べ、データベースを起動できるかどうかを判断します。

    • データベースを起動できる場合、検証機能はデータベースを起動し、リソースステータスを Online に設定します。

    • データベースを起動できない場合、 検証機能はリソースステータスを Online Degraded に設定します。

  4. データベースが実行中の場合、検証機能はローカル Sun Cluster ノードで実行するよう構成されている HADB ノードを起動します。

  5. データベースとローカル HADB ノードが実行中である場合、Online Degraded であれば、検証機能はリソース状態を Online に設定します。

  6. HADB リソースグループ内のすべての Sun Cluster ノードで HADB リソースが Stop_timeout 秒よりも長く Online Degraded 状態で動作している場合、HADB リソースは、データベースを起動することができないという結論を出します。Stop_timeout プロパティーの詳細については、method_timeout resource property in 『Sun Cluster データサービスの計画と管理 (Solaris OS 版)』の付録 A「標準プロパティ」を参照してください。

  7. Auto_recovery 拡張プロパティーが TRUE に設定されている場合、HADB リソースはデータベースを修復しようとします。

  8. データベースの修復が試みられると、検証機能は次の手順を実行します。

    • リソースグループのノードリストにある Sun Cluster ノードの 1 つで hadbm clear --fast コマンドを発行します。このコマンドは、データベースの内容を消去し、データベースを再初期化して再起動します。

    • hadbm clear コマンドの実行が成功すると、Auto_recovery_command で指定されたコマンドが hadbm clear コマンドを発行したのと同じ Sun Cluster ノードで 発行されます。このコマンドは通常、asadmin create-session-store コマンドを含むスクリプトです。コマンドは他のアクションを実行することもできます。たとえば、Application Server 管理者にメールを送信することもできます。

    • 両方の手順が成功した場合、検証機能はリソースの状態を Online に設定します。