피드로 돌아가기
Dev.toInfrastructure
원문 읽기
단일 NAT Gateway 제거로 AZ 장애 시 Zero-Downtime 달성
How a Single NAT Gateway Can Silently Kill Your AWS High Availability
AI 요약
Context
다중 AZ 구조의 AWS 환경에서 비용 절감 및 설정 오류로 인해 모든 Private Subnet이 단일 NAT Gateway에 의존하는 구조적 결함 발생. AZ-A 장애 시 AZ-B의 인스턴스가 정상 작동함에도 불구하고 Outbound 트래픽 경로 단절로 인한 전체 서비스 불능 상태 초래.
Technical Solution
- NAT Gateway의 Zonal 특성을 고려한 AZ별 독립적 게이트웨이 배치
- 각 AZ의 Private Subnet 전용 Route Table을 생성하여 상호 의존성 제거
- AZ-B Private Subnet의 0.0.0.0/0 경로를 AZ-A에서 AZ-B NAT Gateway로 변경하여 Cross-AZ Dependency 해소
- Terraform을 통한 IaC 기반의 Route Table Association 강제 적용으로 Infrastructure Drift 방지
- 개별 AZ를 완전한 Failure Domain으로 격리하여 단일 지점 장애(SPOF) 원천 차단
실천 포인트
1. VPC 내 모든 Private Subnet의 Route Table이 각자 소속된 AZ의 NAT Gateway를 가리키는지 전수 조사
2. 수동 설정 대신 Terraform 등의 IaC를 사용하여 AZ별 독립적 Route Table 생성 및 연결 구조 자동화
3. AWS Well-Architected Framework의 Reliability Pillar 기준에 따른 Cross-AZ 의존성 점검