AWS Systems Manager Change Calendar를 사용하여 완전 자동화를 실현
TL; DR
- Change Calendar는 AWS에서 사용하는 캘린더
- iCalendar형식
- EventBridge와 연동 가능
- 캘린더 스케줄로 AWS 리소스 실행예약이 가능
- cron 설정으로는 불가능한 스케줄 실행이 가능
SSM Change Calendar
AWS 에서 만들 수 있는 캘린더이면서
Systems Manager에서 Automation 과 RunCommand 를 실행할 때에 실행하는 날과 실행하지 않는 날을 캘린더로 지정할 수 있습니다. 예를 들어 개발환경의 EC2 인스턴스를 자동으로 업무시간외 공휴일에도 자동으로 정지시킬 수 있습니다.
기존 EventBridge Rule에서는 cron설정으로 지정된 시간, 지정된 요일, 지정된 날짜 만 설정된다는 단점을 Change Calendar를 사용하면 cron설정에 더하여 공휴일을 지정할 수 있습니다.
공휴일을 일일히 지정하지 않고도 google calendar를 Change Calendar를 만들 때에 import할 수 있습니다.
google calendar의 한국의 공휴일 ical 다운로드는 아래 링크로 다운로드할 수 있습니다.
https://calendar.google.com/calendar/ical/ko.south_korea%23holiday%40group.v.calendar.google.com/public/basic.ics
Change Calendar 다음 두 가지 유형이 있습니다.
- DEFAULT_OPEN 또는 Open by default
Open(허가)된 상태가 표준이 되며 Close(거부)할 수 있는 기간을 지정합니다. 예를 들어 EventBridge Rule를 캘린더에서 지정된 기간동안 Disable상태로 만들 수 있습니다.
- DEFAULT_CLOSED 또는 Closed by default
Close(거부)된 상태가 표준이 되며 Open(허가)할 수 있는 기간을 지정합니다. 예를 들어 EventBridge Rule를 캘린더에서 지정된 기간동안 Enable상태로 만들 수 있습니다.
Using AWS Systems Manager Change Calendar to prevent changes during critical events | Amazon Web Services
When applications and their development teams grow or evolve around service-specific independent teams, coordination and visibility among projects, deployments and operational events become a critical issue. AWS customers use multiple AWS accounts for many
aws.amazon.com