Classic Load Balancing を使用するように設定された EC2 インスタンスで実行されるウェブサーバーへの接続時に HTTP 5xx エラーが表示されるのはなぜですか?

最終更新日: 2022 年 6 月 17 日

Classic Load Balancing を使用するように設定された EC2 インスタンスで実行されているウェブサーバーに接続しようとすると、HTTP 502、503、または 504 エラーが表示されます。5xx エラーをトラブルシューティングして解決するにはどうすればよいですか?

解決方法

HTTP 502 (Bad Gateway) (HTTP 502 (不正なゲートウェイ))

HTTP 502 エラーは、ウェブサーバーまたは EC2 インスタンスで実行されている関連付けられたバックエンドアプリケーションサーバーのいずれかが Classic Load Balancer (CLB) で解析できないメッセージを返す場合に発生することがあります。

このエラーを解決するには、「Classic Load Balancer 経由でのリクエスト時に HTTP 502 エラーが発生します。これらのエラーをトラブルシューティングするにはどうすればよいですか?」を参照してください。

HTTP 503 (Service Unavailable) (HTTP 503 (サービス利用不可))

HTTP 503 エラーは、次のようないくつかの理由で発生する可能性があります。

  • サージキューがフルになっている。SpilloverCount メトリクスを確認して、インスタンスにリクエストレートを処理するのに十分なキャパシティがあることを確認します。
  • 正常なインスタンスがない。ロードバランサーが応答するすべてのアベイラビリティーゾーンに正常なインスタンスがあることを確認してください。これを行うには、HealthyHostCount メトリクスを確認します。詳細については、「Troubleshoot a Classic Load Balancer: Health checks」(Classic Load Balancer のトラブルシューティング: ヘルスチェック) を参照してください。
  • ロードバランサーが応答するすべての AZ にインスタンスが 1 つも登録されていない。インスタンスが各 AZ に登録されていることを確認できない場合は、クロスゾーンロードバランシングをオンにします。
  • ウェブサーバーインスタンスが登録されている Classic Load Balancer 向けに Connection Draining がオンになっていない。

このエラーを解決するには、「Classic Load Balancer の使用中に返される HTTP 503 エラーをトラブルシューティングするにはどうすればよいですか?」を参照してください。

HTTP 504 (Gateway Timeout) (HTTP 504 (ゲートウェイタイムアウト))

HTTP 504 エラーは、次の理由で発生します。

  • ウェブサーバーインスタンスまたはバックエンドアプリケーションサーバーインスタンスがビジー状態で、設定された Elastic Load Balancing (ELB) のアイドルタイムアウト制限内ではリクエストに応答できない。詳細については、「ELB Classic Load Balancer での長いレイテンシーのトラブルシューティング」を参照してください。
  • ウェブサーバーインスタンスまたはバックエンドアプリケーションサーバーインスタンスが、ロードバランサーが接続を終了する前に、接続を終了する。この結果、接続は時期尚早の状態で終了することになります。
  • リクエストが処理中のときに、ウェブサーバーインスタンスまたはバックエンドアプリケーションサーバーインスタンスがクラッシュした、またはサーバープロセスを再起動した。この結果、サーバーはすべての接続を切断します。
  • Apache ウェブサーバーインスタンスで、AcceptFilter http/https オプションがオンになっている。これは、接続で TCP_DEFER_ACCEPT を実装するように Apache に指示します。
  • Apache ウェブサーバーインスタンスで event MPM がオンになっているが、preforkworker MPM が最適に設定されていない。デフォルトの ELB アイドルタイムアウト制限は 60 秒です。詳細については、「ELB のバックエンドサーバーとして Apache または NGINX を使用するための最適な設定を教えてください」を参照してください。

このエラーの解決方法については、「Classic Load Balancer の使用中に返された HTTP 504 エラーをトラブルシューティングするにはどうすればよいですか?」を参照してください。


Elastic Load Balancing とは?

Tutorial: Create a Classic Load Balancer (チュートリアル: Classic Load Balancer の作成)

Configure health checks for your Classic Load Balancer (Classic Load Balancer のヘルスチェックを設定する)

Monitor your Classic Load Balancer (Classic Load Balancer のモニタリング)

この記事はお役に立ちましたか?


請求に関するサポートまたは技術サポートが必要ですか?