Files
gcp-simple-lz/modules/network/main.tf
T

31 lines
986 B
Terraform

# VPC
resource "google_compute_network" "network" {
name = var.name
auto_create_subnetworks = false
}
# Subnets
resource "google_compute_subnetwork" "subnet" {
count = length(var.subnets)
name = var.subnets[count.index].name
ip_cidr_range = var.subnets[count.index].cidr
region = var.subnets[count.index].region != null ? var.subnets[count.index].region : var.subnets[0].region
network = google_compute_network.network.id
}
# Cloud NAT
resource "google_compute_router" "cr" {
name = "${var.name}-router"
network = var.name
depends_on = [google_compute_network.network]
}
resource "google_compute_router_nat" "nat" {
name = "${var.name}-nat"
router = google_compute_router.cr.name
nat_ip_allocate_option = "AUTO_ONLY"
source_subnetwork_ip_ranges_to_nat = "ALL_SUBNETWORKS_ALL_IP_RANGES"
enable_dynamic_port_allocation = true
}