피드로 돌아가기
Dev.toInfrastructure
원문 읽기
IAM Eventual Consistency 및 Stack Drift 해결을 통한 IaC 안정성 확보
CloudFormation in Production: What Breaks and How to Fix It
AI 요약
Context
CloudFormation 기반 인프라 운영 중 문서에 명시되지 않은 런타임 오류와 자원 간 의존성 문제 발생. 특히 IAM 전파 지연과 Nested Stack의 불투명한 에러 전파로 인해 프로덕션 환경의 배포 안정성 저하.
Technical Solution
- IAM 전파 지연으로 인한 리소스 생성 실패 방지를 위해
DependsOn속성을 통한 명시적 순서 제어 CreationPolicy와cfn-signal을 활용하여 EC2 및 Custom Resource의 실제 서비스 가동 상태를 검증하는 신호 체계 구축- Nested Stack의 계층 구조를 최대 2단계로 제한하여 에러 추적 가능성 확보 및
validate-template를 통한 사전 검증 수행 DeletionPolicy: Retain설정을 통해 상태 저장 리소스(Stateful Resource)의 데이터 유실을 방지하는 롤백 전략 수립Drift Detection자동화를 통한 Console 직접 수정 사항 탐지 및 Git 기반의 Infrastructure State 일치성 유지
실천 포인트
- IAM Role 생성 리소스를 사용하는 타 리소스에 `DependsOn` 필수 적용 - Custom Resource Lambda 구현 시 Exception 발생 시에도 반드시 `FAILED` 응답을 전송하도록 예외 처리 - 프로덕션 스택 내 리소스 수를 200개 이하로 유지하여 배포 시간 및 복잡도 최적화 - 상태 저장 리소스와 무상태 리소스를 별도 스택으로 분리하여 롤백 리스크 최소화 - CI 파이프라인 내 `cfn-lint` 및 `cfn-guard` 도입을 통한 템플릿 정적 분석 수행