기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
기본 상태 보고
이 주제에서는 Elastic Beanstalk 기본 상태에서 제공하는 기능을 설명합니다.
AWS Elastic Beanstalk 는 여러 소스의 정보를 사용하여 환경을 사용할 수 있는지 확인하고 인터넷에서 요청을 처리합니다. 환경의 상태는 Elastic Beanstalk 콘솔의 환경 개요 페이지에 네 가지 색상 중 하나로 표시됩니다. 또한 DescribeEnvironments API 및 에서 EB CLIeb status로 를 호출하여 사용할 수 있습니다.
기본 상태 보고 시스템은 로드 밸런싱 수행 환경의 경우 Elastic Load Balancing에서 수행하는 상태 확인을 기반으로, 단일 인스턴스 환경의 경우 Amazon Elastic Compute Cloud에서 수행하는 상태 확인을 기반으로 Elastic Beanstalk 환경의 인스턴스 상태에 대한 정보를 제공합니다.
Elastic Beanstalk는 EC2 인스턴스의 상태를 확인하는 것 외에도 환경의 다른 리소스도 모니터링하고 사용자가 환경을 사용할 수 없게 만들 수 있는 누락되거나 잘못 구성된 리소스를 보고합니다.
환경의 리소스에서 수집한 지표는 5분 간격으로 Amazon CloudWatch 에 게시됩니다. 여기에는 의 운영 체제 지표EC2, Elastic Load Balancing 의 요청 지표가 포함됩니다. 환경 콘솔의 모니터링 페이지에서 이러한 CloudWatch 지표를 기반으로 그래프를 볼 수 있습니다. 기본 상태의 경우 환경의 상태를 판단하는 데 이러한 측정치를 사용하지 않습니다.
상태 색상
Elastic Beanstalk는 웹 서버 환경에서 실행되는 애플리케이션이 상태 확인에 응답하는 방식에 따라 웹 서버 환경의 상태를 보고합니다. Elastic Beanstalk는 다음 표와 같이 네 가지 색상 중 하나를 사용하여 상태를 설명합니다.
색상 | 설명 |
---|---|
회색 |
환경을 업데이트하는 중입니다. |
녹색 |
환경이 최근의 상태 확인을 통과했습니다. 환경에 있는 하나 이상의 인스턴스를 사용할 수 있으며 요청을 받고 있습니다. |
Yellow |
환경이 하나 이상의 상태 확인에 실패했습니다. 환경에 대한 일부 요청에 실패합니다. |
빨간색 |
환경이 세 개 이상의 상태 확인에 실패했거나, 환경 리소스를 사용할 수 없게 되었습니다. 요청에 지속적으로 실패합니다. |
이러한 설명은 기본 상태 보고를 사용하는 환경에만 적용됩니다. 확장 상태와 관련된 세부 정보는 상태 색상 및 상태 단원을 참조하십시오.
Elastic Load Balancing 상태 확인
로드 밸런싱 수행 환경에서 Elastic Load Balancing은 환경의 각 인스턴스에 10초마다 요청을 보내 인스턴스가 정상임을 확인합니다. 기본적으로 로드 밸런서는 포트 80에서 TCP 연결을 열도록 구성됩니다. 연결을 승인한 인스턴스는 정상 상태로 간주됩니다.
애플리케이션의 기존 리소스를 지정하여 이 설정을 재정의할 수 있습니다. 와 같은 경로를 지정하면 /health
상태 확인URL이 로 설정됩니다HTTP:80/health
. 상태 확인은 항상 애플리케이션에서 제공하는 경로로 URL 설정해야 합니다. 애플리케이션 앞의 웹 서버에서 제공하거나 캐시하는 정적 페이지로 설정하면 상태 확인에 애플리케이션 서버 또는 웹 컨테이너와 관련된 문제가 표시되지 않습니다. 상태 확인 수정에 대한 지침은 섹션을 URL참조하세요상태 확인.
상태 확인URL이 구성된 경우 Elastic Load Balancing은 의 응답을 반환하기 위해 보내는 GET 요청을 예상합니다200 OK
. 애플리케이션이 5초 이내에 응답하지 않거나 다른 HTTP 상태 코드로 응답하는 경우 상태 확인에 실패합니다. 5번 연속으로 상태 확인에 실패하면 Elastic Load Balancing은 해당 인스턴스를 서비스에서 제외시킵니다.
Elastic Load Balancing 상태 확인에 대한 자세한 내용은 Elastic Load Balancing 사용 설명서에서 상태 확인을 참조하십시오.
참고
상태 확인을 구성해도 환경의 Auto Scaling 그룹의 상태 확인 동작은 변경되지 URL 않습니다. 비정상 인스턴스는 로드 밸런서에서 제거되지만, Amazon EC2 Auto Scaling이 Elastic Load Balancing 상태 확인을 인스턴스 교체의 기반으로 사용하도록 구성하지 않는 한 Amazon EC2 Auto Scaling으로 자동으로 대체되지 않습니다. Elastic Load Balancing 상태 확인에 실패한 인스턴스를 대체하도록 Amazon EC2 Auto Scaling을 구성하려면 섹션을 참조하세요Auto Scaling 상태 확인 설정.
단일 인스턴스 및 작업자 티어 환경 상태 확인
단일 인스턴스 또는 작업자 계층 환경에서 Elastic Beanstalk는 Amazon 인스턴스 상태를 모니터링하여 EC2 인스턴스의 상태를 결정합니다. 상태 확인을 포함한 Elastic Load Balancing HTTP 상태 설정은 이러한 환경 유형에서 사용할 수 URLs없습니다.
Amazon EC2 인스턴스 상태 확인에 대한 자세한 내용은 Amazon EC2 사용 설명서의 상태 확인을 사용하여 인스턴스 모니터링을 참조하세요.
추가 확인
Elastic Beanstalk는 Elastic Load Balancing 상태 확인 외에도 환경의 리소스를 모니터링하여 배포하지 못했거나 올바르게 구성되지 않았거나 사용할 수 없게 된 리소스의 상태를 빨간색으로 변경합니다. 여기에서는 다음을 확인합니다.
-
환경의 Auto Scaling 그룹을 사용할 수 있으며 인스턴스가 최소 하나 이상 있습니다.
-
환경의 보안 그룹을 사용할 수 있으며 포트 80에서 수신 트래픽을 허용하도록 구성되었는지 여부
-
환경이 CNAME 존재하며 올바른 로드 밸런서를 가리키고 있습니다.
-
작업자 환경에서 Amazon Simple Queue Service(AmazonSQS) 대기열은 3분에 한 번 이상 폴링됩니다.
Amazon CloudWatch 지표
기본 상태 보고를 통해 Elastic Beanstalk 서비스는 Amazon 에 지표를 게시하지 않습니다 CloudWatch. 환경 콘솔의 모니터링 페이지에서 그래프를 생성하는 데 사용되는 CloudWatch 지표는 환경의 리소스에 의해 게시됩니다.
예를 들어 EC2 는 환경의 Auto Scaling 그룹에 있는 인스턴스에 대해 다음 지표를 게시합니다.
CPUUtilization
-
현재 사용 중인 컴퓨팅 유닛의 비율(%)
DiskReadBytes
DiskReadOps
DiskWriteBytes
DiskWriteOps
-
읽고 쓴 바이트 수와 읽기 및 쓰기 작업 수
NetworkIn
NetworkOut
-
보내고 받은 바이트 수
Elastic Load Balancing은 환경의 로드 밸런서에 대해 다음 측정치를 게시합니다.
BackendConnectionErrors
-
로드 밸런서와 환경 인스턴스 간의 연결 실패 수
HTTPCode_Backend_2XX
HTTPCode_Backend_4XX
-
환경의 인스턴스에서 생성한 성공한(2XX) 응답 코드 및 클라이언트 오류(4XX) 응답 코드 수
Latency
-
로드 밸런서가 인스턴스에 요청을 전달한 시기와 응답을 받은 시기 사이의 시간(초)
RequestCount
-
완료된 요청 수
이러한 목록은 포괄적이지 않습니다. 이러한 리소스에 대해 보고할 수 있는 지표의 전체 목록은 Amazon CloudWatch 개발자 안내서의 다음 주제를 참조하세요.
네임스페이스 | 주제 |
---|---|
AWS::ElasticLoadBalancing::LoadBalancer | Elastic Load Balancing 측정치 및 리소스 |
AWS::AutoScaling::AutoScalingGroup | Amazon Elastic Compute Cloud 측정치 및 리소스 |
AWS::SQS::대기열 | Amazon SQS 지표 및 리소스 |
AWS::RDS::DBInstance | Amazon RDS 차원 및 지표 |
작업자 환경 상태 지표
작업자 환경의 경우에만 SQS 데몬은 환경 상태에 대한 사용자 지정 지표를 에 게시합니다. CloudWatch여기서 1 값은 녹색입니다. ElasticBeanstalk/SQSD
네임스페이스를 사용하여 계정의 CloudWatch 상태 지표 데이터를 검토할 수 있습니다. 측정치 차원은 EnvironmentName
이고, 측정치 이름은 Health
입니다. 모든 인스턴스는 동일한 네임스페이스에 측정치를 게시합니다.
데몬에서 측정치를 게시하도록 하려면 환경의 인스턴스 프로파일에 cloudwatch:PutMetricData
를 호출할 권한이 있어야 합니다. 이 권한은 기본 인스턴스 프로파일에 포함되어 있습니다. 자세한 내용은 Elastic Beanstalk 인스턴스 프로파일 관리을(를) 참조하세요.