Comment puis-je résoudre les problèmes qui surviennent lorsque je configure un nouveau fournisseur de capacité ou met à jour un fournisseur de capacité existant pour mon cluster Amazon ECS ?

Lecture de 5 minute(s)
0

Je ne parviens pas à configurer un nouveau fournisseur de capacité ou à mettre à jour un fournisseur de capacité existant pour mon cluster Amazon Elastic Container Service (Amazon ECS).

Résolution

Les problèmes courants suivants se produisent lorsque vous configurez un nouveau fournisseur de capacité ou que vous mettez à jour un fournisseur de capacité existant pour votre cluster ECS :

Vous utilisez l'interface de ligne de commande AWS pour créer un fournisseur de capacité de groupe AWS Auto Scaling et vous recevez des erreurs

Lorsque vous utilisez l'interface de ligne de commande AWS pour créer un fournisseur de capacité, passez en revue vos événements AWS CloudTrail pour vérifier la présence de l'API CreateCapacityProvider. Les erreurs d'API CapacityProvider les plus courantes sont les suivantes :

  • ClientException : Ces erreurs peuvent être provoquées par une action client. L'action client utilise une action ou une ressource pour le compte d'un utilisateur d'AWS Identity and Access Management (IAM). Cependant, l'action client ne dispose pas des autorisations requises pour utiliser l'action ou la ressource. Cette erreur peut également indiquer qu'un identifiant n'est pas valide.
  • UpdateInProgressException : Vous recevez cette erreur car une mise à jour de l'agent de conteneur Amazon ECS est déjà en cours sur l'instance de conteneur que vous avez spécifiée. Si l'agent de conteneur se déconnecte pendant une phase de transition, telle que EN SUSPENS ou EN TRANSIT, la mise à jour peut rester bloquée dans cet état. Toutefois, lorsque l'agent se reconnecte, la mise à jour reprend là où elle s'était arrêtée précédemment.

Pour plus d’informations, consultez la section Erreurs.

Remarque : si des erreurs surviennent lorsque vous exécutez des commandes de l’interface de la ligne de commande AWS (AWS CLI), consultez la page Résoudre les erreurs liées à AWS CLI. Vérifiez également que vous utilisez bien la version la plus récente de l’AWS CLI.

Vous recevez l’erreur suivante : « Le fournisseur de capacité spécifié existe déjà. Pour modifier la configuration d'un fournisseur de capacité existant, mettez à jour le fournisseur de capacité »

Lorsque vous créez le fournisseur de capacité, utilisez un nom différent des noms de fournisseurs de capacité utilisés précédemment. Ou bien supprimez le fournisseur de capacité existant portant ce nom, puis créer un nouveau fournisseur de capacité.

Pour afficher une liste de tous les fournisseurs de capacité créés, exécutez la commande de l'interface de ligne de commande AWS describe-capacity providers :

aws ecs describe-capacity-providers --query capacityProviders\[\].name --region example-region

Le résultat est similaire à ce qui suit :

[
    "FARGATE",
    "FARGATE_SPOT",
    "ecs-capacityprovider-1"
]

Pour supprimer un fournisseur de capacité, exécutez la commande de l'interface de ligne de commande AWS delete-capacity provider :

aws ecs delete-capacity-provider --capacity-provider ecs-capacityprovider-1 --region example-region

Pour créer un nouveau fournisseur de capacité, exécutez la commande de l'interface de ligne de commande AWS create-capacity provider :

aws ecs create-capacity-provider --name "example-capacity=provider" --auto-scaling-group-provider "autoScalingGroupArn=arn:aws:autoscaling:us-east-1:123456789012:autoScalingGroup:a1b2c3d4-5678-90ab-cdef-EXAMPLE11111:autoScalingGroupName/MyAutoScalingGroup,managedScaling={status=ENABLED,targetCapacity=100,minimumScalingStepSize=1,maximumScalingStepSize=100},managedTerminationProtection=ENABLED"

Vous recevez l’erreur suivante : « L'ARN du groupe Auto Scaling spécifié est déjà utilisé par un autre fournisseur de capacités. Spécifiez un ARN de groupe Auto Scaling unique et réessayez »

Le groupe AWS Auto Scaling et le fournisseur de capacité doivent entretenir une relation individuelle. Vérifiez que votre fournisseur de capacité est associé à un seul groupe AWS Auto Scaling. Vérifiez que le groupe est associé à un seul fournisseur de capacité.

Vous créez la stratégie du fournisseur de capacité et recevez l’erreur suivante : « Le cluster spécifié est dans un état occupé. Les pièces jointes du cluster doivent être à l'état UPDATE_COMPLETE ou UPDATE_FAILED avant de pouvoir être mises à jour. Patientez et réessayez »

Cette erreur se résout automatiquement après quelques minutes. Une fois l'erreur résolue, essayez à nouveau de mettre à jour le fournisseur de capacité. Vous pouvez également exécuter la commande de l'interface de ligne de commande AWS describe-clusters pour afficher le statut actuel des pièces jointes. Puis, attendez que la pièce jointe soit à l'état UPDATE_COMPLETE :

aws ecs describe-clusters --clusters example-ARN --include ATTACHMENTS --query clusters\[\].attachmentsStatus --region example-region

Une sortie d'état de mise à jour terminée ressemble à ce qui suit :

[
    "UPDATE_COMPLETE"
]

Vous recevez des erreurs en raison de limites imposées par le fournisseur de capacité

Vérifiez que votre fournisseur de capacité répond aux conditions suivantes :

  • Vous ne pouvez pas spécifier plus de six fournisseurs de capacité pour une stratégie de capacité.
  • Utilisez des fournisseurs de capacité de groupe AWS Auto Scaling ou des fournisseurs de capacité AWS Fargate dans votre stratégie de cluster. Vous ne pouvez pas utiliser une combinaison des deux types.
  • La valeur de base de la stratégie du fournisseur de capacité est prise en charge uniquement lorsque vous exécutez les tâches.

Le fournisseur de capacité est créé avec succès avec CloudFormation, mais il n'apparaît pas dans la console

Cela se produit lorsque vous n'associez pas le fournisseur de capacité au cluster dans votre modèle AWS CloudFormation. Pour éviter ce problème, utilisez l’extrait de code suivant dans votre modèle CloudFormation pour associer le fournisseur de capacité au cluster :

...
ECSCluster:
  Type: 'AWS::ECS::Cluster'
  Properties:
    ClusterName: example-cluster
    CapacityProviders:
      - !Ref ECSCapacityProvider
...

Informations connexes

Fournisseurs de capacité Amazon ECS pour le type de lancement EC2

Comment puis-je résoudre l'erreur DELETE_FAILED lors de la suppression du fournisseur de capacité dans Amazon ECS ?

AWS OFFICIEL
AWS OFFICIELA mis à jour il y a 7 mois