Je souhaite déployer une tâche dans Amazon Elastic Container Service (Amazon ECS), mais l'erreur suivante s'affiche : « [AWS service] was unable to place a task because no container instance met all of its requirements. »
Résolution
Remarque : Si des erreurs surviennent lorsque vous exécutez des commandes de l'interface de la ligne de commande AWS (AWS CLI), consultez la section Résoudre des erreurs liées à l’AWS CLI. Vérifiez également que vous utilisez bien la version la plus récente de l’AWS CLI.
Si votre instance de conteneur ne répond pas à une exigence, Amazon ECS ne peut pas déployer de tâches. Pour résoudre l'erreur « no container instance met all of its requirements », vérifiez les détails de l'erreur, puis effectuez les étapes de dépannage appropriées.
Détail de l'erreur : Aucune instance de conteneur enregistrée dans le cluster
Ce problème se produit lorsque votre cluster ne contient aucune instance de conteneur. Pour résoudre ce problème, ajoutez des instances de conteneur à votre cluster. Assurez-vous également que vos instances de conteneur n’omettent pas de s'enregistrer dans le cluster Amazon ECS.
Détail de l'erreur : L'instance de conteneur correspondante la plus proche a rencontré l'erreur « AGENT »
Cette erreur s'affiche lorsque l'agent de conteneur Amazon ECS qui s'exécute sur l'instance de conteneur désignée pour le placement de tâche est déconnecté. Pour résoudre cette erreur, consultez la section Comment puis-je résoudre l'erreur « the closest matching container-instance container-instance-id encountered error 'AGENT' » pour mon service dans Amazon ECS ?
Détail de l'erreur : L'instance de conteneur correspondante la plus proche utilise déjà un port requis par votre tâche
Cette erreur s'affiche lorsqu'un port dont l'instance de conteneur a besoin est déjà utilisé dans l'instance. Vous ne pouvez pas exécuter plusieurs tâches sur le même port. Pour résoudre ce problème, ajoutez d'autres conteneurs d'instance à votre cluster. Ou, pour permettre à vos tâches d'utiliser n'importe quel port disponible sur une instance de conteneur, utilisez le mappage de ports dynamique.
Détail de l'erreur : L'instance de conteneur correspondante la plus proche ne dispose pas d’une mémoire, d’un processeur ou d’unités GPU suffisants disponibles
Si vous recevez une erreur de mémoire insuffisante, de GPU insuffisant ou de processeur insuffisant, vérifiez les ressources utilisées par chaque tâche et instance de conteneur. Pour résoudre ce problème, prenez les mesures suivantes :
Pour plus d’informations sur Processeur insuffisant, consultez la section Comment puis-je corriger l’erreur « the closest matching container-instance container-instance-id has insufficient CPU units available » dans Amazon ECS ?
Utilisez la mise à l'échelle dynamique pour vos instances de conteneur Amazon ECS afin d'ajouter automatiquement d'autres instances au cluster en fonction de l'utilisation des ressources de processeur ou de mémoire. Surveillez les métriques Amazon CloudWatch CpuUtilized et MemoryUtilized afin d'identifier un seuil pour votre système. Puis, utilisez les stratégies mise à l’échelle à étapes du suivi cible et mise à l’échelle à étapes et simplepour mettre à l’échelle votre groupe Auto Scaling en fonction de ce seuil. Pour plus d'informations sur la procédure de surveillance de l'utilisation de vos ressources, consultez la section Surveillance des conteneurs.
Détail de l'erreur : Impossible de dépasser la limite de l’interface réseau Elastic ou de l’interface réseau d'instance de la ressource de tâche
Si l'instance de conteneur ne dispose d'aucun point d'attache de l'interface réseau Elastic disponible, réduisez le nombre de tâches et de réplicas de tâche. Vous pouvez également ajouter d'autres instances de conteneur à votre cluster. Si ce problème persiste, utilisez awsvpcTrunking pour augmenter la densité de l’interface réseau Elastic sur vos instances Amazon Elastic Compute Cloud (Amazon EC2).
Détail de l'erreur : Attribut manquant de l'instance de conteneur correspondante la plus proche requis par votre tâche
Remarque : Pour installer ecs-cli, consultez la page amazon-ecs-cli sur le site Web de GitHub.
Cette erreur s'affiche lorsque votre définition de tâche contient un paramètre qui requiert un attribut d'instance de conteneur qui est manquant sur votre instance de conteneur.
Pour vérifier les attributs manquants, exécutez la commande check-attributes de l’interface de ligne de commande Amazon ECS (ECS CLI) :
$ ecs-cli check-attributes --container-instances container-instance --cluster cluster-name --region region-code --task-def task-def-name
Remarque : Remplacez container-instance par le nom de votre instance de conteneur, cluster-name par le nom de votre cluster, region-code par votre région AWS et task-def-name par votre définition de tâche.
Le résultat de cette commande affiche un tableau contenant les attributs obligatoires qui sont manquants.
Vous pouvez configurer un service Amazon ECS afin qu’il s’exécute sur un sous-réseau différent de celui de l’instance de conteneur. Dans ce cas, la sortie de la commande ecs-cli-check-attributes sera Aucun pour les attributs manquants, même si la tâche échoue en raison de l’erreur d’attribut manquant. Les sous-réseaux de votre service doivent correspondre à l’instance de conteneur. Pour résoudre ce problème, recréez le service Amazon ECS dans le sous-réseau où se trouve l’instance de conteneur. Pour plus d'informations, consultez la section Paramètres de définition de tâche Amazon ECS.
Détail de l'erreur : Contrainte de placement ABCDXYZ insatisfaite
Si vous utilisez des contraintes de placement pour placer des tâches dans des instances spécifiques, assurez-vous que les instances de conteneur prennent en charge les attributs ou les contraintes sélectionnés.
Par exemple, pour distinctinstance, chaque tâche active est placée sur une instance de conteneur différente. Si 5 tâches et 3 instances de conteneur sont disponibles, le placement des tâches échoue et vous recevez l’erreur « constraint unsatisfied ». Pour résoudre ce problème pour dinstinctinstance, ajoutez d'autres instances de conteneur à votre cluster.
Informations connexes
Résolution de problèmes liés à Amazon ECS
Créer un service ECS
Comment puis-je résoudre les problèmes liés à l’arrêt ou à l’échec de démarrage des tâches Amazon ECS lorsque mon conteneur se ferme ?
Affichage de messages liés aux événements de service Amazon ECS