배경
실제 장애 사례
ECS 기반 배치 서비스에서 주문 수집이 중단되는 이슈가 발생했습니다. 원인을 추적한 결과, AWS 내부적으로 진행된 ElasticContainerService task patching retirement 작업이 ECS Task를 재기동시킨 것이 원인이었습니다.
[문제]
배치 서비스 주문 수집 중단
[원인]
AWS Health Dashboard: ElasticContainerService task patching retirement
→ AWS Fargate 플랫폼 버전 업데이트로 인해
이전 플랫폼 버전의 Task가 자동 종료 및 교체
[영향]
Task 재기동 중 배치 처리 중단 → 주문 수집 누락
이 사건은 단순한 참고용 알림이 아니라, 실제 프로덕션에 영향을 주는 계획된 인프라 작업이었습니다.
왜 AWS Health Dashboard 모니터링이 필요한가
AWS 내부 작업이 사용자 리소스에 영향을 줌
AWS Fargate는 서버 관리 없이 자동으로 리소스를 제공하는 서비스이기 때문에, 기능 추가와 유지보수를 위해 플랫폼을 정기적으로 업데이트합니다.
ElasticContainerService task patching retirement는 AWS가 새로운 플랫폼 버전 revision을 배포함에 따라 이전 플랫폼 버전에서 실행 중인 태스크가 자동으로 종료되고 교체되는 작업입니다.
업데이트 내용:
- OS 보안 패치
- 커널 업데이트
- 신규 기능 추가
- 내부 유지보수
조기 경보의 가치
대부분의 Health Dashboard 알림은 사전에 공지됩니다.
"ElasticContainerService task patching retirement가 진행될 예정입니다"
이 정보를 바탕으로 사전 조치가 가능합니다:
- 백업 이미지 점검
- 태스크 롤링 업데이트 사전 실행
- 이미지 캐싱 확인
- 배치 스케줄 조정 (작업 시간대 회피)
모니터링 대상
EC2를 제외한 AWS 관리형 서비스 관련 이벤트를 중점 모니터링합니다.
| 서비스 | 주요 이벤트 |
|---|---|
| ECS Fargate | Task Patching Retirement, 플랫폼 버전 업데이트 |
| Lambda | Runtime Deprecation, 보안 패치 |
| S3 | 서비스 장애, API 오류율 증가 |
| 기타 관리형 서비스 | Retirement, Patching, Reboot |
중요 알람: ECS Task Patching Retirement
AWS Fargate 플랫폼 버전 업데이트
↓
이전 플랫폼 버전의 Task 자동 종료
↓
새 플랫폼 버전으로 Task 교체 (재기동)
↓
재기동 중 서비스 일시 중단 가능
알림 자동화 구성
방식: AWS User Notifications
AWS Health Dashboard
↓
AWS User Notifications (알림 규칙 설정)
↓
이메일 채널 → 팀 메일로 자동 전달
설정 과정
-
AWS User Notifications 활성화
- AWS 콘솔 → User Notifications → 알림 규칙 생성
-
알림 대상 이벤트 설정
- Fargate, Lambda, S3 등 관리형 서비스의 Retirement, Patching, Reboot 이벤트
-
이메일 채널 연결
- 팀 메일 주소를 수신 대상으로 등록
-
동작 확인
- 이메일 정상 수신 확인 완료
EventBridge 연동 (확장)
더 세밀한 제어가 필요한 경우 EventBridge를 활용할 수 있습니다.
{
"source": ["aws.health"],
"detail-type": ["AWS Health Event"],
"detail": {
"service": ["ELASTICCONTAINERSERVICE", "LAMBDA", "S3"],
"eventTypeCategory": ["scheduledChange", "accountNotification"]
}
}AWS Health Event
↓
EventBridge Rule (서비스/이벤트 유형 필터)
↓
SNS Topic → 이메일 / Slack / SMS
운영 프로세스
일일 모니터링 목록에 추가
AWS Health Dashboard를 일일 모니터링 체크리스트에 포함시켰습니다.
일일 모니터링 체크리스트:
☐ CloudWatch 알람 상태 확인
☐ ECS Task 상태 확인
☐ AWS Health Dashboard 확인 ← 추가
☐ Agent 동기화 상태 확인
사전 알림 수신 시 대응 절차
1. Health Dashboard 알림 수신 (이메일)
2. 영향 범위 파악 (어떤 서비스, 어떤 리전)
3. 사전 조치 실행
- ECS: 이미지 최신화, 롤링 업데이트 사전 실행
- Lambda: 런타임 버전 업데이트
4. 작업 예정 시간대에 모니터링 강화
5. 작업 완료 후 서비스 정상 동작 확인
정리
- AWS 내부 인프라 작업이 프로덕션에 직접 영향을 줄 수 있음을 실제 장애로 확인
- AWS User Notifications를 통한 이메일 알림 자동화 구축
- ECS Task Patching Retirement 등 관리형 서비스 이벤트 사전 감지
- 일일 모니터링 체크리스트에 Health Dashboard 추가
- 사전 알림 기반 조기 대응으로 운영 리스크 감소