root@command2:~/terraform-provider-ncloud-main/examples/nks# ls backup main.tf nat.tf pub1.tf terraform.tfstate terraform.tfstate.backup variables.tf versions.tf root@command2:~/terraform-provider-ncloud-main/examples/nks# root@command2:~/terraform-provider-ncloud-main/examples/nks# more *.tf :::::::::::::: main.tf :::::::::::::: # VPC > User scenario > Scenario 1. Single Public Subnet # https://docs.ncloud.com/ko/networking/vpc/vpc_userscenario1.html provider "ncloud" { support_vpc = true region = "KR" access_key = var.access_key secret_key = var.secret_key } resource "ncloud_vpc" "vpc" { name = "vpc" ipv4_cidr_block = "10.0.0.0/16" } resource "ncloud_subnet" "node_subnet" { vpc_no = ncloud_vpc.vpc.id subnet = "10.0.1.0/24" zone = "KR-1" network_acl_no = ncloud_vpc.vpc.default_network_acl_no subnet_type = "PRIVATE" name = "node-subnet" usage_type = "GEN" } resource "ncloud_subnet" "lb_subnet" { vpc_no = ncloud_vpc.vpc.id subnet = "10.0.100.0/24" zone = "KR-1" network_acl_no = ncloud_vpc.vpc.default_network_acl_no subnet_type = "PRIVATE" name = "lb-subnet" usage_type = "LOADB" } resource "ncloud_subnet" "lb_subnet2" { vpc_no = ncloud_vpc.vpc.id subnet = "10.0.102.0/24" zone = "KR-1" network_acl_no = ncloud_vpc.vpc.default_network_acl_no subnet_type = "PUBLIC" name = "lb-subnet2" usage_type = "LOADB" } /* data "ncloud_nks_versions" "version" { filter { name = "value" values = [var.nks_version] regex = true } } resource "ncloud_login_key" "loginkey" { key_name = var.login_key } */ /* resource "ncloud_nks_cluster" "cluster" { cluster_type = "SVR.VNKS.STAND.C002.M008.NET.SSD.B050.G002" k8s_version = data.ncloud_nks_versions.version.versions.0.value login_key_name = ncloud_login_key.loginkey.key_name name = "sample-cluster" lb_private_subnet_no = ncloud_subnet.lb_subnet.id lb_public_subnet_no = ncloud_subnet.lb_subnet2.id kube_network_plugin = "cilium" subnet_no_list = [ ncloud_subnet.node_subnet.id ] vpc_no = ncloud_vpc.vpc.id zone = "KR-1" log { audit = true } } data "ncloud_nks_server_images" "image"{ hypervisor_code = "XEN" filter { name = "label" values = ["ubuntu-20.04"] regex = true } } data "ncloud_nks_server_products" "nks_products"{ software_code = data.ncloud_nks_server_images.image.images[0].value zone = "KR-1" filter { name = "product_type" values = [ "STAND"] } filter { name = "cpu_count" values = [ "2"] } filter { name = "memory_size" values = [ "8GB" ] } } resource "ncloud_nks_node_pool" "node_pool" { cluster_uuid = ncloud_nks_cluster.cluster.uuid node_pool_name = "pool1" node_count = 1 software_code = data.ncloud_nks_server_images.image.images[0].value product_code = data.ncloud_nks_server_products.nks_products.products[0].value subnet_no_list = [ncloud_subnet.node_subnet.id] autoscale { enabled = true min = 1 max = 2 } label { key = "foo" value = "bar" } taint { key = "foo" value = "bar" effect = "NoExecute" } } */ :::::::::::::: nat.tf :::::::::::::: resource "ncloud_subnet" "subnet_scn_02_public_natgw" { # vpc_no = ncloud_vpc.vpc_scn_02.id vpc_no = ncloud_vpc.vpc.id # subnet = cidrsubnet(ncloud_vpc.vpc_scn_02.ipv4_cidr_block, 8, 2) subnet = "10.0.2.0/24" // "10.0.2.0/24" zone = "KR-1" network_acl_no = ncloud_vpc.vpc.default_network_acl_no # network_acl_no = ncloud_network_acl.network_acl_02_public.id subnet_type = "PUBLIC" usage_type = "NATGW" } # NAT Gateway resource "ncloud_nat_gateway" "nat_gateway_scn_02" { # vpc_no = ncloud_vpc.vpc_scn_02.id vpc_no = ncloud_vpc.vpc.id subnet_no = ncloud_subnet.subnet_scn_02_public_natgw.id zone = "KR-1" name = var.name_scn02 #name = "nat_gateway_scn_02" } # Route Table resource "ncloud_route" "route_scn_02_nat" { route_table_no = ncloud_vpc.vpc.default_private_route_table_no destination_cidr_block = "0.0.0.0/0" target_type = "NATGW" // NATGW (NAT Gateway) | VPCPEERING (VPC Peering) | VGW (Virtual Private Gateway). target_name = ncloud_nat_gateway.nat_gateway_scn_02.name target_no = ncloud_nat_gateway.nat_gateway_scn_02.id } :::::::::::::: pub1.tf :::::::::::::: resource "ncloud_subnet" "pup1_subnet" { vpc_no = ncloud_vpc.vpc.id subnet = "10.0.0.0/24" zone = "KR-1" network_acl_no = ncloud_vpc.vpc.default_network_acl_no subnet_type = "PUBLIC" name = "pub1-subnet" usage_type = "GEN" } :::::::::::::: variables.tf :::::::::::::: variable name { default = "tf-nks" } variable client_ip { default = "21.1.1.52" } variable access_key { default = "sH72BVa" } variable secret_key { default = "Vpy81lnQPel" } variable name_scn02 { default = "tf-scn02" } :::::::::::::: versions.tf :::::::::::::: terraform { required_providers { ncloud = { source = "navercloudplatform/ncloud" } } required_version = ">= 0.13" } root@command2:~/terraform-provider-ncloud-main/examples/nks#