본문으로 건너뛰기
hannctl.
PDF ↓
← 모든 작업
04 / PF-04 · AWS · Terragrunt IaC 자동화

AWS Terragrunt DRY IaC.

Terraform 모듈 16개를 루트 설정 하나로 묶고, Terragrunt가 의존성 그래프를 읽어 순서대로 실행하게 한 구조입니다.

PERIOD
개인 프로젝트 · 2026.11 공개
MY ROLE
설계 · 구현
TOOLS & CONTEXT
Terragrunt · Terraform · AWS — 모듈 16개 · 유닛 16개 · 의존성 4단계
iam_custom_policyiam_useriam_custom_roleiam_groupvpcelastic_ipebsinternet_gatewaysecurity_groupvpc_endpointvpc_peeringelasticache_subnet_groupnat_gatewayroute_tableinstance_profileec2_instance
01 / CONTEXT

문제

Terraform 루트마다 backend와 provider 블록을 반복해서 썼고, 루트 사이의 실행 순서는 사람이 기억해야 했습니다.

02 / DECISIONS

접근

모듈은 일반 Terraform으로 두고 Terragrunt로 감쌌습니다. backend, provider, 공통 inputs는 live/root.hcl 한 곳에서 생성합니다. _envcommon이 모듈 source와 dependency를 맡고, 각 유닛은 자기 inputs만 적습니다. dependency 블록으로 그래프를 만들고 mock_outputs로 클라우드 없이 전체를 검증합니다.

03 / ENGINEERING

구현

  • Terragrunt
  • Terraform
  • AWS

규모 · 모듈 16개 · 유닛 16개 · 의존성 4단계

live/root.hclbackend · provider · 공통 inputslive/dev/account.hcl계정별 값<리전>/region.hcl리전별 값_envcommon/<module>.hclsource · dependency · mock_outputs<리소스>/terragrunt.hcl자기 inputs만 적음backend.tfprovider.tf루트 설정 1개가 복사본 16개를 대체
Terragrunt가 backend.tf와 provider.tf를 생성합니다. 루트 설정 1개가 복사본 16개를 대체합니다.
04 / VERIFICATION

결과

이 레포는 모듈 16개와 유닛 16개를 의존성 4단계로 묶고, 클라우드 자격증명 없이 전체를 검증합니다. 배포 시간 40% 단축은 실제 운영 환경을 이 패턴으로 옮겼을 때 얻은 결과입니다.

16
Terraform 모듈 · 유닛
1
복사본 16개를 대체한 루트 설정
-40%
배포 시간 단축 (실무 적용 결과)

MEASUREMENT 낮을수록 좋은 지표

이전 100
이후 60
측정 조건
배포 시간 단축 (실무 적용 결과)
해석 범위
전환 전을 100으로 둔 상대값
05 / REFLECTION

배운 점

Terragrunt는 Terraform을 대체하는 도구가 아니라 코드를 어디에 둘지 정리하는 도구라는 점이 핵심이었습니다. 모듈은 일반 Terraform으로 남기고 backend, provider, 공통 inputs는 루트 한 곳에서 만들게 하니, 같은 설정을 16번 복사하던 구조가 설정 하나를 고치면 전체에 반영되는 구조로 바뀌었습니다. 실행 순서도 dependency 블록으로 코드에 적어 두면 사람의 기억에서 그래프로 옮겨 가고, mock_outputs 덕분에 클라우드 자격증명 없이도 전체 연결을 검증할 수 있습니다. 데모에서는 state를 로컬에 두었지만 여러 사람이 함께 쓰는 환경이라면 state 위치부터 정해야 한다는 것도, 구조를 설계할 때 처음부터 고려할 부분으로 배웠습니다.

OUTCOME

의존성 4단계 — 유닛 16개, run-all로 순서 실행

공개 레포: pf-04-aws-terragrunt-dry-iac ↗

관련 현장 노트

NEXT / PF-05 · Multi-cloud · Python 멀티 클라우드 자산·감사 자동화

사이트 검색

바로 가기 ↑ ↓ 결과 이동 · Enter 열기 · Esc 닫기

테마 고르기

사원증을 누르면 그 테마로, 보던 내용과 같은 곳으로 이동합니다. 끌면 흔들리기만 합니다.

처음 화면으로 →