Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Configurez un bilan de santé personnalisé pour votre groupe Auto Scaling
Vous pouvez utiliser des bilans de santé personnalisés pour compléter les options de contrôle de santé existantes proposées par Amazon EC2 Auto Scaling. En combinant des bilans de santé personnalisés avec les autres types de bilans de santé, vous pouvez créer un système complet de surveillance de l'état adapté aux besoins de votre application.
Pour commencer, créez des tests personnalisés pour vérifier que les instances de votre groupe Auto Scaling fonctionnent correctement et peuvent gérer le trafic entrant. Si le bilan de santé que vous configurez détecte qu'une instance ne répond pas, marquez cette instance en particulier comme telleUnhealthy
, ce qui oblige Amazon EC2 Auto Scaling à la remplacer immédiatement.
Vous pouvez envoyer l'état de santé d'une instance directement à Amazon EC2 Auto Scaling en utilisant le AWS CLI ou unSDK. Les exemples suivants vous montrent comment utiliser le AWS CLI pour configurer l'état de santé d'une instance, puis vérifier l'état de santé de l'instance.
Utilisez la set-instance-healthcommande suivante pour définir l'état de santé de l'instance spécifiée sur
.Unhealthy
aws autoscaling set-instance-health --instance-id
i-1234567890abcdef0
--health-statusUnhealthy
Par défaut, cette commande respecte la période de grâce de la surveillance de l'état. Toutefois, vous pouvez remplacer ce comportement et ne pas respecter la période de grâce en incluant l'option --no-should-respect-grace-period
.
Utilisez la describe-auto-scaling-groupscommande suivante pour vérifier que l'état de santé de l'instance est correctUnhealthy
.
aws autoscaling describe-auto-scaling-groups --auto-scaling-group-names
my-asg
Voici un exemple de réponse qui indique que l'état de santé de l'instance est bon et que l'instance est Unhealthy
sur le point de se terminer.
{
"AutoScalingGroups": [
{
....
"Instances": [
{
"ProtectedFromScaleIn": false,
"AvailabilityZone": "us-west-2a",
"LaunchTemplate": {
"LaunchTemplateName": "my-launch-template",
"Version": "1",
"LaunchTemplateId": "lt-1234567890abcdef0"
},
"InstanceId": "i-1234567890abcdef0",
"InstanceType": "t2.micro",
"HealthStatus": "Unhealthy",
"LifecycleState": "Terminating"
},
...
]
}
]
}