Terraform Associate — Core Terraform Workflow 개념 정리

개념(한글) + 시험용 영어 표현 매칭 대응 objective: Objective 3 (Core Terraform Workflow)


3a. 워크플로우 설명 (Describe the Terraform workflow)

핵심 워크플로우

  • Terraform의 기본 흐름은 Write → Plan → Apply
  • Write: HCL로 인프라 구성 작성
  • Plan: 적용 전 변경 사항 미리 확인
  • Apply: 실제 인프라에 변경 반영
개념영어 표현
구성 작성Write
실행 계획 미리보기Plan
변경 적용Apply
핵심 워크플로우Write → Plan → Apply

전체 명령 흐름 (자주 쓰는 순서)

  • terraform init → terraform plan → terraform apply → (필요 시) terraform destroy
  • 스타일 정리는 terraform fmt, 문법 검증은 terraform validate

3b. 작업 디렉토리 초기화 (terraform init)

terraform init

  • 새 구성이나 클론한 구성을 처음 실행할 때 반드시 수행
  • 필요한 provider 플러그인 다운로드·설치
  • backend 초기화 (state 저장 위치 설정)
  • module 다운로드
  • .terraform 디렉토리와 .terraform.lock.hcl 생성
개념영어 표현
작업 디렉토리 초기화initialize working directory
provider 설치install provider plugins
백엔드 초기화initialize the backend
모듈 다운로드download modules
provider 버전 업그레이드terraform init -upgrade

3c. 구성 검증 (terraform validate)

terraform validate

  • 구성 파일의 문법 및 내부 일관성이 올바른지 검사
  • 실제 인프라나 원격 상태에 접근하지 않음 (오프라인 검증)
  • init 이후에 실행 가능 (provider 정보 필요)
개념영어 표현
구성 유효성 검증validate the configuration
문법 검사check syntax / internal consistency
인프라 접근 안 함does not access remote state or APIs

3d. 실행 계획 생성·검토 (terraform plan)

terraform plan

  • 현재 state와 원하는 구성을 비교해 어떤 변경이 일어날지 미리 보여줌
  • 실제 인프라는 변경하지 않음 (dry run 성격)
  • 생성(+), 변경(~), 삭제(-)될 리소스를 표시
  • -out 옵션으로 계획을 파일로 저장해 apply에 그대로 사용 가능
개념영어 표현
실행 계획 생성generate an execution plan
변경 미리보기preview changes
생성/변경/삭제 표시add (+) / change (~) / destroy (-)
계획 저장terraform plan -out=

3e. 변경 적용 (terraform apply)

terraform apply

  • plan을 실행해 실제 인프라에 변경을 반영
  • 기본적으로 적용 전 승인(yes) 요구
  • 저장된 plan 파일을 넘기면 승인 없이 그대로 적용
  • 자동 승인은 -auto-approve
개념영어 표현
변경 적용apply changes to infrastructure
승인 요구prompts for approval (yes)
자동 승인terraform apply -auto-approve
저장된 계획 적용terraform apply <PLAN_FILE>

3f. 인프라 파기 (terraform destroy)

terraform destroy

  • Terraform이 관리하는 모든 리소스를 삭제
  • 삭제 전 승인 요구, 자동 승인은 -auto-approve
  • 특정 리소스만 지우려면 -target 사용 가능
개념영어 표현
인프라 파기destroy managed infrastructure
승인 요구prompts for approval
특정 리소스 지정terraform destroy -target=

3g. 포맷·스타일 정리 (terraform fmt)

terraform fmt

  • 구성 파일을 **표준 스타일(들여쓰기, 정렬)**에 맞게 자동 정리
  • 가독성·일관성 향상, 팀 협업 시 코드 스타일 통일
  • 변경 없이 확인만: -check, 하위 디렉토리까지: -recursive
개념영어 표현
코드 포맷 정리format configuration files
표준 스타일 적용apply canonical formatting / style
검사만 수행terraform fmt -check
하위 디렉토리 포함terraform fmt -recursive

요약

명령역할
terraform init작업 디렉토리 초기화 (provider·backend·module)
terraform validate문법·일관성 검증 (인프라 접근 X)
terraform plan변경 사항 미리보기 (dry run)
terraform apply실제 인프라에 변경 적용 (승인 필요)
terraform destroy관리 리소스 전체 삭제
terraform fmt코드 스타일·포맷 정리
핵심 흐름Write → Plan → Apply