すべてのプロダクト
Search
ドキュメントセンター

:Server Load Balancer のヘルスチェックを有効にした後、ECS インスタンスが異常であると宣言された場合はどうすればよいですか。

最終更新日:Nov 10, 2025

Server Load Balancer (SLB) のヘルスチェックを有効にした後、1つのバックエンドECSインスタンスが異常と宣言されると、リクエストは他の通常のECSインスタンスに転送されます。 障害のあるECSインスタンスが正常になると、SLBはリクエストをECSインスタンスに再度転送します。

For layer-7 SLB service, when an ECS instance is declared as unhealthy, you can troubleshoot problems from the following aspects:

  • ECSインスタンスを介してサービスに直接アクセスできることを確認してください。
  • リスナーで設定したバックエンドポートがバックエンドサーバーで開かれていることを確認します。
  • バックエンド ECS インスタンスがファイアウォールまたはその他のセキュリティ保護ソフトウェアをインストールしているかどうかを確認してください。 このタイプのソフトウェアは、SLBサービスのローカルIPアドレスをブロックし、したがって、SLBサービスとバックエンドサーバとの間の通信を無効にすることができる。
  • Check whether the SLB health check parameters are correctly set. デフォルトのヘルスチェック設定を使用することを推奨します。
  • ヘルスチェックには静的ページを使用することを推奨します。 使用する静的ページがバックエンドECSインスタンスのデフォルトのヘルスチェックページでない場合、ヘルスチェック設定でこのページをヘルスチェックページとして設定する必要があります。 We recommend that you use a simple HTML page for health checks and use the page only for checking health check responses. PHP などの動的スクリプト言語の使用は推奨しません。
  • バックエンドECSインスタンスの負荷が高く、ECSインスタンスの応答速度が遅くなる可能性があるかどうかを確認します。

また、レイヤ7 SLBサービスは内部ネットワークを介してバックエンドECSインスタンスと通信するため、ECSインスタンスは内部ネットワークまたは全ネットワークポートをリッスンする必要があります。 次の方法でECSインスタンスを確認できます。

  1. リスニング機能が正常かどうか確認してください。

    SLBのフロントエンドポートとECSインスタンスのバックエンドポートが両方とも80であると仮定します。 ECS内部IPアドレスは10.11.192.1です。 サーバーで次のコマンドを実行します。 10.1.1.192.1: 80 の監視情報、または 0.0.0.0: 80 の監視情報が表示されていれば、ポートのリスニング機能は正常です。

    • Windowsサーバー: netstat -ano | findstr :80
    • Linux server: netstat -anp | grep :80
  2. サーバーの内部ネットワークファイアウォールがポート80を許可しているかどうかを確認します。 You can disable the firewall temporarily to do a test. 次のコマンドを実行してファイアウォールを無効にします。
    • Windows の場合:firewall.cpl
    • Linux の場合:/etc/init.d/iptables stop
  3. バックエンドポートが正常かどうか確認してください。
    • For layer-4 SLB service, you can perform a telnet test. 応答を受信した場合、バックエンドポートは正常です。 例: telnet 10.11.192.1 80 を使ってテストします。
    • レイヤー7 SLBサービスの場合、受信したHTTPステータスコードをチェックすることで、ポートが正常かどうかを判断できます。 HTTPステータスコードは、200などの正常な状態を示すステータスコードである必要があります。 設定方法は、以下のとおりです。
      • Windows: ECSインスタンスの内部IPアドレスにアクセスします。 In this example, access http://10.11.192.1.
      • Linux: curl -Iコマンドを実行し、ステータスがHTTP/1.1 200 OKかどうかを確認します。 この例では、curl -I 10.11.192.1を実行します。