데브옵스
캐치테이블의 인프라를 관리하는 방법 (feat. Terraform, AWS)
두줄요약
캐치테이블이 Terraform과 AWS로 인프라를 토폴로지 기반으로 관리하는 방식을 소개했습니다.\n네트워크와 도메인, ACM을 분리 운영하며 운영 편의성과 안정성을 높인 사례입니다.
핵심 내용
- 캐치테이블 DevOps 팀의 Terraform 기반 인프라 관리 방식 소개
- AWS EKS 전환 과정에서 네트워크, 도메인, ACM 등 민감한 리소스를 토폴로지 YAML로 분리 관리
- S3와 DynamoDB 백엔드, 모듈화, local_file 템플릿으로 운영 편의성 강화
구조와 흐름
- network_topology에서 TGW, VPN, VPC Attachment와 Route Table을 토폴로지 파일로 조합
- domain_topology에서 Route53 호스트존과 ACM을 계정·리전 단위로 관리
- current_resource에서 생성된 리소스 정보를 Markdown 문서로 자동 생성
주의할 점
- ACM Validation 레코드는 계정·리전 조합에 따라 자동화가 까다로운 문제
- allow_overwrite 방식은 휴먼 에러로 인한 검증 레코드 삭제 위험 존재
- 민감 리소스는 실행 환경을 분리해 플랜 시간과 장애 위험을 줄이는 설계
