可能的问题可能是使用不正确的监听器规则或未正确配置目标组。下面是一个示例代码,可用于运行健康检查。
import boto3
# Define the listener and target group ARNs
listener_arn = 'arn:aws:elasticloadbalancing:region:123456789012:listener/app/my-load-balancer/0123456789abcdef/0123456789abcdef'
target_group_arn = 'arn:aws:elasticloadbalancing:region:123456789012:targetgroup/my-targets/0123456789abcdef'
# Configure the client to use the us-west-2 region
client = boto3.client('elbv2', region_name='us-west-2')
# Register the targets with the target group
response = client.register_targets(
TargetGroupArn=target_group_arn,
Targets=[
{
'Id': 'i-0bcdefghijklmnopq',
'Port': 80,
},
{
'Id': 'i-0123456789abcdef',
'Port': 80,
},
]
)
# Set the health check parameters for the target group
response = client.modify_target_group_attributes(
TargetGroupArn=target_group_arn,
Attributes=[
{
'Key': 'deregistration_delay.timeout_seconds',
'Value': '30',
},
{
'Key': 'slow_start.duration_seconds',
'Value': '10',
},
{
'Key': 'stickiness.enabled',
'Value': 'false',
},
{
'Key': 'stickiness.lb_cookie.duration_seconds',
'Value': '86400',
},
{
'Key': 'stickiness.type',
'Value': 'lb_cookie',
},
{
'Key': 'unhealthy_threshold.count',
'Value': '5',
},
]
)
# Configure the listener to use the target group
response = client.modify_listener(
ListenerArn=listener_arn,
DefaultActions=[
{
'TargetGroupArn': target_group_arn,
'Type': 'forward',
},
]
)
这个示例代码注册了目标,设置了健康检查参数,并将监听器配置为使用目标组。您可以根据自己的需要来修改这份代码。