Amazon EC2 Auto Scaling이 인스턴스를 종료한 이유는 무엇입니까?

5분 분량
0

Amazon Elastic Compute Cloud(Amazon EC2) 오토 스케일링 그룹에서 인스턴스를 종료했습니다. 그런데 Amazon EC2 콘솔에 종료 이유가 표시되지 않습니다.

간략한 설명

Amazon EC2 Auto Scaling은 Amazon EC2 또는 Elastic Load Balancing(ELB) 상태 확인을 사용하여 인스턴스의 상태를 파악합니다. 상태 확인 대체를 비롯하여 오토 스케일링 그룹의 모든 조정 작업은 Amazon EC2 콘솔의 활동 기록 보기에 표시됩니다.

해결 방법

활동 내역 보기의 인스턴스 설명을 통해 추가 단계를 확인합니다.

계속하기 전에 인스턴스 종료에 대한 설명 및 원인을 찾습니다.

1.    Amazon EC2 콘솔을 엽니다.

2.    탐색 창의 오토 스케일링에서 오토 스케일링 그룹을 선택합니다. 인스턴스의 그룹을 선택합니다.

3.    활동 기록 보기를 선택한 후 인스턴스 종료 이벤트를 선택합니다.

4.    인스턴스 종료 이벤트에 대한 설명원인을 확인합니다.

다음 설명 예시를 참조하여 인스턴스가 종료된 근본적인 이유 중 가능성 높은 이유를 파악합니다.

"인스턴스가 종료 또는 중지되었음을 나타내는 EC2 상태 확인에 대한 응답으로 인스턴스가 서비스에서 제외되었습니다."

Amazon CloudWatch 지표를 사용하여 인스턴스 또는 시스템 점검 실패를 찾습니다.

1.    Amazon CloudWatch 콘솔을 엽니다.

2.    탐색 창에서 지표를 선택한 다음 모든 지표 보기를 선택합니다.

3.    지표 창에서 EC2를 선택하고 인스턴스별 지표를 선택합니다.

4.    instance-id를 입력한 다음 StatusCheckFailed_Instance, StatusCheckFailed_System 또는 StatusCheckFailed를 선택하여 지표 그래프를 봅니다.

Amazon EC2 Auto Scaling은 중지된 인스턴스와 재부팅된 인스턴스를 종료합니다. AWS CloudTrail 기록을 검토하여 사용자가 수동으로 인스턴스를 중지하거나 재부팅했는지 확인합니다.

1.    AWS CloudTrail 콘솔을 엽니다.

2.    탐색 창에서 [이벤트 기록]을 선택합니다.

3.    TerminateInstances, StopInstances 또는 RebootInstances API 호출에 대한 기록을 확인합니다.

Amazon EC2 Auto Scaling은 다음 중 하나가 발생하면 스팟 인스턴스를 종료합니다.

  • 용량을 더 이상 사용할 수 없음
  • 스팟 요금이 인스턴스에 대해 지정한 최고 요금을 초과함

활동 기록에는 상태 확인으로 인해 인스턴스가 서비스에서 제거된 것으로 표시될 수 있습니다. 종료 이유를 확인하려면 스팟 요청 상태를 확인합니다.

1.    Amazon EC2 콘솔을 엽니다.

2.    탐색 창의 인스턴스에서 스팟 요청을 선택합니다.

3.    스팟 요청을 선택하고 설명 보기를 선택한 다음 상태를 기록합니다.

오토 스케일링 그룹의 상태 확인 유형이 ELB로 설정된 경우 Amazon EC2 Auto Scaling은 ELB 및 EC2 상태 확인을 모두 수행합니다. 그런 다음 서비스가 상태 확인에 실패한 인스턴스를 종료합니다. 인스턴스가 종료된 이유를 파악하려면 다음을 수행합니다.

1.    Amazon EC2 콘솔을 엽니다.

2.    탐색 창의 오토 스케일링에서 오토 스케일링 그룹을 선택한 다음 인스턴스의 그룹을 선택합니다.

3.    세부 정보 보기를 선택한 다음, 상태 확인 유형을 확인합니다.

"사용자 요청에 대한 응답으로 인스턴스가 서비스에서 제외되었습니다."

특정 API 호출에 대해 인스턴스가 서비스에서 제외된 기간 동안의 CloudTrail 이벤트 기록을 검토합니다.

1.    AWS CloudTrail 콘솔을 엽니다.

2.    탐색 창에서 [이벤트 기록]을 선택합니다.

3.    TerminateInstances, TerminateInstanceInAutoScalingGroup, 또는 UpdateAutoScalingGroup API 호출 기록을 확인합니다.

"ELB 시스템의 상태 확인 실패에 대한 응답으로 인스턴스가 서비스에서 제외되었습니다."

더 자세히 알아 보려면 ELB 시스템 상태 확인 실패에 대한 응답으로 인스턴스가 서비스에서 제외되었습니다 섹션을 확인하세요.

