resource "aws_vpc" "main" {
cidr_block = "10.0.0.0/16"
instance_tenancy = "default"
tags = {
Name = "main"
}
}
resource "aws_subnet" "main" {
vpc_id = aws_vpc.main.id
cidr_block = "10.0.1.0/24"
tags = {
Name = "Main"
}
}
- 가용 영역을 추가
- 인스턴스 생성 시 public ip를 할당 받도록 하겠다는 옵션이다.
provider "aws" {
region = "ap-northeast-2"
}
resource "aws_vpc" "vpc-10-10-0-0" {
cidr_block = "10.10.0.0/16"
instance_tenancy = "default"
enable_dns_hostnames = true
tags = {
Name = "vpc-10-10-0-0"
}
}
resource "aws_subnet" "sub-pub1-10-10-1-0" {
vpc_id = aws_vpc.vpc-10-10-0-0.id
cidr_block = "10.10.1.0/24"
availability_zone = "ap-northeast-2a"
map_public_ip_on_launch = true
tags = {
Name = "sub-pub1-10-10-1-0"
}
}
resource "aws_subnet" "sub-pub2-10-10-2-0" {
vpc_id = aws_vpc.vpc-10-10-0-0.id
cidr_block = "10.10.2.0/24"
availability_zone = "ap-northeast-2c"
map_public_ip_on_launch = true
# 이 부분 때문에 public ip가 부여 된다.
tags = {
Name = "sub-pub1-10-10-2-0"
}
}
resource "aws_subnet" "sub-pri1-10-10-3-0" {
vpc_id = aws_vpc.vpc-10-10-0-0.id
cidr_block = "10.10.3.0/24"
availability_zone = "ap-northeast-2a"
# pri이기 떄문에 pub과 다르게 이부분이 없다.
tags = {
Name = "sub-pub1-10-10-3-0"
}
}
resource "aws_subnet" "sub-pri2-10-10-4-0" {
vpc_id = aws_vpc.vpc-10-10-0-0.id
cidr_block = "10.10.4.0/24"
availability_zone = "ap-northeast-2c"
tags = {
Name = "sub-pub1-10-10-4-0"
}
}
- 위와 같이 코드를 작성하고 plan 후 apply하게 되면 vpc 및 subnet이 생성된다.
728x90
'Cloud > Terraform' 카테고리의 다른 글
Terraform - Private subnet용 Route table 구성 (0) | 2022.07.09 |
---|---|
Terraform - Internet Gateway 생성 및 Public subnet용 Route table 구성 (0) | 2022.07.09 |
Terraform - VPC.tf 생성 및 Custom VPC 구성 (0) | 2022.07.09 |
Terraform - Target Attachment (1. 직접 입력 / 2. Loop문 사용) 및 ALB 테스트 (0) | 2022.07.08 |
Terraform - Listener 구성 (0) | 2022.07.07 |