attachLoadBalancerTargetGroups method
This operation is used with the following load balancer types:
- Application Load Balancer - Operates at the application layer (layer 7) and supports HTTP and HTTPS.
- Network Load Balancer - Operates at the transport layer (layer 4) and supports TCP, TLS, and UDP.
- Gateway Load Balancer - Operates at the network layer (layer 3).
This operation is additive and does not detach existing target groups or Classic Load Balancers from the Auto Scaling group.
For more information, see Use Elastic Load Balancing to distribute traffic across the instances in your Auto Scaling group in the Amazon EC2 Auto Scaling User Guide.
May throw InstanceRefreshInProgressFault.
May throw ResourceContentionFault.
May throw ServiceLinkedRoleFailure.
Parameter autoScalingGroupName :
The name of the Auto Scaling group.
Parameter targetGroupARNs :
The Amazon Resource Names (ARNs) of the target groups. You can specify up
to 10 target groups. To get the ARN of a target group, use the Elastic
Load Balancing DescribeTargetGroups
API operation.
Implementation
Future<void> attachLoadBalancerTargetGroups({
required String autoScalingGroupName,
required List<String> targetGroupARNs,
}) async {
final $request = <String, String>{
'AutoScalingGroupName': autoScalingGroupName,
if (targetGroupARNs.isEmpty)
'TargetGroupARNs': ''
else
for (var i1 = 0; i1 < targetGroupARNs.length; i1++)
'TargetGroupARNs.member.${i1 + 1}': targetGroupARNs[i1],
};
await _protocol.send(
$request,
action: 'AttachLoadBalancerTargetGroups',
version: '2011-01-01',
method: 'POST',
requestUri: '/',
exceptionFnMap: _exceptionFns,
resultWrapper: 'AttachLoadBalancerTargetGroupsResult',
);
}