인프라를 만들고, 변경하고, 기록하는 도구
AWS, Azure, GCP같은 퍼블릭 클라우드 뿐 만이 아니라 다양한 서비스들 지원
provider
provider "aws" {
region = "ap-northeast-2"
version = "~> 3.0"
}
resource
resource "aws_vpc" "example" {
cidr_block = "10.0.0.0/16"
}
state
output
output "cidr_block" {
value = aws_vpc.default.cidr_block
}
module
module "vpc" {
source = "../_modules/vpc"
cidr_block="10.0.0.0/16"
}
remote
data "terraform_remote_state" "vpc" {
backend = "remote"
config = {
bucket = "terraform-s3-bucket"
region = "ap-northeast-2"
key = "terraform/vpc/terraform/sfstate"
}
}
```
init -> plan -> Apply