在创建AWS Application Load Balancer时,默认情况下并不会自动创建TargetGroup和绑定。如果需要将TargetGroup与ALB绑定,需要在创建后手动完成。以下是创建TargetGroup并将其绑定到ALB的代码示例:
import boto3
# ALB的ARN
load_balancer_arn = 'arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-alb/12345'
# 创建TargetGroup
client = boto3.client('elbv2')
response = client.create_target_group(
Name='my-targetgroup',
Protocol='HTTP',
Port=80,
VpcId='my-vpc'
)
# 检查是否创建成功
target_group_arn = response['TargetGroups'][0]['TargetGroupArn']
print("Target Group ARN:", target_group_arn)
# 将TargetGroup绑定到ALB
response = client.create_listener(
LoadBalancerArn=load_balancer_arn,
Protocol='HTTP',
Port=80,
DefaultActions=[
{
'Type': 'forward',
'TargetGroupArn': target_group_arn
}
]
)
# 检查是否绑定成功
print("Listener created:", response['Listeners'][0]['ListenerArn'])
此代码将创建一个名为“my-targetgroup”的TargetGroup,并将其绑定到具有ARN“arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-alb/12345”的ALB上的HTTP端口80上。默认情况下,此代码将向TargetGroup中转发所有流量。您可以根据需要调整此操作。