以下是一个使用AWS SDK for Python (Boto3)解决该问题的示例代码:
import boto3
def get_unhealthy_instances(target_group_arn):
elbv2_client = boto3.client('elbv2')
# 获取目标组中的所有实例
response = elbv2_client.describe_target_health(TargetGroupArn=target_group_arn)
target_health = response['TargetHealthDescriptions']
# 遍历所有实例,找到不健康的实例
unhealthy_instances = []
for target in target_health:
if target['TargetHealth']['State'] != 'healthy':
unhealthy_instances.append(target['Target']['Id'])
return unhealthy_instances
# 替换为您的目标组 ARN
target_group_arn = 'arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-target-group/abcdef123456'
# 获取不健康的实例
unhealthy_instances = get_unhealthy_instances(target_group_arn)
# 输出不健康的实例
print('Unhealthy instances:')
for instance in unhealthy_instances:
print(instance)
请确保已安装 AWS SDK for Python (Boto3) 并配置了正确的 AWS 访问密钥和区域信息。