Transit Gateway module for VM-Series
A Terraform module for deploying AWS Transit Gateways. The module does not use default route tables by design - specify all the route tables explicitly through respective input variables.
A transit gateway is a network transit hub that you can use to interconnect your virtual private clouds (VPCs) and on-premises networks. As your cloud infrastructure expands globally, inter-Region peering connects transit gateways together using the AWS Global Infrastructure.
Usage
For example usage, please refer to the examples directory.
Reference
Requirements
| Name | Version |
|---|---|
| terraform | >= 1.5.0, < 2.0.0 |
| aws | ~> 5.17 |
Providers
| Name | Version |
|---|---|
| aws | ~> 5.17 |
Modules
No modules.
Resources
| Name | Type |
|---|---|
| aws_ec2_transit_gateway.this | resource |
| aws_ec2_transit_gateway_route_table.this | resource |
| aws_ram_principal_association.this | resource |
| aws_ram_resource_association.this | resource |
| aws_ram_resource_share.this | resource |
| aws_ec2_transit_gateway.this | data source |
| aws_ec2_transit_gateway_route_table.this | data source |
Inputs
| Name | Description | Type | Default | Required |
|---|---|---|---|---|
| asn | BGP Autonomous System Number of the AWS Transit Gateway. | number | 65200 | no |
| auto_accept_shared_attachments | See the provider documentation. | string | null | no |
| create | Trigger module mode between creating a new TGW or retrieving an existing one. | bool | true | no |
| dns_support | See the provider documentation. | string | null | no |
| id | ID of an existing Transit Gateway. Used in conjunction with create = false. When set, takes precedence over var.name. | string | null | no |
| name | Name tag for the Transit Gateway and associated resources. | string | null | no |
| ram_resource_share_name | n/a | any | null | no |
| route_tables | n/a | map | {} | no |
| shared_principals | n/a | map | {} | no |
| tags | Optional Map of arbitrary tags to apply to all resources | map(string) | {} | no |
| transit_gateway_cidr_blocks | One or more IPv4 or IPv6 CIDR blocks for the transit gateway. Must be a size /24 CIDR block or larger for IPv4, or a size /64 CIDR block or larger for IPv6. | set(string) | [] | no |
| vpn_ecmp_support | See the provider documentation. | string | null | no |
Outputs
| Name | Description |
|---|---|
| name | Transit Gateway Name tag. |
| route_tables | Transit Gateway's route tables. |
| transit_gateway | The entire object aws_ec2_transit_gateway. |