ElasticLoadBalancingv2 / Client / deregister_targets
deregister_targets#
- ElasticLoadBalancingv2.Client.deregister_targets(**kwargs)#
Deregisters the specified targets from the specified target group. After the targets are deregistered, they no longer receive traffic from the load balancer.
The load balancer stops sending requests to targets that are deregistering, but uses connection draining to ensure that in-flight traffic completes on the existing connections. This deregistration delay is configured by default but can be updated for each target group.
For more information, see the following:
Deregistration delay in the Application Load Balancers User Guide
Deregistration delay in the Network Load Balancers User Guide
Deregistration delay in the Gateway Load Balancers User Guide
Note: If the specified target does not exist, the action returns successfully.
See also: AWS API Documentation
Request Syntax
response = client.deregister_targets( TargetGroupArn='string', Targets=[ { 'Id': 'string', 'Port': 123, 'AvailabilityZone': 'string' }, ] )
- Parameters:
TargetGroupArn (string) –
[REQUIRED]
The Amazon Resource Name (ARN) of the target group.
Targets (list) –
[REQUIRED]
The targets. If you specified a port override when you registered a target, you must specify both the target ID and the port when you deregister it.
(dict) –
Information about a target.
Id (string) – [REQUIRED]
The ID of the target. If the target type of the target group is
instance
, specify an instance ID. If the target type isip
, specify an IP address. If the target type islambda
, specify the ARN of the Lambda function. If the target type isalb
, specify the ARN of the Application Load Balancer target.Port (integer) –
The port on which the target is listening. If the target group protocol is GENEVE, the supported port is 6081. If the target type is
alb
, the targeted Application Load Balancer must have at least one listener whose port matches the target group port. This parameter is not used if the target is a Lambda function.AvailabilityZone (string) –
An Availability Zone or
all
. This determines whether the target receives traffic from the load balancer nodes in the specified Availability Zone or from all enabled Availability Zones for the load balancer.For Application Load Balancer target groups, the specified Availability Zone value is only applicable when cross-zone load balancing is off. Otherwise the parameter is ignored and treated as
all
.This parameter is not supported if the target type of the target group is
instance
oralb
.If the target type is
ip
and the IP address is in a subnet of the VPC for the target group, the Availability Zone is automatically detected and this parameter is optional. If the IP address is outside the VPC, this parameter is required.For Application Load Balancer target groups with cross-zone load balancing off, if the target type is
ip
and the IP address is outside of the VPC for the target group, this should be an Availability Zone inside the VPC for the target group.If the target type is
lambda
, this parameter is optional and the only supported value isall
.
- Return type:
dict
- Returns:
Response Syntax
{}
Response Structure
(dict) –
Exceptions
ElasticLoadBalancingv2.Client.exceptions.TargetGroupNotFoundException
ElasticLoadBalancingv2.Client.exceptions.InvalidTargetException
Examples
This example deregisters the specified instance from the specified target group.
response = client.deregister_targets( TargetGroupArn='arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067', Targets=[ { 'Id': 'i-0f76fade', }, ], ) print(response)
Expected Output:
{ 'ResponseMetadata': { '...': '...', }, }