Terraform 개념과 자주 쓰이는 명령어
Terraform 개념
Terraform 이란?
- HCL (Hashicorp Configuration Language)를 사용해 클라우드 리소스를 선언할 수 있는 오픈소스 툴
- 일관된 워크플로를 사용하여 라이프사이클 전체에 걸쳐 모든 인프라를 프로비저닝 및 관리
- AWS, GCP, Azure와 같은 주요 클라우드 서비스를 지원
Terraform Workflow
- Write : 코드 형태로 리소스 정의
- Plan : Terraform은 기존 인프라와 구성에 따라 생성, 업데이트 혹은 삭제할 인프라 설정
- Apply : 리소스의 종속성을 확인하여 올바른 순서로 제안된 작업을 수행
Terraform 명령어
tarraform init
- Terraform 프로젝트 초기화
- 프로젝트에서 사용할 플러그인, 제공자, 모듈 등을 설정하고 다운로드하는 과정
terraform plan
- Terraform이 실행할 변경 사항의 계획을 보여줌
- 실제로 리소스를 생성 및 수정하지 않고, 추가/변경/삭제되는 리소스 확인 가능
- apply를 하기 전에 확인함으로써 의도치 않는 변경 방지
terraform apply
- 실제로 인프라 변경 사항을 적용
- 변경 사항이 적용된 후 상태 파일에 새로운 인프라 상태를 저장
- 참고 : apply는 plan가 선행되지 않아도 실행 가능
terraform destroy
- 현재 terraform 상태에 있는 모든 인프라 리소스를 삭제
- 인프라 리소스가 더 이상 필요 없을 때 사용하는 명령어
추가 명령어
- terraform fmt : 코드 스타일을 표준 형식으로 자동으로 맞춰줌
- terraform validate : 작성된 terraform 코드가 문법적으로 올바른지 확인
- terraform show : 현재 terraform 상태 파일을 읽어 현재 인프라 상태 출력
- terraform output : terraform이 생성한 리소스의 output 값 표시
- terraform refresh : 실제 인프라 상태를 확인해 terraform 상태 파일 동기화
- terraform graph : terraform 구성을 시각적으로 표현하는 그래프 생성
Reference
'Infra > Terraform' 카테고리의 다른 글
[Terraform] Terraform 설치 방법 (Windows) (1) | 2024.10.04 |
---|