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 プロパティを正しく構成しないと、Monitor_Uri_List の URI が不正なポートまたはホスト名を含むため失敗の原因になります。 たとえば、Web サーバーのインスタンスが論理ホストの schost-1 で待機しており、URI は http://schost-2/servlet/monitor として指定されている場合、検証機能は /servlet/monitor を要求するために schost-2 に問い合わせようとします。

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

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