
AWS Instance Scheduler로 공휴일에 유휴 자원 관리하기
두줄요약
AWS Instance Scheduler에 한국 공휴일을 자동 반영하는 서버리스 구성을 소개했습니다. 공공데이터포털, Lambda, EventBridge로 스케줄을 자동 전환해 운영 부담과 비용을 줄였습니다.
문제 상황
- AWS Instance Scheduler의 기본 스케줄링은 요일·월·시간 기준만 지원해 공휴일 자동 반영이 어려움
- 대한민국 공휴일을 수동 입력해야 해 인적 오류와 운영 공수, 불필요한 비용이 발생
구조와 흐름
- 매월 1일 EventBridge가 MonthlyHolidayCheck Lambda를 실행해 공공데이터포털 API로 공휴일 조회
- 조회 결과를 DynamoDB의 Period와 Schedule에 반영하고, 공휴일별 시작·종료용 EventBridge 규칙 생성
- 공휴일 당일에는 UpdateScheduleForHoliday Lambda가 평일 Period와 공휴일 Period를 서로 교체
주의할 점
- 공휴일이 없을 때와 있을 때의 스케줄 처리 분기 필요
- 하나의 스케줄에 여러 Period가 겹치며 충돌하지 않도록 Period 교체 방식 사용
- Lambda, EventBridge, DynamoDB, KMS 권한과 환경 변수 사전 설정 필요
적용해볼 점
- 지역 공휴일처럼 기본 스케줄에 없는 운영 조건을 외부 API와 서버리스로 자동화
- 수동 일정 관리 제거로 오류와 운영 부담을 줄이는 패턴 활용


