Résoudre les problèmes de lancement d'instance - Amazon Elastic Compute Cloud

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.

Résoudre les problèmes de lancement d'instance

Le problème suivant vous empêche de lancer une instance.

Nom de périphérique non valide

Description

Vous obtenez l'erreur Invalid device name device_name lorsque vous essayez de lancer une nouvelle instance.

Cause

Si vous obtenez cette erreur lorsque vous essayez de lancer une instance, le nom de périphérique spécifié pour un ou plusieurs volumes dans la demande comporte un nom de périphérique non valide. Les causes possibles incluent :

  • Le nom de périphérique est peut-être déjà utilisé par l'AMI sélectionnée.

  • Le nom de périphérique peut être réservé aux volumes racine.

  • Le nom de périphérique peut être utilisé pour un autre volume dans la demande.

  • Le nom de périphérique peut ne pas être valide pour le système d'exploitation.

Solution

Pour résoudre le problème :

  • Assurez-vous que le nom de périphérique n'est pas utilisé dans l'AMI que vous avez sélectionnée. Exécutez la commande suivante pour afficher les noms de périphériques utilisés par l'AMI.

    $ aws ec2 describe-images --image-id ami_id --query 'Images[*].BlockDeviceMappings[].DeviceName'
  • Assurez-vous que vous n'utilisez pas un nom de périphérique qui est réservé aux volumes racine. Pour de plus amples informations, veuillez consulter Noms d’appareil disponibles.

  • Assurez-vous que chaque volume spécifié dans votre demande possède un nom de périphérique unique.

  • Assurez-vous que les noms de périphériques que vous avez spécifiés sont au format correct. Pour de plus amples informations, veuillez consulter Noms d’appareil disponibles.

Dépassement de la limite d'instance

Description

Vous obtenez l'erreur InstanceLimitExceeded lorsque vous essayez de lancer une nouvelle instance ou de redémarrer une instance arrêtée.

Cause

Si vous obtenez une erreur InstanceLimitExceeded lorsque vous essayez de lancer une nouvelle instance ou de redémarrer une instance arrêté, vous avez atteint la limite du nombre d'instances que vous pouvez lancer dans une région. Lorsque vous créez votre compte AWS, nous définissons des limites sur nombre d'instances que vous pouvez exécuter en fonction des régions.

Solution

Vous pouvez demander une augmentation de la limite d'instance par région. Pour de plus amples informations, veuillez consulter Quotas de service Amazon EC2.

Capacité d'instance insuffisante

Description

Vous obtenez l'erreur InsufficientInstanceCapacity lorsque vous essayez de lancer une nouvelle instance ou de redémarrer une instance arrêtée.

Cause

Si vous obtenez cette erreur lorsque vous essayez de lancer une instance ou de redémarrer une instance arrêtée, AWS n'a actuellement pas assez de capacité à la demande disponible pour répondre à votre demande.

Solution

Pour résoudre ce problème, essayez ce qui suit :

  • Attendez quelques minutes, puis renvoyez votre demande. La capacité peut changer fréquemment.

  • Envoyez une nouvelle demande avec un nombre réduit d'instances. Par exemple, si vous faites une demande simple pour lancer 15 instances, essayez de faire 3 demandes pour 5 instances ou 15 demandes pour 1 instance à la place.

  • Si vous lancez une instance, soumettez une nouvelle demande sans spécifier de zone de disponibilité.

  • Si vous lancez une instance, envoyez une nouvelle demande en utilisant un type d'instance différent (que vous pouvez redimensionner à un stade ultérieur). Pour de plus amples informations, veuillez consulter Modifier le type d'instance.

  • Si vous lancez des instances dans un groupe de placement du cluster, vous pouvez recevoir une erreur de capacité insuffisante. Pour de plus amples informations, veuillez consulter Utilisation des groupes de placement.

La configuration demandée n'est actuellement pas prise en charge. Consultez la documentation pour voir les configurations prises en charge.

Description

Vous obtenez l'erreur Unsupported lorsque vous essayez de lancer une nouvelle instance, car la configuration de l'instance n'est pas prise en charge.

Cause

Le message d'erreur fournit des informations supplémentaires. Par exemple, un type d'instance ou une option d'achat d'instance peut ne pas être prise en charge dans la région ou la zone de disponibilité spécifiée.

Solution

Essayez une autre configuration d'instance. Pour rechercher un type d'instance qui répond à vos besoins, consultez Rechercher un type d’instance Amazon EC2.

Mise hors service immédiate de l'instance

Description

