🏗️
02 / 09
인프라 & IaC
Terraform 설정 스터디, AWS CLI vs Terraform, CloudFormation 비교, 멀티 리전 IaC 구성
TerraformIaCMulti-Region
왜 Terraform을 선택했는가
DR 환경 구축은 Primary Region(Seoul)과 동일한 인프라를 Secondary Region(Oregon)에 재현해야 하는 작업이었다. 초기에는 AWS CLI와 콘솔을 병행하며 리소스를 하나씩 생성했지만, 리소스 수가 늘어나면서 몇 가지 문제가 드러났다.
🔁
반복 작업의 비효율
VPC, Subnet, Security Group, NLB, EC2, ECS 등 동일한 리소스를 리전만 바꿔서 다시 생성해야 했다. CLI 스크립트로 자동화하더라도 상태 관리가 안 되니 어떤 리소스가 이미 생성됐는지 추적이 어려웠다.
📋
설정 드리프트
콘솔에서 수동으로 변경한 설정이 코드에 반영되지 않아, 실제 인프라와 문서 사이에 괴리가 생겼다. DR 훈련 때마다 '이거 맞나?' 하고 확인하는 시간이 늘어났다.
👥
팀 협업
DR 작업은 혼자 하는 게 아니라 운영 담당자들과 함께 진행한다. 인프라 변경 이력이 코드로 남아야 리뷰도 가능하고, 누가 뭘 바꿨는지 추적할 수 있다.
이런 이유로 Terraform을 도입했다. 멀티 리전 인프라를 코드로 선언하고, 상태를 S3 + DynamoDB로 원격 관리하며, 모듈화를 통해 Seoul과 Oregon에 동일한 구성을 재사용할 수 있게 했다.