Notice
Recent Posts
Recent Comments
Link
«   2026/03   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
Archives
Today
Total
관리 메뉴

사고쳤어요

IaC와 Terraform 본문

웹 풀스택

IaC와 Terraform

kevinmj12 2025. 5. 18. 22:53

IaC(Infrastructure as Code)는 서버, 네트워크, 데이터베이스, 로드 밸런서 등의 인프라를 코드로 정의하고 관리하는 방법이다.

IaC는 다음과 같은 특징을 가지고 있다.

  • 인프라 구성을 사람이 수동으로 하지 않고, 코드를 통해 자동화한다.
  • 코드이므로 버전 관리(Git 등)가 가능하며, 테스트 및 재현성 확보가 쉽다.
  • 배포가 일관되고, 반복 가능하며, 자동화 도구와 결합하여 DevOps에 최적화된다.

 

IAC의 종류

  • Provisioning Tool
    • 운영팀에서 개발팀이 필용한 라이브러리 또는 서비스를 설치하는 것을 의미한다.
    • Terraform, Cloudformation 등이 있다.
  • SCM Tool
    • 시스템 프로세스로 라이프사이클 전반에 걸친 요구사항, 설계 및 운영 정보의 일관성을 설정하고 유지한다.
    • Chef, Puppet, Ansible 등이 있다.

 

Terraform

https://developer.hashicorp.com/terraform

 

Terraform | HashiCorp Developer

Explore Terraform product documentation, tutorials, and examples.

developer.hashicorp.com

 

Terraform은 오픈소스 IaC 도구로 HashiCorp에서 개발하였다.

Terraform을 사용하면 코드를 통해 인프라 서버를 구축, 운영할 수 있게 되며 다음과 같은 특징이 있다.

 

  • AWS, Azure 등 다양한 클라우드 인프라에 사용할 수 있다.
  • 선언형으로 구성되어 있어 "무엇을 원하는가"를 정의하면 "어떻게 만드는가"를 수행해준다.
  • 인프라의 현재 상태를 파일로 관리하여 변경 사항을 추적할 수 있다.