AWS Global Accelerator Terraform module
Terraform module which creates AWS Global Accelerator resources.
AI-Powered Software Development Lifecycle Generator
See examples directory for working examples to reference:
module "global_accelerator" {
source = " git::https://github.com/Idem-IA/global-accelerator/aws"
name = " example"
flow_logs_enabled = true
flow_logs_s3_bucket = " example-global-accelerator-flow-logs"
flow_logs_s3_prefix = " example"
listeners = {
listener_1 = {
client_affinity = " SOURCE_IP"
endpoint_groups = {
my_group = {
health_check_port = 80
health_check_protocol = " HTTP"
health_check_path = " /"
health_check_interval_seconds = 10
health_check_timeout_seconds = 5
healthy_threshold_count = 2
unhealthy_threshold_count = 2
traffic_dial_percentage = 100
endpoint_configuration = [{
client_ip_preservation_enabled = true
endpoint_id = " arn:aws:elasticloadbalancing:us-east-1:123456789012:loadbalancer/app/blue/1234567890123456"
weight = 50
}, {
client_ip_preservation_enabled = false
endpoint_id = " arn:aws:elasticloadbalancing:us-east-1:123456789012:loadbalancer/app/green/1234567890123456"
weight = 50
}]
port_override = [{
endpoint_port = 82
listener_port = 80
}, {
endpoint_port = 8082
listener_port = 8080
}, {
endpoint_port = 8083
listener_port = 8081
}]
}
}
port_ranges = [
{
from_port = 80
to_port = 81
},
{
from_port = 8080
to_port = 8081
}
]
protocol = " TCP"
}
listener_2 = {
port_ranges = [
{
from_port = 443
to_port = 443
},
{
from_port = 8443
to_port = 8443
}
]
protocol = " TCP"
}
listener_3 = {
port_ranges = [
{
from_port = 53
to_port = 53
}
]
protocol = " UDP"
}
}
tags = {
Terraform = " true"
Environment = " dev"
}
}
Examples codified under the examples are intended to give users references for how to use the module(s) as well as testing/validating changes to the source code of the module. If contributing to the project, please be sure to make any appropriate updates to the relevant examples to allow maintainers to test your changes and to keep the examples up to date for users. Thank you!
No modules.
Name
Description
Type
Default
Required
create
Controls if resources should be created (affects nearly all resources)
bool
true
no
create_listeners
Controls if listeners should be created (affects only listeners)
bool
true
no
enabled
Indicates whether the accelerator is enabled. Defaults to true. Valid values: true, false
bool
true
no
endpoint_groups_timeouts
Create, update, and delete timeout configurations for the endpoint groups
map(string)
{}
no
flow_logs_enabled
Indicates whether flow logs are enabled. Defaults to false
bool
false
no
flow_logs_s3_bucket
The name of the Amazon S3 bucket for the flow logs. Required if flow_logs_enabled is true
string
null
no
flow_logs_s3_prefix
The prefix for the location in the Amazon S3 bucket for the flow logs. Required if flow_logs_enabled is true
string
null
no
ip_address_type
The value for the address type. Defaults to IPV4. Valid values: IPV4, DUAL_STACK
string
"IPV4"
no
ip_addresses
The IP addresses to use for BYOIP accelerators. If not specified, the service assigns IP addresses. Valid values: 1 or 2 IPv4 addresses
list(string)
[]
no
listeners
A map of listener defintions to create
any
{}
no
listeners_timeouts
Create, update, and delete timeout configurations for the listeners
map(string)
{}
no
name
The name of the accelerator
string
""
no
tags
A map of tags to add to all resources
map(string)
{}
no
Name
Description
arn
The Amazon Resource Name (ARN) of the accelerator
dns_name
The DNS name of the accelerator
dual_stack_dns_name
The DNS name that Global Accelerator creates that points to a dual-stack accelerator's four static IP addresses: two IPv4 addresses and two IPv6 addresses
endpoint_groups
Map of endpoints created and their associated attributes
hosted_zone_id
The Global Accelerator Route 53 zone ID that can be used to route an Alias Resource Record Set to the Global Accelerator
id
The Amazon Resource Name (ARN) of the accelerator
ip_sets
IP address set associated with the accelerator
listeners
Map of listeners created and their associated attributes