45 lines
2.8 KiB
Markdown
45 lines
2.8 KiB
Markdown
# Cloud NAT Module
|
|
|
|
Simple Cloud NAT management, with optional router creation.
|
|
|
|
## Example
|
|
|
|
```hcl
|
|
module "nat" {
|
|
source = "../modules/net-cloudnat"
|
|
project_id = "my-project"
|
|
region = "europe-west1"
|
|
name = "default"
|
|
router_network = "my-vpc"
|
|
}
|
|
```
|
|
|
|
<!-- BEGIN TFDOC -->
|
|
## Variables
|
|
|
|
| name | description | type | required | default |
|
|
|---|---|:---: |:---:|:---:|
|
|
| name | Name of the Cloud NAT resource. | <code title="">string</code> | ✓ | |
|
|
| project_id | Project where resources will be created. | <code title="">string</code> | ✓ | |
|
|
| region | Region where resources will be created. | <code title="">string</code> | ✓ | |
|
|
| *addresses* | Optional list of external address self links. | <code title="list(string)">list(string)</code> | | <code title="">[]</code> |
|
|
| *config_min_ports_per_vm* | Minimum number of ports allocated to a VM from this NAT config. | <code title="">number</code> | | <code title="">64</code> |
|
|
| *config_source_subnets* | Subnetwork configuration (ALL_SUBNETWORKS_ALL_IP_RANGES, ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES, LIST_OF_SUBNETWORKS). | <code title="">string</code> | | <code title="">ALL_SUBNETWORKS_ALL_IP_RANGES</code> |
|
|
| *config_timeouts* | Timeout configurations. | <code title="object({ icmp = number tcp_established = number tcp_transitory = number udp = number })">object({...})</code> | | <code title="{ icmp = 30 tcp_established = 1200 tcp_transitory = 30 udp = 30 }">...</code> |
|
|
| *router_asn* | Router ASN used for auto-created router. | <code title="">number</code> | | <code title="">64514</code> |
|
|
| *router_create* | Create router. | <code title="">bool</code> | | <code title="">true</code> |
|
|
| *router_name* | Router name, leave blank if router will be created to use auto generated name. | <code title="">string</code> | | <code title="">null</code> |
|
|
| *router_network* | Name of the VPC used for auto-created router. | <code title="">string</code> | | <code title="">null</code> |
|
|
| *subnetworks* | Subnetworks to NAT, only used when config_source_subnets equals LIST_OF_SUBNETWORKS. | <code title="list(object({ self_link = string, config_source_ranges = list(string) secondary_ranges = list(string) }))">list(object({...}))</code> | | <code title="">[]</code> |
|
|
|
|
## Outputs
|
|
|
|
| name | description | sensitive |
|
|
|---|---|:---:|
|
|
| name | Name of the Cloud NAT. | |
|
|
| nat_ip_allocate_option | NAT IP allocation mode. | |
|
|
| region | Cloud NAT region. | |
|
|
| router | Cloud NAT router resources (if auto created). | |
|
|
| router_name | Cloud NAT router name. | |
|
|
<!-- END TFDOC -->
|