Pourquoi Amazon EC2 Auto Scaling a-t-il arrêté une instance ?

Lecture de 8 minute(s)
0

Mon groupe Auto Scaling Amazon Elastic Compute Cloud (Amazon EC2) a arrêté une instance. Toutefois, je ne vois pas la raison de l'arrêt de la console Amazon EC2.

Brève description

Amazon EC2 Auto Scaling s’appuie sur les surveillances de l'état d'Amazon EC2 ou d'Elastic Load Balancing (ELB) pour déterminer la qualité d'une instance. Vous pouvez voir toutes les actions de mise à l'échelle d'un groupe Auto Scaling, ainsi que les remplacements des surveillances de l'état, dans Historique des activités de la console Amazon EC2.

Résolution

Pour déterminer les étapes de résolution des problèmes, utilisez la description de l'instance dans la vue Historique des activités.

Tout d'abord, trouvez la description et la cause de l'arrêt de l'instance :

  1. ouvrez la console Amazon EC2.
  2. Dans le volet de navigation, sous Auto Scaling, choisissez Groupes Auto Scaling. Ensuite, sélectionnez le groupe de votre instance.
  3. Choisissez la vue Activité, puis recherchez l'événement d'arrêt d'instance dans Historique des activités.
  4. Notez la Description et la Cause de l'événement d'arrêt d'instance.

Pour résoudre le problème d'arrêt de l’instance, consultez les exemples de Description suivants.

« Une instance a été mise hors service, parce qu’une surveillance de l'état EC2 a indiqué qu'elle a été arrêtée »

Amazon EC2 Auto Scaling résout les problèmes d'arrêt ou de redémarrage des instances. Pour déterminer si un utilisateur a manuellement arrêté ou redémarré l'instance, vérifiez l'historique d'AWS CloudTrail :

  1. ouvrez la console AWS CloudTrail.
  2. Dans le volet de navigation, choisissez Historique des événements.
  3. Référez-vous à l'historique des TerminateInstances, StopInstances ou RebootInstances lors des appels d'API.

« Une instance a été mise hors service en raison d'un échec de surveillances de l'état de l'instance EC2 »

Trouvez les défaillances des instances ou des systèmes grâce aux métriques Amazon CloudWatch :

  1. ouvrez la console Amazon CloudWatch.
  2. Dans le volet de navigation, choisissez Métriques, puis la vue Toutes les métriques.
  3. Choisissez EC2 dans la fenêtre des métriques, puis choisissez Métriques par instance.
  4. Saisissez l'identifiant d'instance, puis choisissez StatusCheckFailed_Instance, StatusCheckFailed_System ou StatusCheckFailed pour afficher les graphiques de métriques.

« Une instance a été mise hors service en raison d'un échec de la surveillance de l'état du système ELB »

Si vous avez activé les surveillances de l'état d'Elastic Load Balancing pour votre groupe Auto Scaling, Amazon EC2 Auto Scaling effectuera les surveillances de l'état pour Elastic Load Balancing et EC2. Ensuite, le service arrête les instances à l'origine des échecs de surveillances de l'état. Vérifiez que les surveillances de l'état d'Elastic Load Balancing sont activées dans votre groupe Auto Scaling :

  1. ouvrez la console Amazon EC2.
  2. Dans le volet de navigation, sous Auto Scaling, choisissez Groupes Auto Scaling, puis choisissez le groupe de l'instance.
  3. Choisissez la vue Détails, puis notez le Type de surveillance de l'état.
  4. Si le type de surveillance de l'état est « EC2, ELB », alors les surveillances de l'état d'Elastic Load Balancing sont activées sur groupe Auto Scaling.

Pour plus d'informations, consultez la section Une instance a été mise hors service en raison de l'échec de la surveillance de l'état du système Elastic Load Balancing.

Dans certains cas, un groupe Auto Scaling est associé à plusieurs groupes cibles ou équilibreurs de charge. Dans ce cas, pour qu'Amazon EC2 Auto Scaling considère qu'une instance est en bon état, tous les groupes cibles ainsi que les équilibreurs de charge doivent indiquer qu'elle est en bon état.

  1. Dans le volet de navigation, sous Auto Scaling, choisissez Groupes Auto Scaling.
  2. Choisissez le groupe de l'instance, puis choisissez la vue Détails.
  3. Vérifiez si plusieurs équilibreurs de charge sont associés à Équilibreurs de charge ou à Groupes cibles.
  4. Sélectionnez le Groupe cible ou l'Équilibreur de charge.
  5. Dans le volet de navigation, sous Équilibrage de charge, choisissez Groupes cibles, sélectionnez votre groupe cible, puis cliquez sur Surveillance.
  6. Pour confirmer l'échec d’une instance par les surveillances de l'état, vérifiez les graphiques de métriques des Hôtes en bon état et en mauvais état.

Vérifiez l'historique CloudTrail pour déterminer si un processus en attente a retardé l'arrêt d'une instance défectueuse jusqu'à la reprise du processus :

  1. ouvrez la console AWS CloudTrail.
  2. Dans le volet de navigation, choisissez Historique des événements.
  3. Vérifiez l'historique de SuspendProcesses et de ResumeProcesses pour les appels d'API.

