Classic Load Balancer の使用中に返される 503 エラーをトラブルシューティングするにはどうしたらよいですか?

所要時間1分
0

Classic Load Balancer のアクセスログ、CloudWatch メトリクス、またはブラウザまたはクライアントでロードバランサーの DNS 名を入力したときに、HTTP 503 エラーが表示されます。

簡単な説明

Classic Load Balancer が応答するように設定されているすべてのアベイラビリティーゾーンにバックエンドインスタンスを登録したことを確認してください。登録されたバックエンドインスタンスがヘルスチェックに失敗していないこと、およびアプリケーションが必要とする負荷を処理するために適切なサイズになっていることを確認します。

解決策

ロードバランサーの背後にある正常なバックエンドインスタンスの数を確認するには、CloudWatch の HealthyHostCount と UnhealthyHostCount のメトリクスを確認します。CloudWatch メトリクスが正常なホストがないことを示す場合は、以下を確認して問題をトラブルシューティングできます。

バックエンドインスタンスがヘルスチェックに応答できることを確認する

バックエンドインスタンスが実行されているが、インスタンスが正常でないことを UnhealthyHostCount メトリクスが示している場合は、アプリケーションがヘルスチェックリクエストに応答できることを確認します。HTTP/HTTPS ヘルスチェックのために、ロードバランサーがバックエンドから 200 レスポンスコードを受け取ることができることを確認してください。レイヤー 4 ヘルスチェックでは、インスタンスが TCP ハンドシェイクを正常に完了すると、ロードバランサーはインスタンスを正常とマークします。手順については、「Troubleshoot a Classic Load Balancer: Health checks」を参照してください。

ロードバランサーとバックエンドインスタンスが負荷を処理できることを確認する

ロードバランサーとバックエンドインスタンスをチェックして、CPU の使用状況、メモリ、ディスク、およびアプリケーションに必要な接続数を処理できることを確認します。

たとえば、SpillOverCount と SurgeQueueLength の CloudWatch メトリクスを確認します。SurgeQueueLength がキューに入れられたリクエストの最大数である 1,024 もしくはそれに近い場合、または SpillOverCount が 0 以外の数値の場合、バックエンドの処理速度がリクエストに追いつかないか、リクエストをまったく処理できないことを示します。

また、バックエンドインスタンスの CPUUtilization CloudWatch メトリクスも確認します。CPU 使用率が 100% に急上昇している、または長期間にわたって一貫して高くなっている場合は、バックエンドインスタンスを追加するか、現在のインスタンスのサイズをより大きいサイズに変更することを検討してください。メモリやディスク使用量など、その他の値を確認する手順については、インスタンスベンダーのドキュメントを参照してください。

関連情報

Monitor your Classic Load Balancer

Troubleshoot a Classic Load Balancer: HTTP errors

コメントはありません

関連するコンテンツ