Есть ли способ узнать, связан ли экземпляр EC2 с группой автоматического масштабирования - PullRequest
1 голос
/ 21 июня 2020

Есть ли способ узнать, связан ли экземпляр EC2 с Auto Scaling Group?

Ответы [ 4 ]

3 голосов
/ 21 июня 2020

Вы можете использовать функцию describe-auto-scaling-instance , чтобы проверить, к какой группе автомасштабирования прикреплен экземпляр.

Так, например, для instance id i-4ba0837f вы можете запустить следующая команда

aws autoscaling describe-auto-scaling-instances --instance-ids i-4ba0837f

Пример ответа, если он присоединен к группе автомасштабирования, ниже

{
    "AutoScalingInstances": [
        {
            "ProtectedFromScaleIn": false,
            "AvailabilityZone": "us-west-2c",
            "InstanceId": "i-4ba0837f",
            "AutoScalingGroupName": "my-auto-scaling-group",
            "HealthStatus": "HEALTHY",
            "LifecycleState": "InService",
            "LaunchConfigurationName": "my-launch-config"
        }
    ]
}

Однако, если он ни к чему не присоединен, это будет пустой список.

{
    "AutoScalingInstances": []
}

Если это не дает результатов, то этот экземпляр не является частью группы автомасштабирования.

Это также будет доступно в SDK:

2 голосов
/ 21 июня 2020

Вы можете использовать следующую команду aws cli:

aws autoscaling describe-auto-scaling-instances --instance-ids i-exampleid 

Если экземпляр является частью группы автоматического масштабирования, в результате вы получите подробную информацию.

https://docs.aws.amazon.com/cli/latest/reference/autoscaling/describe-auto-scaling-instances.html

1 голос
/ 21 июня 2020

Вы можете использовать describe-auto-scaling-instance

aws autoscaling describe-auto-scaling-instances --instance-ids your-instance-id

Он напечатает что-то вроде этого, если существует

{
  "AutoScalingInstances": [
    {
      "InstanceId": "some-instance-id",
      "InstanceType": "m4.large",
      "AutoScalingGroupName": "awseb-some-name",
      "AvailabilityZone": "eu-west-1c",
      "LifecycleState": "InService",
      "HealthStatus": "HEALTHY",
      "LaunchTemplate": {
        "LaunchTemplateId": "lt-04a2fffdesa",
        "LaunchTemplateName": "AWSEBEC2LaunchTemplate_foobar",
        "Version": "2"
      },
      "ProtectedFromScaleIn": false
    }
  ]
}

если нет

{
  "AutoScalingInstances": []
}
0 голосов
/ 22 июня 2020

Вы также можете посмотреть теги экземпляра, чтобы узнать, принадлежит ли он ASG. EC2 в ASG всегда будет иметь тег aws:autoscaling:groupName.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...