Skip to content

Latest commit

 

History

History
74 lines (60 loc) · 8.69 KB

File metadata and controls

74 lines (60 loc) · 8.69 KB

dx-private-virtual-interface

This module creates following resources.

  • aws_dx_private_virtual_interface
  • aws_dx_bgp_peer (optional)

Requirements

Name Version
terraform >= 1.5
aws >= 4.63
local >= 2.4

Providers

Name Version
aws 5.19.0
local 2.4.0

Modules

Name Source Version
resource_group tedilabs/misc/aws//modules/resource-group ~> 0.10.0

Resources

Name Type
aws_dx_bgp_peer.this resource
aws_dx_private_virtual_interface.this resource
local_file.this resource
aws_dx_router_configuration.this data source

Inputs

Name Description Type Default Required
bgp_peerings (Required) The configuration for BGP(Border Gateway Protocol) Peerings of the virtual interface. You must create a BGP peer for the corresponding address family (IPv4/IPv6) in order to access AWS resources that also use that address family. If logical redundancy is not supported by the connection, interconnect, or LAG, the BGP peer cannot be in the same address family as an existing BGP peer on the virtual interface. When creating a IPv6 BGP peer, omit the Amazon address and customer address. IPv6 addresses are automatically assigned from the Amazon pool of IPv6 addresses; you cannot specify custom IPv6 addresses. Each block of bgp_peerings as defined below.
(Required) address_family - The address family for the BGP peer. Valid values are IPV4 or IPV6. Defaults to IPV4.
(Required) bgp_asn - The Border Gateway Protocol (BGP) Autonomous System Number (ASN) of your on-premises router for the new virtual interface. Valid ranges are 1 - 2147483647.
(Optional) bgp_auth_key - The password that will be used to authenticate the BGP session.
(Optional) amazon_address - The BGP peer IP configured on the AWS endpoint. Required for IPv4 BGP peering.
(Optional) customer_address - The BGP peer IP configured on your endpoint. Required for IPv4 BGP peering.
list(object({
address_family = string
bgp_asn = number
bgp_auth_key = optional(string)
amazon_address = optional(string)
customer_address = optional(string)
}))
n/a yes
connection (Required) The ID of the Direct Connect connection (or LAG) on which the new virtual interface will be provisioned. string n/a yes
gateway (Required) The gateway configuration to connect to VPCs and Regions for this virtual interface. gateway as defined below.
(Required) type - A gateway type for this virtual interface.
- DIRECT_CONNECT_GATEWAY: Allow connections to multiple VPCs and Regions.
- VIRTUAL_PRIVATE_GATEWAY: Allow connections to a single VPC in the same Region.
(Required) id - The ID of the Direct Connect Gateway or Virtual Private Gateway to which to connect the virtual interface.
object({
type = string
id = string
})
n/a yes
name (Required) The name of the virtual interface assigned by the customer network. The name has a maximum of 100 characters. The following are valid characters: a-z, 0-9 and a hyphen (-). string n/a yes
vlan (Required) The Virtual Local Area Network number for the new virtual interface. Valid ranges are 1 - 4094. number n/a yes
jumbo_frame_enabled (Optional) Whether to allow MTU size of 9001 on virtual interface. The MTU of a virtual private interface can be either 1500 or 9001 (jumbo frames). Defaults to false. bool false no
module_tags_enabled (Optional) Whether to create AWS Resource Tags for the module informations. bool true no
resource_group_description (Optional) The description of Resource Group. string "Managed by Terraform." no
resource_group_enabled (Optional) Whether to create Resource Group to find and group AWS resources which are created by this module. bool true no
resource_group_name (Optional) The name of Resource Group. A Resource Group name can have a maximum of 127 characters, including letters, numbers, hyphens, dots, and underscores. The name cannot start with AWS or aws. string "" no
router_configuration (Optional) The configuration to retrieve a sample router configuration for the virtual interface. router_configuration as defined below.
(Optional) router - The ID of the Router Type to get the sample router configuration. For example: CiscoSystemsInc-2900SeriesRouters-IOS124.
(Optional) output_path - The path to save sample router configuration.
object({
router = optional(string)
output_path = optional(string)
})
{} no
sitelink_enabled (Optional) Indicate whether to enable SiteLink. Control direct connectivity between Direct Connect points of presence. Subject to additional charges. Defaults to false. bool false no
tags (Optional) A map of tags to add to all resources. map(string) {} no

Outputs

Name Description
arn The ARN of the virtual interface.
aws_device The Direct Connect endpoint on which the virtual interface terminates.
bgp_peerings The configuration for BGP(Border Gateway Protocol) Peerings of the virtual interface.
address_family - The address family for the BGP peer.
bgp_asn - The Border Gateway Protocol (BGP) Autonomous System Number (ASN) of your on-premises router.
bgp_auth_key - The password that will be used to authenticate the BGP session.
amazon_address - The BGP peer IP configured on the AWS endpoint.
customer_address - The BGP peer IP configured on your endpoint.
connection The ID of the Direct Connect connection.
gateway The ID of the Direct Connect connection.
id The ID of the virtual interface.
jumbo_frame_capable Whether jumbo frames (9001 MTU) are supported.
jumbo_frame_enabled Whether jumbo frames (9001 MTU) are enabled.
mtu The MTU of the virtual interface.
name The name of the virtual interface.
router_configuration The sample router configuration for the virtual interface.
sitelink_enabled Indicate whether to enable SiteLink.
vlan The ID of the VLAN.