Skip to content

ahodges22/terraform-aws-fck-nat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

fck-nat Terraform Module

A module to spin up a NAT instance running fck-nat in an AWS account.

Warning: Generally you should use a NAT gateway for production purposes. This module provides a very low cost solution for testing and development purposes.

Example Usage

module "nat-instance" {
  source                      = "ahodges22/terraform-aws-fck-nat"
  name                        = "dev"
  vpc_id                      = "vpc-xxxx"
  public_subnet               = "subnet-xxxx"
  private_subnets_cidr_blocks = ["10.10.1.1/24"]
  private_route_table_ids     = ["rtb-xxxx"]
}

Providers

Name Version
aws 4.48.0

Modules

No modules.

Resources

Name Type
aws_instance.this resource
aws_launch_template.this resource
aws_route.this resource
aws_security_group.this resource
aws_security_group_rule.egress resource
aws_security_group_rule.ingress_any resource
aws_ami.this data source
aws_ec2_instance_type.this data source

Inputs

Name Description Type Default Required
enable_monitoring Enable monitoring on the NAT instance. bool false no
enabled Enable the fck-nat instance. bool true no
image_id For a user provided AMI. Defaults to the latest fck-nat AMI. string "" no
instance_type The instance type for the NAT, arm64 is supported. string "t4g.nano" no
key_name Name of the key pair for the NAT instance. string "" no
name The name to use for the associated resources. string n/a yes
private_route_table_ids List of IDs of the private subnet route tables. Used to set the route for the private subnets to use the NAT instance. list(string) [] no
private_subnets_cidr_blocks List of CIDR blocks of the private subnets. The NAT instance accepts connections from these CIDRs. list(string) n/a yes
public_subnet The ID of the subnet to place the NAT instance. string n/a yes
tags Tags applied to resources created with this module map(string) {} no
vpc_id The VPC ID. string n/a yes

Outputs

Name Description
instance_id ID of the security group of the NAT instance
private_ip Private IP of the ENI for the NAT instance