Je ne parviens pas à démarrer mon instance et je reçois le message d'erreur « Client.InternalError » lors de l'exécution de la commande describe-instances. Comment puis-je résoudre ce problème ?

Date de la dernière mise à jour : 30/03/2020

Lorsque je tente de démarrer mon instance Amazon Elastic Compute Cloud (Amazon EC2), celle-ci ne démarre pas et aucun message d'erreur ne s'affiche, ou elle ne démarre pas et le message d'erreur « Client.InternalError » s'affiche. Comment puis-je résoudre ce problème ? 

Brève description

Il existe plusieurs raisons pour lesquelles le message « Client.InternalError » s'affiche :

  • Vos volumes Elastic Block Store (Amazon EBS) ne sont pas attachés correctement à l'instance.
  • Un volume EBS attaché à l'instance présente une anomalie.
  • Les volumes EBS attachés à l'instance sont chiffrés.

Remarque : si votre instance ne démarre pas et qu'aucun code d'erreur ne s'affiche, exécutez la commande describe-instances. Indiquez ensuite l'ID de votre instance. Dans l'exemple suivant, remplacez MYINSTANCE par l'ID de l'instance que vous tentez de démarrer.

aws ec2 describe-instances --instance-id MYINSTANCE --output json

Vérifiez le motif StateReason inclus dans la réponse JSON renvoyée par la commande.

Dans l'exemple suivant, le motif StateReason renvoyé est « Client.InternalError ».

"StateReason": {
     "Message": "Client.InternalError: Client error on launch",
     "Code": "Client.InternalError"
   },

Solution

Vos volumes EBS ne sont pas attachés correctement à l'instance

Si le volume racine EBS n'est pas attaché à l'instance sous la forme /dev/sda1 ou /dev/xvda, et qu'un second volume EBS est associé à un nom de périphérique identique ou présentant une anomalie, vous ne pouvez pas arrêter ou démarrer l'instance.

  1. Ouvrez la console Amazon EC2, puis sélectionnez l'instance que vous ne parvenez pas à démarrer.
  2. Dans l'onglet Description, vérifiez le nom de périphérique répertorié dans la section En bloc. Le champ En bloc comporte tous les noms des volumes attachés.
  3. Vérifiez que le périphérique racine est correctement attaché et qu'aucun périphérique répertorié ne comporte un nom identique ou présentant une anomalie.
  4. Si un périphérique comporte un nom identique ou présentant une anomalie, détachez le volume concerné, puis renommez-le. Ensuite, attachez à nouveau le volume en indiquant un nouveau nom de périphérique.

Un volume EBS attaché présente une anomalie

Ouvrez la console Amazon EC2, choisissez Volumes, puis vérifiez si l'état du volume correspond à error. Les options qui s'offrent à vous varient selon le volume (volume présentant une anomalie, volume racine ou volume secondaire).

Si le volume présentant une anomalie est un volume secondaire, détachez-le. Vous pouvez dès lors démarrer l'instance.

Si le volume présentant une anomalie est un volume racine et que vous disposez déjà d'un instantané de celui-ci :

  1. Détachez le volume.
  2. Créez un nouveau volume à partir de l'instantané.
  3. Attachez le nouveau volume à l'instance en indiquant le nom de l'instance d'origine. Démarrez l'instance.

Remarque : si le volume présentant une anomalie est un volume racine et que vous ne disposez pas d'un instantané de ce dernier, vous ne pouvez pas redémarrer l'instance. Vous devez, à la place, reconstruire l'instance.

Les volumes attachés sont chiffrés.

Si les volumes attachés sont chiffrés, vérifiez que :

Remarque : pour vérifier si un volume est chiffré, ouvrez la console Amazon EC2, puis sélectionnez Volumes. Les volumes chiffrés sont associés à la mention Chiffré dans la colonne Chiffrement.