AWS OpsWorks Stacks redémarre mes instances Amazon Elastic Compute Cloud (Amazon EC2), même si elles réussissent les vérifications d’état d’Amazon EC2. Pourquoi cette situation se produit-elle et comment puis-je y mettre fin ?
Brève description
Si la fonction de réparation automatique d'OpsWorks Stacks est activée et que le service détermine qu'une instance qu'il gère est défaillante, l'une des situations suivantes se produit :
Pour empêcher OpsWorks Stacks de réparer automatiquement les instances qu'il gère, suivez d'abord les étapes de dépannage décrites 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 votre couche OpsWorks Stacks.
Pour plus d'informations, consultez la section Redémarrage inattendu des instances dans le guide de débogage et de dépannage d'AWS OpsWorks.
Résolution
Vérifier 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, OpsWorks Stacks considère l'instance comme défaillante.
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 la 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 la passerelle Internet, consultez la section Pourquoi mon instance Amazon EC2 ne peut-elle pas se connecter à Internet via une passerelle Internet ?
Vérifier que votre application dispose d'une capacité de mémoire et de processeur suffisante au niveau de l'instance pour fonctionner lorsque celle-ci est soumise à une charge supplémentaire
Lorsque les ressources au niveau de l'instance sont insuffisantes pour permettre à l'agent OpsWorks d'envoyer son signal keepalive, OpsWorks Stacks considère l'instance comme défaillante.
Pour examiner 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 est soumise à une charge de processeur, de mémoire ou de trafic réseau élevée, consultez la section Création d'alarmes Amazon CloudWatch.
Vérifier 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 des erreurs surviennent lors de l’exécution des commandes de l’interface de la ligne de commande AWS (AWS CLI), vérifiez que vous utilisez bien 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 considère alors l'instance comme défaillante.
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 à l'état stop_failed et que vous recevez un message d’erreur interne, cela signifie qu'elle a été arrêtée dans la console Amazon EC2.
Pour arrêter une instance dans OpsWorks Stacks après que celle-ci a été arrêtée dans la console Amazon EC2, exécutez la commande stop-instance de l'interface de ligne de commande AWS.
Important : La commande stop-instance doit inclure le paramètre --force pour ce cas d'utilisation.
Pour plus d'informations, consultez la section Comment résoudre les messages « Erreur interne » lors de l'arrêt d'une instance AWS OpsWorks Stacks à l'état est « stop_failed » ?
Vérifier que l'instance Amazon EC2 utilise le service de métadonnées d'instance version 1 (IMDSv1)
OpsWorks Stacks prend uniquement en charge IMDSv1, pas IMDSv2. Si une instance gérée par OpsWorks Stacks utilise IMDSv2, OpsWorks Stacks considère l'instance comme défaillante.
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.
Informations connexes
Qu'est-ce qu’Amazon CloudWatch Logs ?
Redémarrage inattendu des instances
Surveillance d'AWS Systems Manager