본문 바로가기

네이버클라우드플랫폼(Ncloud)/테라폼

테라폼 subnet 생성(+인수참조)

이전 포스트와 연결됩니다.

테라폼 subnet 생성하기

resource "ncloud_vpc" "vpc" {
  name            = "vpc"
  ipv4_cidr_block = "10.0.0.0/16"
}

resource "ncloud_subnet" "subnet" {
  vpc_no         = ncloud_vpc.vpc.id
  subnet         = "10.0.1.0/24"
  zone           = "KR-2"
  network_acl_no = ncloud_vpc.vpc.default_network_acl_no
  subnet_type    = "PUBLIC" // PUBLIC(Public) | PRIVATE(Private)
  // below fields is optional
  name           = "subnet-01"
  usage_type     = "GEN"    // GEN(General) | LOADB(For load balancer)
}


https://registry.terraform.io/providers/NaverCloudPlatform/ncloud/latest/docs/resources/subnet

 

Terraform Registry

 

registry.terraform.io

vpc.tf(연속해서 적었습니다.)

 

#vpc.tf
// VPC 이름
variable "pnoun" {
  type = string
  default = "bo20cy"
}
// VPC CIDR
variable "vpc_cidr_block" {
  type = string
  default = "10.2.0.0/16"
}
// VPC 생성
resource "ncloud_vpc" "create_vpc" {
    name = "${var.pnoun}--vpc"
    ipv4_cidr_block = var.vpc_cidr_block
}
// Subnet을 생성할 Zone 선택(ex:KR-1,KR-2...)
variable "zone" {
  type = string
  default="KR-2"
}
// Subnet 사용 대역
variable "subnet_CIDR" {
  type = list
  default= ["10.2.11.0/24", "10.2.12.0/24"]
}
// NACL 생성
resource "ncloud_network_acl" "create_nacl" {
   vpc_no      =  ncloud_vpc.create_vpc.id
   name        = "${var.pnoun}-nacl"
   description = "${var.pnoun}용 nacl"
 }
// Subnet 생성
resource "ncloud_subnet" "create_subnet" {
  vpc_no = ncloud_vpc.create_vpc.id
  subnet = "${var.subnet_CIDR[0]}"
  zone = var.zone
  network_acl_no = ncloud_network_acl.create_nacl.network_acl_no
  subnet_type = "PUBLIC"  // PUBLIC(Public) | PRIVATE(Private)
  name = "${var.pnoun}-pub--sub"
  usage_type = "GEN"
}
~


subnet 존과 대역을 변수로 정의 하였고

nacl도 미리 정의해여 디폴트값이 안들어가도록 했습니다.

subnet에 `${var.subnet_CIDR[0]}`는 subnet 에 처음 값인 10.2.11.0/24가 들어가는 것입니다.

 

 

 

terraform plan

 

terraform apply

 

 

출처 : 작성중..