Skip to content

Azure Networking Module

Requirements

Name Version
terraform >= 1.0
azurerm >= 4.0

Providers

Name Version
azurerm >= 4.0

Resources

Name Type
azurerm_nat_gateway.this resource
azurerm_nat_gateway_public_ip_association.this resource
azurerm_network_security_group.subnets resource
azurerm_public_ip.nat_gateway resource
azurerm_subnet.this resource
azurerm_subnet_nat_gateway_association.this resource
azurerm_subnet_network_security_group_association.subnets resource
azurerm_virtual_network.this resource
azurerm_virtual_network_dns_servers.this resource
azurerm_virtual_network_peering.from resource
azurerm_virtual_network_peering.to resource

Inputs

Name Description Type Default Required
dns_servers List of DNS servers for the Vnet to use. The default, NULL, will use 'Azure Provided Dns Servers' list(string) null no
naming Required. Naming Convention Template string n/a yes
nat_gateway_zones Optional. Availability zones to allocate Public IP in list(string)
[
"1"
]
no
peerings Optional
map(object({ # Optional
name = string
allow_virtual_network_access = bool
allow_forwarded_traffic = bool
remote_vnet_id = string
use_remote_gateways = bool
}))
{} no
rg Required. Resource Group object
object({
location = string
name = string
})
n/a yes
subnets Required. Note, 'enable_network_policies' refers to only PEs and NSGs/UDRs. By default traffic to PEs aren't evaluated by NSGs/UDRs, but this enables that.
map(object({
cidr = string
nat_gateway = optional(bool, true)
enable_network_policies = optional(bool, true)
service_endpoints = optional(list(string), [])

delegations = optional(set(object({
name = string
actions = list(string)
})), [])
}))
n/a yes
tags Tags to be merged with module tags (forming local.tags) map(string) {} no
vnet_address_space Required. List of CIDR networks list(string) n/a yes

Outputs

Name Description
vnet n/a