Comment puis-je empêcher AWS OpsWorks Stacks de redémarrer inopinément les instances saines ?

Dernière mise à jour : 17/08/2021

AWS OpsWorks Stacks redémarre mes instances Amazon Elastic Compute Cloud (Amazon EC2) même si les instances passent avec succès les surveillances de l'état Amazon EC2. Pourquoi cela se produit-il et comment puis-je résoudre le problème ?

Brève description

Si les fonctions de réparation automatique OpsWorks Stacks sont activées et que le service détermine qu'une instance qu'il gère échoue, cela résultera sur l'une des situations suivantes :

Pour empêcher OpsWorks Stacks de réparer automatiquement les instances qu'il gère, suivez tout d'abord les étapes de dépannage présentes dans cet article. Si le problème persiste, vous pouvez également désactiver la réparation automatique dans les paramètres généraux de la couche OpsWorks Stacks.

Pour plus d'informations, consultez la section Redémarrage inopiné des instances dans le guide de débogage et de dépannage AWS OpsWorks.

Résolution

Vérifiez que les instances Amazon EC2 gérées par OpsWorks Stacks disposent d'un accès Internet.

Si une instance Amazon EC2 perd sa connexion au service OpsWorks Stacks, alors OpsWorks Stacks traite l'instance comme ayant échoué.

Pour vérifier que vos instances Amazon EC2 disposent d'un accès Internet, procédez comme suit :

Pour résoudre les problèmes de connectivité de passerelle NAT, consultez la section Pourquoi mes instances EC2 ne peuvent-elles pas accéder à Internet à l'aide d'une passerelle NAT ?

Pour résoudre les problèmes de connectivité de passerelle Internet, consultez la section Pourquoi mon instance EC2 ne peut-elle pas se connecter à Internet à l'aide d'une passerelle Internet ?

Vérifiez que votre application dispose de suffisamment de mémoire et de capacité CPU au niveau de l'instance pour fonctionner lorsque l'instance est soumise à une charge supplémentaire.

Lorsqu'il n'y a pas assez de ressources au niveau de l'instance pour permettre à l'agent OpsWorks d'envoyer son signal keepalive, OpsWorks Stacks traite l'instance comme ayant échoué.

Pour consulter les métriques de vos instances, suivez les instructions de la section Surveillance des piles à l'aide d'Amazon CloudWatch.

Pour définir des alarmes afin de vous avertir si votre instance dispose d'une charge élevée de CPU, de mémoire ou de trafic réseau, consultez la section Création d'alarmes Amazon CloudWatch.

Vérifiez que l'instance Amazon EC2 n'a pas été arrêtée en dehors de la console OpsWorks Stacks ou de l'API OpsWorks Stacks.

Remarque : si vous recevez des erreurs lors de l'exécution de commandes de l'AWS Command Line Interface (AWS CLI), assurez-vous d'utiliser la version la plus récente de l'AWS CLI.

Si une instance gérée par OpsWorks Stacks est arrêtée dans la console Amazon EC2, OpsWorks Stacks cesse de recevoir le signal keepalive de l'agent OpsWorks. OpsWorks Stacks traite alors l'instance comme ayant échoué.

Pour vérifier si votre instance a été arrêtée dans la console Amazon EC2, essayez de l'arrêter dans la console OpsWorks Stacks. Si l'instance est dans l'état stop_failed et que vous recevez un message d'erreur interne, l'instance a été arrêtée dans la console Amazon EC2.

Pour arrêter une instance dans OpsWorks Stacks après son arrêt dans la console Amazon EC2, exécutez la commande stop-instance de l'AWS CLI.

Important : la commande stop-instance doit inclure le paramètre --force pour ce cas d'utilisation.

Pour plus d'informations, consultez Comment résoudre les problèmes « d'erreur interne » lors de l'arrêt d'une instance AWS OpsWorks Stacks dans l'état « stop_failed » ?

Vérifiez que l'instance Amazon EC2 utilise l'Instance Metadata Service Version 1 (IMDSv1).

OpsWorks Stacks prend en charge uniquement IMDSv1, et non IMDSv2. Si une instance gérée par OpsWorks Stacks utilise IMDSv2, OpsWorks Stacks traite l'instance comme ayant échoué.

Pour vérifier le service de métadonnées utilisé par votre instance et pour reconfigurer l'instance si nécessaire, consultez la section Configurer les options de métadonnées d'instance.


Cet article vous a-t-il été utile ?


Besoin d'aide pour une question technique ou de facturation ?