Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 

vpc

Introduction

This Terraform sub-module allow you to Bring Your Own VPC (BYO VPC) for ROSA Classic clusters. It enables you to provision and configure all necessary resources within an existing AWS VPC, ensuring compatibility and seamless integration with ROSA deployments. By leveraging this module, you can efficiently set up your own VPC environment, complete with networking components such as subnets, route tables, internet gateways, NAT gateways, and security groups, tailored specifically for ROSA Classic cluster requirements. This flexibility allows for a smooth change if you prefer to use your own VPC infrastructure while leveraging the capabilities of ROSA.

Example Usage

module "vpc" {
  source = "terraform-redhat/rosa-classic/rhcs//modules/vpc"

  name_prefix              = "my-vpc"
  availability_zones_count = 3
}

Requirements

Name Version
terraform >= 1.0
aws >= 4.0
time >= 0.9

Providers

Name Version
aws >= 4.0
time >= 0.9

Modules

No modules.

Resources

Name Type
aws_eip.eip resource
aws_internet_gateway.internet_gateway resource
aws_nat_gateway.public_nat_gateway resource
aws_route.ipv4_egress_route resource
aws_route.ipv6_egress_route resource
aws_route.private_nat resource
aws_route_table.private_route_table resource
aws_route_table.public_route_table resource
aws_route_table_association.private_route_table_association resource
aws_route_table_association.public_route_table_association resource
aws_subnet.private_subnet resource
aws_subnet.public_subnet resource
aws_vpc.vpc resource
aws_vpc_endpoint.s3 resource
aws_vpc_endpoint_route_table_association.private_vpc_endpoint_route_table_association resource
time_sleep.vpc_resources_wait resource
aws_availability_zones.available data source
aws_region.current data source

Inputs

Name Description Type Default Required
availability_zones A list of availability zones names in the region. list(string) null no
availability_zones_count The count of availability zones to utilize within the specified AWS region, where pairs of public and private subnets are generated. Valid only when availability_zones variable is not provided. number null no
name_prefix User-defined prefix for all generated AWS resources of this VPC. string n/a yes
tags AWS tags to be applied to generated AWS resources of this VPC. map(string) null no
vpc_cidr Cidr block of the desired VPC. string "10.0.0.0/16" no

Outputs

Name Description
availability_zones List of the Availability Zone names used for the VPC creation
cidr_block The CIDR block of the VPC for the association.
private_subnets List of private subnets created this this AWS VPC
public_subnets List of public subnets created this this AWS VPC
vpc_id The unique ID of the VPC