반응형
Http 응답코드에 대해서는 기존 글로 정리했던 사항이 있다. (https://ls-altr.tistory.com/35)
이는 WEB서버 혹은 WAS 서버 관리시 자주 활용되는 사항인데, Cloud에서는 다른 조치 사항들이 있어 이를 정리하고자 한다.
오류 코드 / 메시지 | 원인 | 해결방안 |
400 Bad request |
- 클라이언트가 HTTP사양을 충족하지 않는 잘못된 형식의 요청을 전송 - 요청 헤더가 요청 Line당 16K, 단일 헤더당 16K 또는 전체 요청 헤더에서 64K를 초과 - 클라이언트가 전체 요청 본문을 보내기 전에 연결 종료 |
- request 확인 후 조치 - 헤더 사이즈 확인 - Timeout 확인 |
401 Unauthorized | - 인증되지 않은 사용자를 거부하도록 OnUnauthenticatedRequest를 구성했거나 IdP가 액세스를 거부 - IdP에서 반환된 클레임 크기가 로드밸런서 지원 최대 크기 초과 - 클라이언트가 호스트 헤더 없이 HTTP/1.0 요청을 제출했으며, 로드밸런서가 리디렉션 URL을 생성하지 못함 - 요청된 범위가 ID 토큰을 반환하지 않음 - 클라이언트 로그인 제한시간만료 전에 로그인 프로세스 미완료 |
- Request 사이즈 확인 - Timeout 확인 - 권한 확인 |
403 Forbidden |
- Application Load Balancer에 대한 요청을 모니터링하기 위해 AWS WAF 웹 액세스 제어 목록(웹 ACL)을 구성하여 요청이 차단됨 |
- 차단된 경우인 건이 많아, SG/방화벽 설정 등 보안 요소 확인 |
408 Request timeout | - 클라이언트가 유휴 제한 시간 만료 전에 데이터를 전송하지 않음 - 각 유휴 제한 시간이 지나기 전에 최소 1바이트의 데이터를 전송 |
|
413 Payload too large |
- 대상이 Lambda 함수이고 요청 본문이 1MB를 초과 | |
414 URI too long | - 요청 URL 또는 쿼리 문자열 파라미터가 너무 큼 | - 문자열 확인 |
460 |
- 로드밸런서가 클라이언트에서 요청을 수신했지만, 유휴 제한 시간이 종료되기 전에 클라이언트가 로드밸런서와의 연결을 종료 - 클라이언트 제한 시간이 로드밸런서의 유휴 제한 시간보다 큰지 확인 - 클라이언트 제한 시간이 끝나기 전에 대상이 클라이언트에 응답을 제공하는지 확인하거나, 클라이언트가 제한 시간을 지원할 경우 로드밸런서의 유휴 제한 시간에 맞게 클라이언트 제한 시간 연장 |
- 로드밸런서의 유휴 제한 시간에 맞게 클라이언트 제한 시간 연장 |
500 Internal server error |
- AWS WAF 웹 액세스 제어 목록(웹 ACL)을 구성했으며 웹 ACL 규칙을 실행하는 데 오류 발생 - 로드 밸런서가 IdP 토큰 엔드포인트 또는 IdP 사용자 정보 엔드포인트와 통신 불가 - IdP의 DNS를 공개적으로 확인할 수 있는지 확인 - 로드 밸런서의 보안 그룹과 VPC의 네트워크 ACL이 이러한 엔드포인트에 대한 발신 액세스를 허용하는지 확인 - VPC에서 인터넷에 액세스할 수 있는지 확인, 내부 로드 밸런서가 있는 경우, NAT 게이트웨이를 사용하여 인터넷 액세스 활성화 |
- 액세스 허용요소(SG/Firewall/OS 내부 firewalld 등 확인) - Gateway 제한 요소 확인 |
502 Bad gateway | - ELB가 대상 그룹의 인스턴스로부터 응답을 받지 못함 - 대상 그룹 인스턴스의 서비스 상태 확인 및 요청/응답 로그 확인 |
- 대상 서비스 기동 여부 확인 |
503 Service Unavailable | - 대상 그룹에 등록된 인스턴스가 없거나 클라이언트 요청이 급격히 증가하는 경우 - 대상 그룹에 인스턴스를 등록 - ELB의 스케일링 시간 부족 문제로 시간이 지나면 해결될 수 있음 |
- Target 그룹 내 어플리케이션 기동 여부 확인 / 실제 WAS 문제일 가능성 많음. - ASG 등으로 인해 일시적일 수도 있다. |
504 Gateway Timeout | - ELB의 Idle Timeout보다 대상 그룹 인스턴스의 요청을 처리하는 시간이 더 긴 경우 - 인스턴스가 ELB Connection을 Close한 경우 - 인스턴스 스케일 아웃 또는 Idle Timeout 상향 조정 - 대상 그룹 인스턴스의 Keep-alive Timeout을 ELB Timeout보다 높게 조정 |
- ELB Timeout 점검 |
반응형
'IT > Cloud' 카테고리의 다른 글
EC2 인스턴스에서 ec2-user에게 crontab 권한 부여하기 (0) | 2024.08.04 |
---|---|
IMDS v2 에 대한 정보(v1 과 v2 차이) (0) | 2024.07.17 |
SSM 에이전트를 통한 EC2 접속이 안될 경우 대응 방법 (0) | 2023.05.21 |
docker_로컬 환경 구성 (0) | 2023.02.01 |
AWS 자격증 시험 응시 (0) | 2022.10.03 |