Sun Cluster Data Service for Apache ガイド (Solaris OS 版)

Sun Cluster HA for Apache 障害モニター

Sun Cluster HA for Apache の検証機能は、Apache サーバーの健全性を照会する要求をサーバーに送信します。検証機能が実際に Apache サーバーを照会する前に、ネットワークリソースがこの Apache リソース用に構成されていることの確認が行われます。ネットワークリソースが構成されていない場合は、エラーメッセージ (No network resources found for resource.) が記録され、検証はエラー終了します。

検証機能は、次のことを行います。

  1. Probe_timeout リソースプロパティで設定されたタイムアウト値を使用し、Apache サーバーを正常に検証するための試行時間を制限します。

  2. 非セキュア Webserver については、Apache サーバーに接続し、HTTP 要求を送信して応答を受け取ることで HTTP 1.0 HEAD 検査を実行します。検証機能は、各 IP アドレスとポートの組み合わせで Apache サーバーに順番に接続します。

    この照会の結果は、異常か正常のどちらかになります。検証機能が Apache サーバーからの応答を正常に受信した場合、検証機能は無限ループに戻り、検証と休止の次のサイクルを開始します。

    照会は、ネットワークトラフィックの混雑、過剰なシステム負荷、不適切な構成など、さまざまな理由によって失敗します。構成の不備は、検証中のすべての IP アドレスとポートのペアで待機するように Apache サーバーを構成しなかった場合に発生します。Apache サーバーは、このリソースに指定した各 IP アドレスに対し、それぞれポートを提供する必要があります。Probe_timeout で指定した制限内 (前の手順 1 で指定) に照会に対する応答を受信しない場合は、検証機能は、Apache データサービスの一部で異常が発生したと判断し、履歴に異常を記録します。Apache の検証異常は、致命的な異常、または一部の異常になります。

    致命的な異常とみなされる検証異常は、以下のとおりです。

    • サーバーへの接続に失敗した場合。次のエラーメッセージが表示されます。%s はホスト名、%d はポート番号です。


      Failed to connect to %s port %d %s
    • サーバーに接続しようとしてタイムアウト (Probe_timeout リソースプロパティのタイムアウト値を超過) した場合。

    • 検証文字列をサーバーに送信することに失敗した場合。次のエラーメッセージが表示されます。最初の %s はホスト名、%d はポート番号です。最後の %s はエラーの詳細です。


      Failed to communicate with server %s port %d: %s

    モニターは Retry_interval リソースプロパティで指定した期間内に、部分的な異常が 2 つ累積した場合、これらを 1 つの致命的な異常としてカウントします。

    部分的に異常とみなされる検証の障害は次のとおりです。

    • 検証機能による照会に対し、サーバーからの応答を読み取ろうとしてタイムアウト (Probe_timeout リソースプロパティのタイムアウト値を超過) した場合。

    • その他の理由によってサーバーからデータを読み取ることに失敗した場合。次のエラーメッセージが表示されます。最初の %s はホスト名、%d はポート番号です。最後の %s はエラーの詳細です。


      Failed to communicate with server %s port %d: %s
  3. Monitor_Uri_List 拡張プロパティで URI を構成している場合、検証機能は Sun Cluster HA for Apache サーバーに接続し、Monitor_Uri_List 内の各 URI に対して、HTTP 要求を送信して応答を受け取ることで HTTP 1.1 GET 検査を実行します。HTTP サーバーのリターンコードが 500 (Internal Server Error) となるか接続に失敗した場合、検証は対応処置を実行します。

    HTTP 要求の結果は、失敗または成功のどちらかです。すべての要求で Sun Cluster HA for Apache サーバーからの応答を正常に受信した場合、検証機能はサイクルに戻り、検証と休止の次のサイクルを開始します。

    大量のネットワークトラフィック、大きなシステム負荷、不正な構成は、HTTP GET 検証の失敗の原因になります。Monitor_Uri_List の URI に無効なポートまたはホスト名が含まれていた場合、Monitor_Uri_List プロパティの設定ミスになります。たとえば、Web サーバーのインスタンスが論理ホストの schost-1 で待機しており、URI は http://schost-2/servlet/monitor として指定されている場合、検証機能は /servlet/monitor を要求するために schost-2 に問い合わせようとします。

  4. セキュア Webserver については、各 IP アドレスとポートの組み合わせに接続します。この接続試行に成功した場合、検証機能は接続を切断して、成功状態を返します。これ以上の検査は行われません。

  5. 異常履歴に基づいて、データサービスのローカルでの再起動、またはデータサービスのフェイルオーバーのいずれかを実行します。このアクションの詳細については、『 Sun Cluster データサービスの計画と管理 (Solaris OS 版)』の「Sun Cluster データサービスの障害モニター」を参照してください。