AWS::GlobalAccelerator::EndpointGroup
The AWS::GlobalAccelerator::EndpointGroup
resource is a Global Accelerator resource type that contains information about
how you create an endpoint group for the specified listener. An endpoint group is a collection of endpoints in one AWS Region.
Syntax
To declare this entity in your AWS CloudFormation template, use the following syntax:
JSON
{ "Type" : "AWS::GlobalAccelerator::EndpointGroup", "Properties" : { "EndpointConfigurations" :
[ EndpointConfiguration, ... ]
, "EndpointGroupRegion" :String
, "HealthCheckIntervalSeconds" :Integer
, "HealthCheckPath" :String
, "HealthCheckPort" :Integer
, "HealthCheckProtocol" :String
, "ListenerArn" :String
, "PortOverrides" :[ PortOverride, ... ]
, "ThresholdCount" :Integer
, "TrafficDialPercentage" :Number
} }
YAML
Type: AWS::GlobalAccelerator::EndpointGroup Properties: EndpointConfigurations:
- EndpointConfiguration
EndpointGroupRegion:String
HealthCheckIntervalSeconds:Integer
HealthCheckPath:String
HealthCheckPort:Integer
HealthCheckProtocol:String
ListenerArn:String
PortOverrides:- PortOverride
ThresholdCount:Integer
TrafficDialPercentage:Number
Properties
EndpointConfigurations
-
The list of endpoint objects.
Required: No
Type: Array of EndpointConfiguration
Minimum:
0
Maximum:
10
Update requires: No interruption
EndpointGroupRegion
-
The AWS Regions where the endpoint group is located.
Required: Yes
Type: String
Maximum:
255
Update requires: Replacement
HealthCheckIntervalSeconds
-
The time—10 seconds or 30 seconds—between health checks for each endpoint. The default value is 30.
Required: No
Type: Integer
Minimum:
10
Maximum:
30
Update requires: No interruption
HealthCheckPath
-
If the protocol is HTTP/S, then this value provides the ping path that Global Accelerator uses for the destination on the endpoints for health checks. The default is slash (/).
Required: No
Type: String
Pattern:
^/[-a-zA-Z0-9@:%_\\+.~#?&/=]*$
Maximum:
255
Update requires: No interruption
HealthCheckPort
-
The port that Global Accelerator uses to perform health checks on endpoints that are part of this endpoint group.
The default port is the port for the listener that this endpoint group is associated with. If the listener port is a list, Global Accelerator uses the first specified port in the list of ports.
Required: No
Type: Integer
Minimum:
-1
Maximum:
65535
Update requires: No interruption
HealthCheckProtocol
-
The protocol that Global Accelerator uses to perform health checks on endpoints that are part of this endpoint group. The default value is TCP.
Required: No
Type: String
Allowed values:
TCP | HTTP | HTTPS
Update requires: No interruption
ListenerArn
-
The Amazon Resource Name (ARN) of the listener.
Required: Yes
Type: String
Maximum:
255
Update requires: Replacement
PortOverrides
-
Allows you to override the destination ports used to route traffic to an endpoint. Using a port override lets you map a list of external destination ports (that your users send traffic to) to a list of internal destination ports that you want an application endpoint to receive traffic on.
Required: No
Type: Array of PortOverride
Minimum:
0
Maximum:
10
Update requires: No interruption
ThresholdCount
-
The number of consecutive health checks required to set the state of a healthy endpoint to unhealthy, or to set an unhealthy endpoint to healthy. The default value is 3.
Required: No
Type: Integer
Minimum:
1
Maximum:
10
Update requires: No interruption
TrafficDialPercentage
-
The percentage of traffic to send to an AWS Regions. Additional traffic is distributed to other endpoint groups for this listener.
Use this action to increase (dial up) or decrease (dial down) traffic to a specific Region. The percentage is applied to the traffic that would otherwise have been routed to the Region based on optimal routing.
The default value is 100.
Required: No
Type: Number
Minimum:
0
Maximum:
100
Update requires: No interruption
Return values
Ref
When you pass the logical ID of this resource to the intrinsic Ref
function, Ref
returns the ARN of the endpoint group, such as
arn:aws:globalaccelerator::012345678901:accelerator/1234abcd-abcd-1234-abcd-1234abcdefgh/listener/0123vxyz/endpoint-group/098765zyxwvu
.
For more information about using the Ref
function, see Ref
.
Fn::GetAtt
The Fn::GetAtt
intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.
For more information about using the Fn::GetAtt
intrinsic function, see Fn::GetAtt
.
EndpointGroupArn
-
The ARN of the endpoint group, such as
arn:aws:globalaccelerator::012345678901:accelerator/1234abcd-abcd-1234-abcd-1234abcdefgh/listener/0123vxyz/endpoint-group/098765zyxwvu
.
Examples
Add an endpoint group
These are examples to specify an endpoint group.
JSON
"Resources": { "EndpointGroup": { "Type": "AWS::GlobalAccelerator::EndpointGroup", "Properties": { "ListenerArn": { "Ref": "Listener" }, "EndpointGroupRegion": { "Ref": "EndpointRegion" }, "TrafficDialPercentage": 100.0, "EndpointConfigurations": [ { "EndpointId": { "Ref": "EndpointId" } } ] } } }
YAML
EndpointGroup: Type: AWS::GlobalAccelerator::EndpointGroup Properties: ListenerArn: Ref: Listener EndpointGroupRegion: Ref: EndpointRegion TrafficDialPercentage: 100 EndpointConfigurations: - EndpointId: Ref: EndpointId