Amazon EC2가 Spot Instance를 종료했는지 확인하기
Amazon EC2가 Spot Instance를 종료했는지 확인하기
Spot Instance는 Amazon EC2가 Spot Instance 인터럽트에 대응해 종료할 때까지, 또는 직접 종료할 때까지 실행돼요. 자세한 내용은 Behavior of Spot Instance interruptions 문서를 참고하세요.
출처: 문서
본문
Spot Instance가 종료된 뒤에는 AWS CloudTrail을 사용해 Amazon EC2가 종료했는지 확인할 수 있어요. CloudTrail 로그에 BidEvictedEvent가 포함되어 있으면 Amazon EC2가 Spot Instance를 종료했다는 뜻이에요. 대신 TerminateInstances 이벤트가 보이면 사용자가 Spot Instance를 종료한 것입니다.
대신 Amazon EC2가 Spot Instance를 인터럽트하려 한다는 알림을 받으려면 Amazon EventBridge를 사용해 EC2 Spot Instance Interruption Warning 이벤트에 대응하면 돼요.
CloudTrail에서 BidEvictedEvent 이벤트 보기
- CloudTrail 콘솔을 엽니다. https://console.aws.amazon.com/cloudtrail/
- 탐색 창에서 Event history를 선택합니다.
- 필터 목록에서 Event name을 선택한 다음 오른쪽 필터 필드에
BidEvictedEvent를 입력합니다. - (선택) 시간 범위를 선택합니다.
- 목록이 비어 있지 않으면 결과 항목에서 BidEvictedEvent를 선택해 상세 페이지를 엽니다. Event record 창에서 Spot Instance ID를 포함해 Spot Instance에 대한 정보를 찾을 수 있어요. 다음은 이벤트 레코드 예시입니다.
{
"eventVersion": "1.05",
"userIdentity": {
"accountId": "123456789012",
"invokedBy": "ec2.amazonaws.com"
},
"eventTime": "2016-08-16T22:30:00Z",
"eventSource": "ec2.amazonaws.com",
"userAgent": "ec2.amazonaws.com",
"sourceIPAddress": "ec2.amazonaws.com",
"eventName": "BidEvictedEvent",
"awsRegion": "us-east-2",
"eventID": "d27a6096-807b-4bd0-8c20-a33a83375054",
"eventType": "AwsServiceEvent",
"recipientAccountId": "123456789012",
"RequestParameters": null,
"ResponseElements": null,
"serviceEventDetails": {
"instanceIdSet": [
"i-1eb2ac8eEXAMPLE"
]
}
}
BidEvictedEvent 이벤트의 항목을 찾지 못했다면 이벤트 이름으로 TerminateInstances를 입력하세요. TerminateInstances 이벤트 레코드에 대한 자세한 내용은 Amazon EC2 API event examples 문서를 참고하세요.