오토 스케일링 그룹에 다수의 로드 밸런서가 연결된 경우 모든 로드 밸런서가 인스턴스 상태를 정상으로 보고해야 Amazon EC2 Auto Scaling이 해당 인스턴스를 정상인 것으로 간주합니다.

1.    Amazon EC2 콘솔을 엽니다.

2.    탐색 창의 로드 밸런싱에서 로드 밸런서를 선택한 다음 모니터링을 선택합니다.

3.    상태 호스트 카운트 지표 그래프를 선택하여 인스턴스가 상태 확인에 실패하는지 확인합니다.

4.    탐색 창의 오토 스케일링에서 오토 스케일링 그룹을 선택합니다.

5.    인스턴스의 그룹을 선택하고 세부 정보 보기를 선택합니다.

  1.    로드 밸런서 또는 대상 그룹에서 둘 이상의 로드 밸런서가 연결되어 있는지 확인합니다.

CloudTrail 기록을 검토하여 일시 중지된 프로세스로 인해 프로세스가 다시 시작되기 전까지 이상 있는 인스턴스의 종료가 지연되었는지 확인합니다.

1.    AWS CloudTrail 콘솔을 엽니다.

2.    탐색 창에서 [이벤트 기록]을 선택합니다.

3.    SuspendProcessesResumeProcesses API 호출 기록을 확인합니다.

"사용자 상태 확인에 대한 응답으로 인스턴스가 서비스에서 제외되었습니다."

Amazon EC2 Auto Scaling에서 사용자 지정 상태 확인을 정의할 수 있습니다. 사용자 지정 상태 확인을 통해 인스턴스에 이상이 있는 것으로 확인된 경우 이러한 확인으로 인해 SetInstanceHealth가 수동으로 시작되고 인스턴스 상태가 [비정상(Unhealthy)]으로 설정됩니다. Amazon EC2 Auto Scaling은 이상 있는 인스턴스를 다음 실행 시 종료합니다.

"An instance was launched to aid in balancing the group's zones" 또는 "Instances were launched to balance instances in zones us-east-1a with other zones"

기본적으로 Amazon EC2 Auto Scaling은 모든 가용 영역에서 인스턴스의 균형을 조정합니다. 오토 스케일링 그룹에 새 가용 영역을 추가하면 Amazon EC2 Auto Scaling이 해당 영역에서 새 인스턴스를 시작하고 재밸런싱으로 인해 다른 영역의 인스턴스가 종료될 수 있습니다.

"2018-02-12T13:48:46Z에서 모니터 경보 XXX-High-CPU-Utilization in state ALARM이 원하는 용량을 2에서 1로 변경하며 정책 AAA-scaledown을 트리거 했습니다"

Amazon EC2 Auto Scaling은 구성된 CloudWatch 경보에 따라 그룹의 인스턴스를 종료할 수 있습니다. 그룹 정책 및 CloudWatch 경보 기록을 확인합니다.

오토 스케일링 그룹 정책을 확인하려면 다음을 수행합니다.

1.    Amazon EC2 콘솔을 엽니다.

2.    탐색 창의오토 스케일링에서 오토 스케일링 그룹을 선택합니다.

3.    인스턴스의 그룹을 선택합니다.

4.    조정 정책 창을 선택하여 정책을 보고 편집합니다.

CloudWatch 경보 기록을 보려면 다음을 수행합니다.

1.    Amazon CloudWatch 콘솔을 엽니다.

2.    탐색 창에서 경보를 선택합니다.

3.    경보를 선택하고 기록 보기를 선택합니다.

4.    경보의 상태 변경 또는 경보 구성 수정에 대한 기록을 확인합니다.

"2018-02-12T13:49:12Z에서 AutoScalingGroup 제약 조건을 최소: 1, 최대: 9, 원하는 용량: 1로 업데이트하여 원하는 용량을 2에서 1로 변경하는 예약된 작업입니다. [...]"

오토 스케일링 그룹의 최소, 최대 또는 희망 용량으로 변경하는 예약 작업을 구성할 수 있습니다. 예약된 작업에 따라 희망 용량이 감소하면 Amazon EC2 Auto Scaling이 새로운 희망 용량에 맞추기 위해 하나 이상의 인스턴스를 종료합니다.

"AutoScalingGroup 제약 조건을 최소: 0, 최대: 2, 원하는 용량: 1로 업데이트하여 원하는 용량을 2에서 1로 변경하는 사용자 요청입니다"

오토 스케일링 그룹의 제약 조건을 수동으로 변경하는 경우(예: 희망 용량 감소), Amazon EC2 Auto Scaling은 새 설정에 맞게 인스턴스를 종료할 수 있습니다.


관련 정보

Auto Scaling 그룹의 규모가 축소된 이유는 무엇입니까?

Amazon EC2 Auto Scaling이 이상 있는 인스턴스를 종료하지 않는 이유는 무엇인가요?

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