[TF] Terraform 작동원리와 CLI 실습

제이브로·2024년 6월 14일

Terraform

목록 보기
3/10
post-thumbnail

1. Provider

provider 생성

# provider.tf
provider "aws" {
	region = "ap-northeast-2"
}

1.1 terraform init

provider.tf를 생성 후, init시 다운로드 받는다.

$ terraform init

2. Resource

s3.tfresoruce 생성

#s3.tf
resource "aws_s3_bucket" "test" {
	bucket = "terraform101-inflearn"
}

2.1 terraform plan

만들어질 인프라를 보여준다

  • bucket은 필수 요소입니다.
$ terraform plan

terraform plan 명령어는 여러번 입력해도 실제 인프라에 영향이 가지 않는다.

3. terraform apply

실제로 인프라를 배포하기 위한 명령어

  • .tfstate 파일이 생성됩니다.
  • std input이 나옵니다.

4. terraform import

AWS 인프라에 배포된 리소스를 terraform state로 옮겨주는 작업

  • resourceimport 해보겠습니다.
  • terraform import {aws_s3_bucket}.{bucket} {bucket이름}
  • 생성한 resource를 확인
$ terraform import aws_s3_bucket.test terraform101-inflearn

만약 기존 인프라를 AWS에 배포한 상태에서 Terraform을 적용하고 싶으면, 모든 리소스를 terraform import로 옮겨야한다.
처음부터 다시 작업할 수 있지만, 실제 서비스가 되는 인프라를 내리는 건 위험하다.

5. terraform state list

생성한 리스트 확인

$ terraform state list

6. References

  1. 처음 시작하는 Infrastructure as Code: AWS & 테라폼
profile
기록하지 않으면 기록되지 않는다.

0개의 댓글