처음 시작하는 Infrastructure as Code: AWS & 테라폼을 수강하며 정리한 내용입니다.
chapter8
디렉토리를 만들고 그 안에서 provider.tf
파일 작성vim provider.tf
provider "aws" {
region = "ap-northeast-2"
}
terraform init
으로 초기화chapter8
디렉토리 안에서 vpc.tf
파일 작성vim vpc.tf
aws_vpc
리소스를 사용cidr_block
설정은 필수resource "aws_vpc" "main" {
cidr_block = "10.0.0.0/16"
tags = {
Name = "terraform-101"
}
}
terraform plan
으로 리소스가 어떻게 만들어질지 확인terraform apply
로 리소스 생성aws_subnet
리소스를 사용CIDR
블록 내의 범위에서 서브넷의 cidr_block
을 설정하는 것은 필수chapter8
디렉토리 안에서 subnet.tf
파일 작성vim subnet.tf
id
를 가져올 수 있음availability_zone
은 명시하면 해당 영역에 서브넷이 만들어지고 명시하지 않으면 아무데나 만들어짐resource "aws_subnet" "public_subnet" {
vpc_id = aws_vpc.main.id
cidr_block = "10.0.0.0/24"
availability_zone = "ap-northeast-2a"
tags = {
Name = "terraform-101-public-subnet"
}
}
resource "aws_subnet" "private_subnet" {
vpc_id = aws_vpc.main.id
cidr_block = "10.0.10.0/24"
tags = {
Name = "terraform-101-private-subnet"
}
}
terraform plan
명령 실행terraform apply
로 리소스 생성terraform state list
명령어를 입력하면 생성된 리스트를 볼 수 있음vpc.tf
)에 작성해도 됨resource "aws_vpc" "main" {
cidr_block = "10.0.0.0/16"
tags = {
Name = "terraform-101"
}
}
resource "aws_subnet" "public_subnet" {
vpc_id = aws_vpc.main.id
cidr_block = "10.0.0.0/24"
availability_zone = "ap-northeast-2a"
tags = {
Name = "terraform-101-public-subnet"
}
}
resource "aws_subnet" "private_subnet" {
vpc_id = aws_vpc.main.id
cidr_block = "10.0.10.0/24"
tags = {
Name = "terraform-101-private-subnet"
}
}