<BLOCK TYPE> "<BLOCK LABEL>" "<BLOCK LABEL>" {
# Block body
<IDENTIFIER> = <EXPRESSION> # Argument
}
//example
resource "aws_vpc" "main" {
cidr_block = var.base_cidr_block
}
<BLOCK TYPE>
- Terraform : Terraform의 version과 쓰려는 Terraform Registry에 있는 provider의 version 등을 선언
- Provider : provider에서의 설정값 등을 선언
- Local : local 변수를 가져오거나 선언
- Variable : Terraform module에 쓰일 parameter 값들을 가져옴
- Module : 함께 사용되는 여러 자원(resource)들의 묶음(container)
- Resource : 각 Resource는 하나 이상의 infra 객체를 나타냄 (VPC, Instance, DNS record 기타 등등..)
- Data : resource를 만들 때, provider에서 제공하는 다른 자원 정보가 필요한 경우, 해당 자원 정보를 가져오는 데 쓰임
- Output : Terraform module에서 return할 변수를 선언
출처
https://www.terraform.io/language
'IT > Devops' 카테고리의 다른 글
[Terraform] User Data, Provisioner 우선 순위 (0) | 2022.05.08 |
---|---|
[Terraform] for_each (0) | 2022.04.12 |
[Terraform] Module 기본 구조 (0) | 2022.03.16 |
HCL이란 (0) | 2022.03.15 |
[Terraform] State, Terraform Cloud (0) | 2022.03.14 |
댓글