Prerequisite
-
테스트 인스턴스 프로비저닝
-
AMI name : ubuntu/images/hvm-ssd/ubuntu-focal-20.04-amd64-server-20231025
-
type : t2.micro
-
Instance auto-recovery : Default(On) → 이것이 기본 설정입니다.
-
Process
CloudWatch 경보(Alarm) 생성 - Status Check Failed
-
Metric 소스 : EC2 (Namespace : AWS/EC2)
-
Metric 이름 : StatusCheckFailed_System
- Threshold type - 지표값이 1 이상일 때 경보 트리거 되도록 구성합니다.
- SNS 알림 설정 등록해줍니다. 인스턴스 recovery 를 위해서는 알림 설정이 필수입니다.
- EC2 Action 을 Recover this Instance 에 줍니다. 필요에 따라 EC2 Action 을 추가할 수도 있습니다.
- 알람 디스크립션 작성
- 약간의 시간이 지나면 Alarm 이 만들어 집니다.
- 또한, 알림을 등록한 SNS 에서 구독을 컨펌해줍니다.
Alarm 이 trigger 되는지 확인
-
저희는 경보 기준이 Failed (ThresHold)가 1 이상으로 설정해 놓았기 때문에 Trigger 가 일어나지 않습니다.
따라서, 테스트를 위해 Threshold 를 0 으로 주겠습니다.
- SNS 알림이 생성 되었으며, Alarm History 를 추적해봅니다. 아래는 SNS 알림을 받은 내용입니다.
You are receiving this email because instance i-0bf9c6569c873242a in region Asia Pacific (Seoul) has failed a system status check for at least 1 period(s) of 60 seconds at "Wednesday 13 December, 2023 05:02:39 UTC". You can view status check details about this instance by navigating to the EC2 console at https://ap-northeast-2.console.aws.amazon.com/ec2/home?region=ap-northeast-2#s=Instances, selecting the instance and clicking on the Status Check tab.
Information about troubleshooting instances with failed status checks:
http://docs.amazonwebservices.com/AWSEC2/latest/UserGuide/TroubleshootingInstances.html.
Information about EC2 Status Checks:
http://docs.amazonwebservices.com/AWSEC2/latest/UserGuide/monitoring-system-instance-status-check.html.
View this alarm in the AWS Management Console:
https://ap-northeast-2.console.aws.amazon.com/cloudwatch/deeplink.js?region=ap-northeast-2#alarmsV2:alarm/ejl_autorecover_alarm
More details about this alarm are provided below:
---
Alarm Details:
- Name: ejl_autorecover_alarm
- Description: ejl_autorecover_alarm!! (threshold 0)
계속 알림이 올 것입니다.
- State Change: OK -> ALARM
- Reason for State Change: Threshold Crossed: 1 out of the last 1 datapoints [0.0 (13/12/23 05:01:00)] was greater than or equal to the threshold (0.0) (minimum 1 datapoint for OK -> ALARM transition).
- Timestamp: Wednesday 13 December, 2023 05:02:39 UTC
- AWS Account: 759320821027
- Alarm Arn: arn:aws:cloudwatch:ap-northeast-2:759320821027:alarm:ejl_autorecover_alarm
Threshold:
- The alarm is in the ALARM state when the metric is GreaterThanOrEqualToThreshold 0.0 for at least 1 of the last 1 period(s) of 60 seconds.
Monitored Metric:
- MetricNamespace: AWS/EC2
- MetricName: StatusCheckFailed_System
- Dimensions: [InstanceId = i-0bf9c6569c873242a]
- Period: 60 seconds
- Statistic: Minimum
- Unit: not specified
- TreatMissingData: missing
State Change Actions:
- OK:
- ALARM: [arn:aws:sns:ap-northeast-2:759320821027:ejl_autorecove_test] [arn:aws:automate:ap-northeast-2:ec2:recover]
- INSUFFICIENT_DATA:
--
If you wish to stop receiving notifications from this topic, please click or visit the link below to unsubscribe:
https://sns.ap-northeast-2.amazonaws.com/unsubscribe.html?SubscriptionArn=arn:aws:sns:ap-northeast-2:759320821027:ejl_autorecove_test:2f8f02e3-d838-4e32-8b95-73e2b6bc6c4d&Endpoint=euijoo3233@gmail.com
Please do not reply directly to this email. If you have any questions or comments regarding this email, please contact us at https://aws.amazon.com/support
- Alarm History 를 보면, ec2 Recover 액션이 성공적으로 실행됐음을 알 수 있습니다.
- Alarm History
History data
State change in alarm at 2023-12-13 05:02:41
Summary
Successfully executed action arn:aws:automate:ap-northeast-2:ec2:recover
Data
{
"alarmName": "ejl_autorecover_alarm",
"alarmType": "MetricAlarm",
"timestamp": "2023-12-13T05:02:41.797Z",
"historyItemType": "Action",
"historySummary": "Action completed successfully",
"historyData": {
"actionState": "Succeeded",
"stateUpdateTimestamp": 1702443759648,
"notificationResource": "arn:aws:automate:ap-northeast-2:ec2:recover",
"publishedMessage": null,
"error": null
}
}
Auto-Recovery behavior 의 옵션을 Off 로 주었을 때
- threshold 를 0으로 수정하고 경보가 울리며 인스턴스가 Recover 되는지 확인해보겠습니다.
- Recover 가 됩니다.
Reference
※스마일샤크가 제공하는 모든 콘텐츠는 관련 법의 보호를 받습니다. 스마일샤크 콘텐츠를 사전허가 없이 무단으로 복사·배포·판매·전시·개작할 경우 민·형사상 책임이 따를 수 있습니다. 콘텐츠 사용과 관련해 궁금한 점이 있으면 전화(☎: 070-4369-2028) 또는 이메일(contact@smileshark.kr)로 문의하기 바랍니다
댓글
댓글 0개
댓글을 남기려면 로그인하세요.