Terraform — 인프라가 코드가 되다
Entity (인물·조직)lectureverified2026-05-09

Terraform — 인프라가 코드가 되다

#vch#lecture-intro#C-se-tool#se-g5

Terraform — 인프라가 코드가 되다

1. 요약

Terraform 은 2014년 7월 HashiCorp (Mitchell Hashimoto, 2012년 창립) 가 출시한 플랫폼 비종속 IaC (Infrastructure as Code) 도구 다. 첫 버전 0.1 은 AWS 와 DigitalOcean 만 지원했다. HCL (HashiCorp Configuration Language) 이라는 선언적 언어 로 인프라를 기술 → Terraform 이 원하는 상태로 수렴.

2. 배경 (이전 도구의 한계)

AWS CloudFormation (2011) 은 강력했지만 AWS 종속 이었다. Multi-cloud, hybrid cloud 시대에는 플랫폼 비종속 이 필요했다. Mitchell Hashimoto 의 통찰: "CloudFormation 의 좋은 점 + 오픈소스 + 모든 클라우드" 가 답.

3. 핵심 개념·표기법

Terraform HCL 예시:

resource "aws_instance" "web" {
  ami           = "ami-0c55b159cbfafe1f0"
  instance_type = "t2.micro"
  
  tags = {
    Name = "web-server"
  }
}

핵심 개념:

  • Declarative — 원하는 상태 기술 (procedural ❌)
  • State File — 현재 상태 추적 (terraform.tfstate)
  • Plan / Apply — 변경 미리 보기 → 실행
  • Modules — 재사용 가능 단위
  • Providers — AWS·Azure·GCP·K8s·1,000+ 통합

4. 언어·OS 매핑 (★ 강의 핵심)

시대환경Terraform 활용
2014~16AWS, DigitalOcean초기 채택
2016~모든 클라우드★ Multi-cloud 표준
2018~Kubernetes ProviderK8s 인프라 자동화
2023BSL 라이센스 변경OpenTofu 포크 (오픈소스 유지)
2024~+ AILLM 이 HCL 자동 생성

★ Terraform 의 선언적 코드 = 인프라 패턴이 LLM 시대에 선언적 코드 = LLM 명세 로 진화했다. 언어 (HCL → 자연어) 만 바뀌었지 패턴은 동일.

5. 현대까지의 영향

  • Pulumi (2018) — 일반 프로그래밍 언어 (Python, TS) 로 IaC
  • AWS CDK — TypeScript/Python 으로 CloudFormation 생성
  • Crossplane — Kubernetes-native IaC
  • OpenTofu (2023) — Terraform BSL 변경 후 오픈소스 포크
  • AI Spec → Terraform — Claude Code, Cursor 가 자동 생성

6. 주요 인물·사건

연도사건
2011Hashimoto 블로그 — 오픈소스 cloud-agnostic CloudFormation 의 필요
2012HashiCorp 창립
2014 7월Terraform 0.1 출시 (AWS + DigitalOcean)
2015~16플러그인 생태계 폭발
2018Kubernetes Provider
2023BSL 라이센스 — OpenTofu 포크
2024AI 자동 HCL 생성 도구화

7. 강의 활용

"인프라조차 코드가 되었다 → 그러면 코드 자체는 무엇이 되는가?" 의 흐름. 선언적 명세 + 자동 수렴 이라는 원리는 인프라뿐 아니라 AI 에이전트 운영 에도 적용 — Spec 파일이 곧 인프라 정의 와 같다.

출처

그룹 시리즈

synthesis/group-se_g5 (시대 그룹 종합 카드)