본문 바로가기
terraform

[terraform] 테라폼 variable 사용법(테라폼 변수 사용법)

by devjh 2022. 5. 11.
반응형

이전 게시글에서 이어지는 내용입니다.

 

[terraform] terraform 시작하기 (terraform tutorial, 테라폼 예제)

aws를 잘 몰라도 테라폼을 할 수 있도록 간단한 예제 게시글을 작성합니다 vpc셋팅같이 aws 지식이 없을때 접근하기 힘든 리소스들 보다는 쉬운 s3버킷만 가지고 테라폼 사용법을 정리할 예정입니

frozenpond.tistory.com

 

이번 게시글에서는 terraform variable 테라폼 변수 사용법에 대해 정리합니다.

 

1. terraform variable이란

테라폼은 hcl syntax적 특징을 가진 언어로 변수가 존재합니다. 변수를 주입하는 방법에도 여러가지가 있으므로 자주 사용하는 방법에 대해 간단히 정리합니다.

 

마찬가지로  aws를 몰라도 쉽게 진행할 수 있도록 s3버킷으로 진행합니다.

 

소스코드는 아래의 깃헙레포에서 확인할수 있습니다(variable 브랜치에 있습니다.)

 

GitHub - jaeho310/terraform-study

Contribute to jaeho310/terraform-study development by creating an account on GitHub.

github.com

2. main.tf

provider "aws" {
#  profile = "your profile"
  region = "ap-northeast-2"
}

resource "aws_s3_bucket" "this" {
  bucket = var.bucket_name
}

저번게시글처럼 버킷만 생성할 겁니다.

이전 게시글에서는 bucket명에 직접 넣어줬지만 변수를 사용할꺼니 버킷명을 var.bucket_name으로 설정합니다.

 

3. variables.tf

variable "bucket_name" {
  type = string
}

variables.tf 파일에 main.tf에서 사용하기로 한 변수를 선언합니다.

변수가 선언되어 있어야 var.bucket_name을 사용할 수 있습니다.

type과 default value를 설정할 수 있습니다.

 

4. terraform.tfvars

bucket_name = "my-terraform-bucket-02"

terraform.tfvars 파일에서 선언한 변수에 값을 넣어줍니다.

3번의 variable쪽에 default값이 없다면 누군가는 변수의 값을 채워줘야합니다.
module로 가져가서 채우거나, tfvars를 작성해서 채워줍니다.

변수명을 채우지 않으면 plan시 직접 입력을 할 수도 있습니다.

 

5. 확인

$ terraform init
$ terraform plan
$ terraform apply
$ terraform state list

버킷이 잘 생성됐는지 확인합니다.

(다음 게시글을 위해 common/s3로 디렉토리 구조를 만들어놨습니다. s3디렉토리에서 명령어를 입력해서 진행합니다)

 

다음 게시글에서는 module 사용법에 대해 정리합니다.

 

[terraform] terraform module 사용법

이전 게시글에서 이어지는 내용입니다. [terraform] terraform variable 사용법(테라폼 변수 사용법) 이전 게시글에서 이어지는 내용입니다. [terraform] terraform 시작하기 (terraform tutorial, 테라폼 예제) a..

frozenpond.tistory.com

 

반응형

댓글