Sun Cluster 3.1 Data Service for Sun ONE Web Server ガイド

Sun Cluster HA for Sun ONE Web Server 障害モニター

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

検証機能では、次の 2 つの Sun ONE Web Server 構成に対応する必要があります。

Web サーバーがセキュアモードのときに、検証機能が構成ファイルからセキュアポートを取得できない場合は、エラーメッセージ (Unable to parse configuration file) が記録され、検証はエラーとなり終了します。セキュアインスタンスと非セキュアインスタンスの検証の処理は同じです。

検証機能では、Probe_timeout リソースプロパティに設定するタイムアウト値を使用して、Sun ONE Web Server を正常に検証するための試行時間を制限します。このリソースプロパティの詳細については、『Sun Cluster 3.1 データサービスの計画と管理』の「標準プロパティ」を参照してください。

Web サーバーによって使用される一連の IP アドレスは、Sun ONE Web Server リソース上の Network_resources_used リソースプロパティの設定によって決まります。Sun ONE Web Server で使用されるポート番号は、Port_list リソースプロパティの設定によって決まります。障害モニターは、Web サーバーが IP アドレスとポートのすべての組み合わせに対して待機しているとみなします。ポート 80 以外のポート番号で待機するように Web サーバー構成をカスタマイズしている場合は、構成ファイル (magnus.conf) に IP アドレスとポートのすべての組み合わせが指定されていることを確認してください。障害モニターは、すべての組み合わせを検証し、IP アドレスとポートの特定の組み合わせで Web サーバーが待機していない場合、検証は失敗します。

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

  1. 検証機能は、指定した IP アドレスとポートの組み合わせを使用し、Web サーバーに接続します。正しく接続できない場合は、検証機能は致命的な異常が発生したと判断します。その後、検証機能はこの異常を記録し、適切な処理を行います。

  2. 検証機能が正しく接続した場合は、Web サーバーがセキュアモードで実行されているかどうかを調べます。セキュアモードで実行されている場合は、検証機能は Web サーバーとの接続を解除し、サーバーの状態が正常であると判断します。セキュア Sun ONE Web Server については、これ以上のチェックは行われません。

    ただし、Web サーバーが非セキュアモードで実行されている場合は、検証機能は HTTP 1.0 HEAD 要求を Web サーバーに送信し、応答を待ちます。ネットワークトラフィックの混雑、過剰なシステム負荷、不適切な構成など、さまざまな理由によって要求が正しく処理できないことがあります。

    不適切な構成は、検証される IP アドレスとポートのすべての組み合わせに対し、Web サーバーが待機するように構成されていない場合に生じます。Web サーバーは、このリソースに指定した各 IP アドレスに対し、それぞれポートを提供する必要があります。

    また、リソースの作成時に、Network_resources_used および Port_list リソースプロパティを正しく設定しないと、不適切な構成が生じます。

    Probe_timeout リソースプロパティの制限時間内に照会に対する応答を受信しない場合、検証機能は Sun Cluster HA for Sun ONE Web Server で異常が発生したと判断します。この異常は、検証の履歴に記録されます。

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

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


      Failed to connect to %s port %d
    • サーバーに接続しようとしてタイムアウト (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. 検証では、Sun ONE Web Server サーバーに接続し、Monitor_Uri_List 内の各 URI に対して HTTP 要求を送信することにより、HTTP 1.1 GET チェックを行います。HTTP サーバーのリターンコードが 500 (Internal Server Error) となるか接続に失敗した場合は対応処置が実行されます。

    HTTP 要求の結果は、失敗か成功のいずれかです。すべての要求に対して Sun ONE Web Server サーバーから応答が得られた場合 (成功) は、次の検証サイクルが行われます。終了すると、検証は休眠状態になります。

    ネットワークトラフィックが多い場合、システムの負荷が高い場合、または設定ミスがあった場合は、HTTP GET チェックに失敗することがあります。Monitor_Uri_List 内の URI に不正なポートまたはホスト名が含まれていた場合、障害が発生することがあります。たとえば、Web サーバーインスタンスが論理ホスト schost-1 上で待機しているときに、URI が http://schost-2/servlet/monitor と指定されていた場合、検証では schost-2/servlet/monitor が要求されます。

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