Application Load Balancer에서 발생하는 503(서비스를 사용할 수 없음) 오류를 해결하려면 어떻게 해야 합니까?

2분 분량
0

Application Load Balancer(ALB)를 사용할 때 HTTP 503(서비스를 사용할 수 없음) 오류가 발생합니다. 이 오류를 해결하려면 어떻게 해야 합니까?

간략한 설명

Application Load Balancer에서 503 오류가 발생하는지 확인하려면 다음 중 하나를 수행합니다.

  • CloudWatch 지표에 액세스하여 HTTPCode_ELB_503_Count라는 레이블이 지정된 지표를 찾습니다.
  • 이 CURL 명령을 실행합니다. 응답에 “503 Service Temporarily Unavailable”이 포함되어 있으면 Application Load Balancer에서 오류가 발생한 것입니다.
    MY_URL을 Application Load Balancer에 액세스하는 데 사용되는 URL로 바꿔야 합니다.
$ curl -IkL MY_URL
  • Application Load Balancer 액세스 로그를 확인합니다. 로그에 elb_status_code = 503이 있는지 확인합니다. 이러한 위치에서 503 오류가 표시되면 Application Load Balancer에서 오류가 발생한 것입니다. 다음 문제 해결 단계를 사용하여 오류를 해결합니다.

해결 방법

대상 그룹에 등록된 대상이 있는지 확인

EC2 콘솔을 사용하여 확인

  1. Amazon EC2 콘솔에 엑세스합니다.
  2. 탐색 창의 [로드 밸런싱]에서 [대상 그룹]을 선택합니다.
  3. 대상 그룹의 이름을 선택하여 세부 정보 페이지를 엽니다.
  4. 대상 탭을 선택합니다.
  5. 나열된 대상이 있는지 확인합니다. 목록에 있으면 등록된 것입니다.

AWS CLI를 사용하여 확인

참고: AWS CLI 명령을 실행할 때 오류가 발생하는 경우 최신 버전의 AWS CLI를 사용하고 있는지 확인합니다.

AWS CLI를 사용하여 대상을 확인하려면 describe-target-health 명령을 사용합니다.

대상 등록

등록된 대상이 보이지 않는 경우 콘솔이나 AWS CLI를 통해 등록합니다.

대상 그룹이 Auto Scaling 그룹과 연결되어 있는지 확인(Auto Scaling을 사용하는 경우)

대상 그룹이 Auto Scaling 그룹의 일부인 경우 두 그룹이 올바르게 연결되었는지 확인합니다. 그렇지 않은 경우 그룹을 연결합니다.

EC2 콘솔을 사용하여 확인:

  1. Amazon EC2 콘솔을 엽니다.
  2. 탐색 창의 Auto Scaling에서 Auto Scaling G그룹을 선택합니다.
  3. 확인하려는 Auto Scaling 그룹을 선택합니다.
  4. 로드 밸런싱에서 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의 상태 확인이 실패하는 문제를 수정 및 해결하려면 어떻게 해야 하나요?를 참조하세요.


관련 정보

DeregisterTargets

AttachLoadBalancerTargetGroups

AWS 공식
AWS 공식업데이트됨 2년 전