« Une instance a été mise hors service suite à un avis d'interruption d'une instance Spot EC2. »

Amazon EC2 Auto Scaling arrête les instances Spot lorsque l'une des conditions suivantes se produit :

  • la capacité n'est plus disponible ;
  • le prix spot dépasse le plafond défini pour les instances ;

l'Historique des activités peut indiquer que l'instance a été retirée du service en raison d'une surveillance de l'état. Pour vérifier la raison de l'arrêt, vérifiez l'état des Demandes Spot comme suit :

  1. ouvrez la console Amazon EC2.
  2. Dans le volet de navigation, sous Instances, choisissez Demandes Spot.
  3. Sélectionnez la demande Spot, choisissez la vue Description, puis notez l'État.

« Une instance a été mise hors service en raison d'une demande utilisateur »

Vérifiez l'historique des événements CloudTrail pour la période pendant laquelle l'instance a été mise hors service pour les appels d'API TerminateInstanceInAutoScalingGroup :

  1. ouvrez la console AWS CloudTrail.
  2. Dans le volet de navigation, choisissez Historique des événements.
  3. Vérifiez l'historique pour les appels d'API TerminateInstanceInAutoScalingGroup.

« Un utilisateur demande la mise à jour des contraintes AutoScalingGroup aux valeurs minimales : 0, max : 2, souhaitées : 1 faisant passer la capacité souhaitée de 2 à 1 »

Vous pouvez modifier manuellement les contraintes d'un groupe Auto Scaling. Vous pouvez, par exemple, réduire sa capacité. Lorsque vous modifiez une contrainte, Amazon EC2 Auto Scaling peut arrêter les instances pour les ajuster aux nouveaux paramètres.

« Des instances ont été lancées pour équilibrer les instances des zones us-east-1a avec celles d’autres zones »

Par défaut, Amazon EC2 Auto Scaling équilibre les instances dans toutes les zones de disponibilité. Lorsque vous ajoutez une nouvelle zone de disponibilité à un groupe autoscaling, Amazon EC2 Auto Scaling lance une nouvelle instance dans cette zone. Tout rééquilibrage pourrait mettre fin à des instances dans d'autres zones.

« Une instance a été mise hors service pour équilibrer la distribution des capacités À la demande et Spot. »

Lorsque la distribution d'une instance À la demande ou Spot change, le groupe autoscaling associé se rééquilibre pour correspondre à votre distribution d'option d'achat souhaitée. Par conséquent, les instances À la demande ou Spot peuvent s'arrêter pour que le groupe Auto Scaling les remplace en vue d'obtenir l'option d'achat qui vous convient.

« Une alarme de surveillance XXX-High-CPU-Utilization dans l'état ALARME a déclenché la politique AAA-scaledown qui modifie la capacité souhaitée de 2 à 1 »

Amazon EC2 Auto Scaling peut arrêter les instances d'un groupe en raison de la configuration d'une alarme CloudWatch. Vérifiez les politiques de groupe et l'historique des alarmes CloudWatch.

Vérifiez les stratégies du groupe Auto Scaling :

  1. ouvrez la console Amazon EC2.
  2. Dans le volet de navigation, sous Auto Scaling, choisissez Groupes Auto Scaling.
  3. Choisissez le groupe de l'instance.
  4. Pour afficher et modifier les stratégies, cliquez sur le volet Automatic Scaling

Afficher l'historique des alarmes CloudWatch :

  1. ouvrez la console Amazon CloudWatch.
  2. Dans le volet de navigation, choisissez Alarmes.
  3. Choisissez l'alarme, puis choisissez la vue Historique.
  4. Vérifiez l'historique pour tout changement d'état de l'alarme ou toute modification de la configuration de l'alarme.

« Une instance a été mise hors service en réaction à une surveillance de l'état effectuée par un utilisateur »

Vous pouvez définir les surveillances de l'état personnalisées dans Amazon EC2 Auto Scaling. Lorsqu'une surveillance de l'état personnalisée indique qu'une instance n'est pas en bon état, la surveillance manuelle lance SetInstanceHealth. Ensuite, elle définit l'état de l'instance sur En mauvais état. Amazon EC2 Auto Scaling arrête l'instance en mauvais état lors de sa prochaine exécution.

« Mise à jour d'action planifiée des contraintes AutoScalingGroup définie sur les capacités minimales : 1, max : 9, souhaitées : 1 faisant passer la capacité souhaitée de 2 à 1 »

Vous pouvez configurer des actions planifiées qui modifient la capacité minimale, maximale ou souhaitée d'un groupe Auto Scaling. Lorsque l'action planifiée diminue la capacité souhaitée, Amazon EC2 Auto Scaling arrête une ou plusieurs instances pour qu'elles correspondent à la nouvelle capacité souhaitée.

Informations connexes

Pourquoi la capacité de mon groupe Auto Scaling a-t-elle été réduite ?

Pourquoi Amazon EC2 Auto Scaling n'a-t-il pas arrêté une instance défectueuse ?

AWS OFFICIEL
AWS OFFICIELA mis à jour il y a 9 mois