vpc_network

airasia/vpc_network/google

Terraform Module HCL GOOGLE

Terraform module for a VPC Network in GCP

Install
module "vpc_network" {
source = "airasia/vpc_network/google"
version = "3.0.0"
}
plain text: /constructs/tfmod-airasia-vpc-network-google/install.txt
⭐ Source on GitHub 📦 Registry page
README

Terraform module for a VPC Network in GCP Upgrade guide from v2.15.0 to v3.0.0 var.ip_ranges.private_g_services now expects list of CIDR strings instead of just 1 CIDR string so we can have additional CIDR ranges for private service access. For example, `` module "vpc" { source = "airasia/vpc_network/google" version = "2.15.0" name_suffix = local.name_suffix ip_ranges = { private_primary = "10.20.0.0/16" private_k8s = [{ pods_rname = "", pods_cidr = "10.21.0.0/16", svcs_rname = "", svcs_cidr = "10.22.0.0/16" }] private_redis = [] private_g_services = "10.24.0.0/16" # 1 CIDR string proxy_only = "10.25.0.0/26" serverless_access = ["10.26.0.0/28"] } } ` Needs to be updated the following way : ` module "vpc" { source = "airasia/vpc_network/google" version = "3.0.0" name_suffix = local.name_suf

Inputs (25)
NameTypeDescriptionDefault
name_suffixstringAn arbitrary suffix that will be added to the end of the resource name(s). For e required
ip_rangesobject({ private_primary A map of CIDR IP ranges (including their /x parts) that should be reserved by th required
nat_select_generated_ipsstringThis value decides whether (or not) (or how many of) the manual IPs created via "ALL"
name_vpc_networkstringPortion of name to be generated for the VPC network."vpc-network"
name_private_subnetstringPortion of name to be generated for the private subnet."private-subnet"
name_cloud_routerstringPortion of name to be generated for the Cloud Router."cloud-router"
name_g_services_addressstringPortion of name to be generated for the internal IP address that will be created"gservices-address"
name_cloud_natstringPortion of name to be generated for the Cloud NAT."cloud-nat"
nat_generate_ips_namestringPortion of name to be generated for the static/manual NAT IP addresses if value "nat-manual-ip"
nat_min_ports_per_vmnumberMinimum number of ports reserved by the Cloud NAT for each VM. The number of por64
nat_enable_eimboolSpecifies if Endpoint-Independent-Mapping is enabled. See https://cloud.google.cfalse
subnet_timeoutstringhow long a subnet operation is allowed to take before being considered a failure"10m"
name_proxy_only_subnetstringPortion of name to be generated for the proxy-only subnet."proxy-only-subnet"
vpc_descriptionstringThe description of the VPC Network."Generated by Terraform"
private_subnet_descriptionstringThe description of the private subnet."Generated by Terraform for private use"
proxy_only_subnet_descriptionstringThe description of the proxy-only subnet."Generated by Terraform for proxy-only s
nat_generate_ips_countnumberThe number of static/manual IPs that should be created for the Cloud NAT. Useful1
external_ips_regionallist(map(string))A list of REGIONAL external IPs to be created that can be used for external load[]
router_timeoutstringhow long a Cloud Router operation is allowed to take before being considered a f"5m"
nat_timeoutstringhow long a Cloud NAT operation is allowed to take before being considered a fail"10m"
external_ips_globallist(map(string))A list of GLOBAL external IPs to be created that can be used for external load-b[]
enable_dynamic_port_allocationbool(Optional) Enable Dynamic Port Allocation. If minPortsPerVm is set, minPortsPerV"false"
Outputs (17)
cloud_nat_ips_generated — External IP addresses created for (but not necessarily attached to) the VPC's Cloud NAT. This will r
ip_range_names_private_k8s_services — Name of the private subnet IP range for k8s/GKE services.
ip_range_proxy_only — IP range of proxy_only subnet that enables internal HTTP(S) load balancing. See https://cloud.google
network_name — The generated name of the VPC network.
private_subnet — A reference (self_link) to the Private SubNetwork.
regional_external_ips
ip_range_private_g_services — Private subnet IP range for Google service producers. Eg: CloudSQL, Firebase, Redis, Memcache Etc.
ip_ranges_serverless_access — IP ranges for zero or more Serverless VPC Access.
peered_google_services — The google services producers that are peered with the VPC.
global_external_ips
network — A reference (self_link) to the VPC network.
network_id — The identifier of the VPC network with format projects/{{project}}/global/networks/{{name}}.
cloud_router — A reference (self_link) to the Cloud Router.
ip_ranges_private_redis_store — List of private subnet IP ranges for redis MemoryStore.
cloud_nat_id — A full resource identifier of the Cloud NAT.
cloud_nat_ips_attached — IP addresses attached to the VPC's Cloud NAT.
ip_range_names_private_k8s_pods — Name of the private subnet IP range for k8s/GKE pods.
Resources (8)
google_compute_addressgoogle_compute_global_addressgoogle_compute_networkgoogle_compute_routergoogle_compute_router_natgoogle_compute_subnetworkgoogle_project_servicegoogle_service_networking_connection
Details
FrameworkTerraform Module
LanguageHCL
Version3.0.0
Cloud GOOGLE
★ Stars1
Forks11
Total downloads86.5k
Inputs25
Outputs17
Resources8
LicenseGPL-3.0
Namespaceairasia
Updated