Votre instance passe de l'état pending à l'état terminated.

Cause

Voici quelques raisons qui expliquent pourquoi une instance peut se terminer immédiatement :

  • Vous avez dépassé vos limites de volumes EBS. Pour de plus amples informations, veuillez consulter Limites de volume d’instance.

  • Un instantané EBS est corrompu.

  • Le volume EBS racine est chiffré et vous n'êtes pas autorisé à accéder à la clé KMS pour le déchiffrement.

  • Un instantané spécifié dans le mappage de périphérique de stockage en mode bloc pour l'AMI est chiffré et vous ne disposez pas des autorisations nécessaires pour accéder à la clé KMS pour la déchiffrer, ou vous n'avez pas accès à la clé KMS pour chiffrer les volumes restaurés.

  • L'AMI basée sur le stockage d'instance que vous avez utilisée pour lancer l'instance ne possède par une partie obligatoire (un fichier image.part.xx).

Pour de plus amples informations, veuillez récupérer le motif de résiliation à l'aide de l'une des méthodes suivantes.

Pour obtenir la cause de la résiliation à l'aide de la console Amazon EC2
  1. Ouvrez la console Amazon EC2 sur https://console.aws.amazon.com/ec2/.

  2. Dans le panneau de navigation, sélectionnez instances, puis choisissez l'instance.

  3. Dans le premier onglet, recherchez le motif en regard de State transition reason (Motif de transition de l'état).

Pour obtenir la cause de la résiliation à l'aide de l AWS Command Line Interface
  1. Utilisez la commande describe-instances et spécifiez l'ID de l'instance.

    aws ec2 describe-instances --instance-id instance_id
  2. Vérifiez la réponse JSON renvoyée par la commande et notez les valeurs de l'élément de réponse StateReason.

    Le bloc de code suivant présente un exemple d'élément de réponse StateReason.

    "StateReason": { "Message": "Client.VolumeLimitExceeded: Volume limit exceeded", "Code": "Server.InternalError" },
Pour obtenir la cause de la résiliation à l'aide de l AWS CloudTrail

Pour de plus amples informations, veuillez consulter Affichage des événements avec l'historique des événements CloudTrail dans le AWS CloudTrailGuide de l’utilisateur.

Solution

En fonction de la cause de la résiliation, exécutez l'une des actions suivantes :

  • Client.VolumeLimitExceeded: Volume limit exceeded — Supprimez les volumes inutilisés. Vous pouvez envoyer une demande d'augmentation de votre limite de volumes.

  • Client.InternalError: Client error on launch : assurez-vous que vous disposez des autorisations requises pour accéder aux AWS KMS keys utilisées pour déchiffrer et chiffrer des volumes. Pour de plus amples informations, veuillez consulter Utilisation des politiques de clé AWS KMS dans le AWS Key Management Service Guide du développeur.

Autorisations insuffisantes

Description

Vous obtenez l'erreur "errorMessage": "You are not authorized to perform this operation." lorsque vous essayez de lancer une nouvelle instance et que le lancement échoue.

Cause

Si cette erreur s'affiche lorsque vous essayez de lancer une instance, cela signifie que vous ne disposez pas des autorisations IAM requises pour lancer l'instance.

Les autorisations manquantes possibles incluent :

  • ec2:RunInstances

  • iam:PassRole

D'autres autorisations peuvent également être manquantes. Pour obtenir la liste des autorisations requises pour lancer une instance, consultez les exemples de politiques IAM sous Exemple : utiliser l’assistant de lancement d’instances d’EC2 et Instances de lancement (RunInstances).

Solution

Pour résoudre le problème :

  • Si vous faites des demandes en tant qu'utilisateur IAM, vérifiez que vous avez les autorisation suivantes :

    • ec2:RunInstances avec une ressource générique (« * »)

    • iam:PassRole avec la ressource correspondant à l'ARN du rôle (par exemple, arn:aws:iam::999999999999:role/ExampleRoleName)

  • Si vous ne disposez pas des autorisations précédentes, modifiez la politique IAM associée au rôle ou à l'utilisateur IAM pour ajouter les autorisations requises manquantes.

Si votre problème persiste et que vous recevez toujours un message d'erreur d'échec de lancement, vous pouvez décoder le message d'échec d'autorisation inclus dans l'erreur. Le message décodé inclut les autorisations qui ne figurent pas dans la politique IAM. Pour plus d'informations, voir Comment puis-je décoder un message d'échec d'autorisation après avoir reçu une erreur « UnauthorizedOperation » lors du lancement d'une instance EC2 ?