/terraform-aws-vpc-simple-public-private-subnets

This Terraform module creates an AWS VPC with Public and Private Subnets.

Primary LanguageHCLMIT LicenseMIT

AWS VPC Simple Public Subnets

This Terraform module creates an AWS VPC with Public and Private Subnets.

Requirements

Name Version
aws ~> 4.36

Providers

Name Version
aws ~> 4.36
http n/a

Modules

No modules.

Resources

Name Type
aws_eip.private_nat_gateway resource
aws_internet_gateway.internet_gateway resource
aws_nat_gateway.private_nat_gateway resource
aws_route.private_route resource
aws_route.public_route resource
aws_route_table.private resource
aws_route_table.public resource
aws_route_table_association.private_route_association resource
aws_route_table_association.public_route_association resource
aws_security_group.private resource
aws_security_group.public resource
aws_security_group_rule.allow_all_egress_from_private_to_internet resource
aws_security_group_rule.allow_all_egress_from_public_to_internet resource
aws_security_group_rule.allow_all_ingress_from_private_to_self resource
aws_security_group_rule.allow_http_ingress_from_public_to_private resource
aws_security_group_rule.allow_https_ingress_from_internet_to_public resource
aws_security_group_rule.allow_https_ingress_from_public_to_private resource
aws_security_group_rule.allow_rdp_ingress_from_management_to_public resource
aws_security_group_rule.allow_rdp_ingress_from_public_to_private resource
aws_security_group_rule.allow_ssh_ingress_from_management_to_public resource
aws_security_group_rule.allow_ssh_ingress_from_public_to_private resource
aws_subnet.private resource
aws_subnet.public resource
aws_vpc.main resource
aws_availability_zones.availability_zones data source
http_http.checkip data source

Inputs

Name Description Type Default Required
assign_generated_ipv6_cidr_block Assign generated IPV6 CIDR Block in VPC. bool false no
availability_zones Availability Zones to create Public Subnets in. list
[
"ap-southeast-1a"
]
no
cidr_block CIDR of the VPC. string "10.0.0.0/16" no
enable_dns_hostnames Enable DNS Hostnames in VPC. bool true no
enable_dns_support Enable DNS Support in VPC. bool true no
management_cidr_ranges Management CIDR Ranges to allow SSH and RDP access into the Public Security Group. list(string) null no
name Name of VPC. Resources will be tagged with this Name. string n/a yes
owner Name of Owner. Resources will be tagged with this Owner. string n/a yes
private_subnet_cidr_blocks Custom CIDR Blocks to assign to each Private Subnet. list(string) null no
project Name of Project. Resources will be tagged with this Project. string n/a yes
public_subnet_cidr_blocks Custom CIDR Blocks to assign to each Public Subnet. list(string) null no

Outputs

Name Description
internet_gateway The VPC Internet Gateway.
nat_gateways The VPC NAT Gateways. This is a map of Availability Zones to aws_nat_gateway objects.
private_security_group The VPC Private Security Group.
private_security_group_id The VPC Private Security Group ID.
private_subnets The VPC Private Subnets
public_security_group The VPC Public Security Group.
public_security_group_id The VPC Public Security Group ID.
public_subnets The VPC Public Subnets
subnet_ids_private The VPC Private Subnets IDs. This is an map of Availability Zones to Subnet IDs.
subnet_ids_public The VPC Public Subnets IDs. This is an map of Availability Zones to Subnet IDs.
vpc The VPC
vpc_id The VPC ID