Passer au contenu

Pourquoi mon nombre d'instances prévu est-il différent du nombre d'instances réel géré par les fournisseurs de capacité Amazon ECS ?

Lecture de 4 minute(s)
0

Mon fournisseur de capacité Amazon Elastic Container Service (Amazon ECS) a un nombre d'instances souhaité différent de celui auquel je m'attendais. Ou bien, le nombre d'instances souhaité est différent de celui du groupe Amazon EC2 Auto Scaling associé.

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.

Vérifier si les instances du groupe EC2 Auto Scaling n'ont pas réussi à rejoindre le cluster

Vérifiez si une instance apparaît dans le groupe Auto Scaling associé à votre fournisseur de capacité mais pas sur la console Amazon ECS. En cas de problème de configuration réseau, d'AWS Identity and Access Management (IAM) ou d'agent de conteneur Amazon ECS, l'instance de conteneur ne peut pas rejoindre le cluster.

Pour résoudre ces problèmes, consultez la section Pourquoi mon instance Amazon EC2 ne peut-elle pas rejoindre le cluster Amazon ECS ?

Vérifier les configurations du fournisseur de capacité

Utilisez la console Amazon ECS ou l'AWS CLI.

Console Amazon ECS

Procédez comme suit :

  1. Ouvrez la console Amazon ECS.
  2. Dans le volet de navigation, sélectionnez Clusters.
  3. Sélectionnez votre cluster.
  4. Choisissez l'onglet Infrastructure.

AWS CLI

Exécutez la commande describe-capacity-providers suivante :

aws ecs describe-capacity-providers --capacity-providers YOUR_CAPACITY_PROVIDER

Remarque : Remplacez YOUR_CAPACITY_PROVIDER par le nom de votre fournisseur de capacité.

Dans la sortie, vérifiez les valeurs de TargetCapacity et de minimumScalingStepSize.

Pour maintenir une capacité supplémentaire pour vos clusters, définissez la valeur de TargetCapacity sur une valeur inférieure à 100 %. Plus la valeur est faible, plus la capacité supplémentaire de votre cluster est élevée. Pour plus d'informations sur la capacité cible, consultez la section Analyse approfondie de l’autoscaling des clusters Amazon ECS. Pour modifier TargetCapacity, utilisez la console Amazon ECS. Vous pouvez également exécuter la commande update-capacity-provider suivante :

aws ecs update-capacity-provider --name YOUR_CAPACITY_PROVIDER --auto-scaling-group-provider managedScaling={targetCapacity=DESIRED_VALUE}

Remarque : Remplacez YOUR_CAPACITY_PROVIDER par le nom de votre fournisseur de capacité et DESIRED_VALUE par la valeur de TargetCapacity.

MinimumScalingStepSize définit le nombre minimum d'instances selon lequel Amazon ECS peut faire l’objet d’une mise à l'échelle horizontale ascendante. Amazon ECS effectue une mise à l’échelle en fonction de MinimumScalingStepSize, même lorsque la demande réelle est inférieure à la valeur. Par conséquent, Amazon ECS peut associer temporairement plus d'instances de conteneur à votre fournisseur de capacité que nécessaire. Pour mettre à jour MinimumScalingStepSize, exécutez la commande update-capacity-provider :

aws ecs update-capacity-provider --name YOUR_CAPACITY_PROVIDER --auto-scaling-group-provider managedScaling={minimumScalingStepSize=DESIRED_VALUE}

Remarque : Remplacez YOUR_CAPACITY_PROVIDER par le nom de votre fournisseur de capacité et DESIRED_VALUE par la valeur de MinimumScalingStepSize.

Pour plus d'informations, consultez la section Gérer automatiquement la capacité Amazon ECS grâce à l’autoscaling des clusters.

Vérifier les configurations du groupe Auto Scaling

Pour vérifier les politiques d’autoscaling et les configurations de capacité de votre groupe Auto Scaling, exécutez la commande describe-auto-scaling-groups suivante :

aws autoscaling describe-auto-scaling-groups --auto-scaling-group-names YOUR_AUTO_SCALING_GROUP

Remarque : Remplacez YOUR_AUTO_SCALING_GROUP par le nom du groupe Auto Scaling associé à votre fournisseur de capacité.

L’autoscaling du cluster Amazon ECS ajoute automatiquement des politiques de mise à l’échelle au groupe Auto Scaling associé à votre fournisseur de capacité. C'est pourquoi il n'est pas recommandé de modifier ou d'ajouter des politiques de mise à l’échelle associées au groupe Auto Scaling.

Pour mettre à l’échelle Amazon ECS en fonction de mesures telles que l'utilisation du processeur, il est recommandé d'utiliser AWS Application Auto Scaling. Pour plus d'informations sur l'utilisation de métriques personnalisées, consultez la section Autoscaling des services Amazon ECS en fonction de métriques personnalisées avec Application Auto Scaling.

L’autoscaling du cluster ne modifie pas les valeurs de MinimumCapacity ou MaximumCapacity pour le groupe Auto Scaling. Si MinimumCapacity est supérieur à 0, il se peut qu'il y ait des instances vides. Si MaximumCapacity est trop faible, le fournisseur de capacité ne peut pas effectuer de mise à l’échelle pour répondre aux demandes de vos services Amazon ECS. Pour modifier ces valeurs, exécutez la commande update-auto-scaling-group suivante :

aws autoscaling update-auto-scaling-group --auto-scaling-group-name YOUR_AUTO_SCALING_GROUP --min-size DESIRED_VALUE --max-size DESIRED_VALUE

Remarque : Remplacez YOUR_AUTO_SCALING_GROUP par le nom du groupe Auto Scaling associé à votre fournisseur de capacité et DESIRED_VALUE par vos valeurs de capacité.

AWS OFFICIELA mis à jour il y a un an