본문 바로가기
🌴 DevOps

AWS고객이 주로 겪는 운영이슈3 -ELB관련

by 카프리썬_ 2020. 4. 29.
728x90

ELB관련 운영이슈

 

유형1. HTTP 5XX ERRORS

 

1) 502 BAD GATEWAY

  • 원인 : ELB가 뒷단에 있는 인스턴스로부터 응답을 받지 못했을 경우
  • 해결 : 뒷단에 있는 인스턴스들(WAS/WEB)의 로그를 참조해서 응답이 제대로 갔는지 확인

nestat 명령어로 80포트에 연결된 네트워크 있는지 확인 -> stop되서 없음
nestat 명령어로 80포트에 연결된 네트워크 있는지 확인 -> start되서 httpd프로세스 존재

2) 503 Service Unavailable : 서비스불가

모니터링 지표 : HealthyHostCount 지표

  • 원인1 : ELB 뒷단에 등록된 인스턴스가 없을 경우
  • 해결1 : 인스턴스 등록

  • 원인2 : ELB 뒷단에 인스턴스가 있지만 모든 인스턴스가 다 Unhealthy 상태인 경우
  • 해결2 : Health 한 인스턴스를 하나라도 만듦
    SG
    이나 VPC 설정을 확인해서 인스턴스가 ELB와 통신이 가능한 상태인지 점검

  • 원인3 : 갑자기 request가 많아지는 경우
  • 해결3 : 예상된 피크 트래픽일 경우 프리워밍 신청
    일시적으로 ELB가 스케일링 하는데 시간이 부족해서 발생한 경우라 시간이 지나면 해결

3) 504 GATEWAT TIMEOUT : 제한시간 초과

모니터링 지표 : HTTPCODE_ELB_5XX Latency metrics가 동시에 증가함

  • 원인1 : EBL의 타임아웃보다 인스턴스의 요청을 처리하는 시간이 더 긴 경우
  • 해결1 : 인스턴스가 요청을 처리하는데 오래걸리니까 새 인스턴스를 추가

  • 원인2 : 인스턴스가 ELB요청을 닫을 경우, ELB가 늦게 들어와서 인스턴스가 먼저 닫음
  • 해결2 : 백엔드 서버의 Keep-alive 활성화
    keep-alive
    타임아웃을 ELB 타임아웃보다 길게 잡아서 ELB가 들어오도록 오랫동안 기다리게함

유형2. ELB Status : Instatnce out of service 

  • 원인1: 인스턴스가 STOP된 상태일 경우
  • 해결1 : 인스턴스 시작

  • 원인2 : 인스턴스가 등록중일 경우
  • 해결2 : 최근에 추가된 경우라서 시간이 지나면 자동으로 해결

유형3. 헬스체크 실패(Unhealthy일 경우)

ELB에서 헬스체크 의미 : ELB에 연결된 인스턴스들이 정상인지 확인

  • 원인1 : ELB가 받은 status코드가 200이외일 경우
  • 해결1 : ELB가 받은 코드를 200으로 수정
  • 원인2 : 헬스체크 타임아웃 발생(status코드가 504)
  • 해결2 : 504 GATEWAT TIMEOUT 상황처럼 백엔드서버의 keep-alive 활성화해서 대기시간 늘림

출처 

https://www.slideshare.net/awskorea/3-operating-issue-solution-for-aws-customers

 

AWS 고객이 주로 겪는 운영 이슈에 대한 해법-AWS Summit Seoul 2017

© 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 이범석, 테크니컬 어카운트 매니저 조성열, 클라우드 서포트 엔지니어 AWS 고객이 주로 겪는 운영 이슈에 대한 해법

www.slideshare.net

 

반응형