Application Load Balancer から 503 (サービス利用不可) エラーをトラブルシューティング方法を教えてください。
最終更新日: 2022 年 5 月 13 日
Application Load Balancer (ALB) を使用していると、HTTP 503 (サービス利用不可) エラーが発生します。このエラーの解決方法を教えてください。
簡単な説明
Application Load Balancer が 503 エラーを生成しているかどうかを確認するには、次のいずれかを実行します。
- CloudWatch メトリクスにアクセスし、HTTPCode_ELB_503_Count というラベルの付いたメトリクスを見つけます。
- この CURL コマンドを実行します。レスポンスに「503 Service Temporarily Unavailable (503 サービスは一時的に利用できません)」が含まれている場合、エラーは Application Load Balancer から発生しています。
必ず、MY_URL を Application Load Balancer へのアクセスに使用する URL に置き換えてください。
$ curl -IkL MY_URL
解決方法
ターゲットグループにターゲットが登録されていることを確認する
EC2 コンソールを使用して検証する
- Amazon EC2 コンソールにアクセスします。
- ナビゲーションペインの [Load Balancing] (ロードバランシング) の下で、[Target Groups] (ターゲットグループ) を選択します。
- ターゲットグループの名前を選択して、その詳細ページを開きます。
- [Targets] (ターゲット) タブを選択します。
- ターゲットがリストされているかどうかを確認します。リストされていれば、登録されています。
AWS CLI を使用して確認する
注: AWS CLI コマンドの実行時にエラーが発生した場合は、AWS CLI の最新バージョンを使用していることを確認してください。
AWS CLI を使用してターゲットを確認するには、describe-target-health コマンドを使用します。
ターゲットを登録する
ターゲットグループが Auto Scaling グループに関連付けられていることを確認します (Auto Scaling を使用している場合)
ターゲットグループが Auto Scaling グループの一部である場合は、2 つが正しく関連付けられていることを確認します。そうでない場合は、グループをアタッチします。
次のように、EC2 コンソールを使用して確認します。
- Amazon EC2 コンソールを開きます。
- ナビゲーションペインの [] (Auto Scaling) で、[Auto Scaling Groups] (Auto Scaling グループ) を選択します。
- 検証する Auto Scaling グループを選択します。
- [Load balancing] (ロードバランシング) で、Application Load Balancer のターゲットグループが Auto Scaling グループに関連付けられていることを確認します。
AWS CLI を使用して確認する
describe-auto-scaling コマンドを実行します。MY-ASG をお客様の Auto Scaling グループの名前に置き換えます。AWS-REGION をお使いの特定の AWS リージョンに置き換えます。
$ aws autoscaling describe-auto-scaling-groups --auto-scaling-group-name MY-ASG --region AWS-REGION
コマンド出力で、ターゲットグループがリストの TargetGroupARNs に記載されていることを確認します。
ターゲットグループをアタッチする
ターゲットグループが Auto Scaling グループにアタッチされていない場合は、コンソールまたは CLI を使用してグループを関連付けます。
ターゲットの正常性を確認する
ターゲットが登録されていることを確認したら、ターゲットが正常な状態であることを確認します。詳細については、「
Application Load Balancer をトラブルシューティングし、ヘルスチェックの失敗を修正するにはどうすればよいですか?」を参照してください。