| ami_id |
Explicit AMI ID to use (overrides AMI lookup entirely) |
string |
null |
no |
| availability_zones |
List of availability zones to deploy NAT instances in |
list(string) |
n/a |
yes |
| block_device_size |
Size in GB of the root EBS volume |
number |
10 |
no |
| build_lambda_locally |
Build the Lambda binary from Go source instead of downloading a pre-compiled release. Requires Go and zip installed locally. |
bool |
false |
no |
| custom_ami_name_pattern |
AMI name pattern when use_fck_nat_ami is false |
string |
null |
no |
| custom_ami_owner |
AMI owner account ID when use_fck_nat_ami is false |
string |
null |
no |
| enable_logging |
Create a CloudWatch log group for the Lambda function |
bool |
true |
no |
| ignore_tag_key |
Tag key used to mark instances the Lambda should ignore |
string |
"nat-zero:ignore" |
no |
| ignore_tag_value |
Tag value used to mark instances the Lambda should ignore |
string |
"true" |
no |
| instance_type |
Instance type for the NAT instance |
string |
"t4g.nano" |
no |
| lambda_binary_url |
URL to the pre-compiled Go Lambda zip. Updated automatically by CI. |
string |
"https://github.com/MachineDotDev/nat-zero/releases/download/nat-zero-lambda-latest/lambda.zip" |
no |
| lambda_memory_size |
Memory allocated to the Lambda function in MB (also scales CPU proportionally) |
number |
128 |
no |
| log_retention_days |
CloudWatch log retention in days (only used when enable_logging is true) |
number |
14 |
no |
| market_type |
Whether to use spot or on-demand instances |
string |
"on-demand" |
no |
| name |
Name prefix for all resources created by this module |
string |
n/a |
yes |
| nat_tag_key |
Tag key used to identify NAT instances |
string |
"nat-zero:managed" |
no |
| nat_tag_value |
Tag value used to identify NAT instances |
string |
"true" |
no |
| private_route_table_ids |
Route table IDs for the private subnets (one per AZ) |
list(string) |
n/a |
yes |
| private_subnets |
Private subnet IDs (one per AZ) for NAT instance private ENIs |
list(string) |
n/a |
yes |
| private_subnets_cidr_blocks |
CIDR blocks for the private subnets (one per AZ, used in security group rules) |
list(string) |
n/a |
yes |
| public_subnets |
Public subnet IDs (one per AZ) for NAT instance public ENIs |
list(string) |
n/a |
yes |
| tags |
Additional tags to apply to all resources |
map(string) |
{} |
no |
| use_fck_nat_ami |
Use the public fck-nat AMI. Set to false to use a custom AMI. |
bool |
true |
no |
| vpc_id |
The VPC ID where NAT instances will be deployed |
string |
n/a |
yes |