Comment éliminer l'erreur « Le paramètre de protection de résiliation gérée pour le fournisseur de capacité n'est pas valide » dans Amazon ECS ?

Lecture de 4 minute(s)
0

Lorsque j'essaie de créer un fournisseur de capacité de cluster dans Amazon Elastic Container Service (Amazon ECS), je reçois l'erreur suivante : « Le paramètre de protection de résiliation gérée pour le fournisseur de capacité n'est pas valide. Pour activer la protection de résiliation gérée d'un fournisseur de capacité, la protection d'instance contre la diminution de la taille des instances doit être activée pour le groupe Auto Scaling. » Comment éliminer cette erreur ?

Solution

Pour éliminer l'erreur, activez la protection contre la diminution en charge sur votre groupe Auto Scaling. Vous pouvez activer la protection contre la diminution en charge avec la console Amazon Elastic Compute Cloud (Amazon EC2) ou l'interface de ligne de commande AWS (AWS CLI).

Remarque : si vous recevez des erreurs lors de l'exécution de commandes AWS CLI, assurez-vous que vous utilisez la version la plus récente d'AWS CLI.

À l'aide de la console Amazon EC2

1.    Ouvrez la console Amazon EC2, puis choisissez Auto Scaling Groups (Groupes Auto Scaling) dans le volet de navigation.

2.    Sélectionnez votre groupe Auto Scaling. Dans l'onglet Details (Détails), faites défiler jusqu'à Advanced configurations (Configurations avancées), puis choisissez Edit (Modifier).

3.    Sous Instance scale-in protection (Protection contre la diminution en charge d'instance), sélectionnez Enable instance scale-in protection (Activer la protection contre la diminution en charge d'instance).

4.    Sélectionnez Update (Mettre à jour).

Utilisation de l'interface de ligne de commande AWS (AWS CLI)

Pour activer la protection contre la diminution en charge pour le groupe Auto Scaling à l'aide de l'interface de ligne de commande AWS, exécutez la commande suivante :

aws autoscaling update-auto-scaling-group \
    --region RegionID \
    --auto-scaling-group-name yourASGName \
    --new-instances-protected-from-scale-in

Remarque : remplacez IDderégion par votre région AWS. Remplacez NomDevotregASG par le nom de votre groupe Auto Scaling.

Dépannage

Si vous recevez toujours l'erreur, certaines de vos instances existantes lancées par le groupe Auto Scaling peuvent ne pas bénéficier de la protection contre la diminution en charge.

Pour appliquer une protection contre la diminution en charge aux instances restantes à l'aide de la console Amazon EC2 ou de l'interface de ligne de commande AWS, procédez comme suit :

À l'aide de la console Amazon EC2

1.    Ouvrez la console Amazon EC2, puis choisissez Auto Scaling Groups (Groupes Auto Scaling) dans le volet de navigation.

2.    Sélectionnez votre groupe Auto Scaling, puis choisissez l'onglet Instances.

3.    Depuis la colonne Instance ID (ID d'instance) sélectionnez les instances auxquelles vous voulez appliquer la protection contre la diminution en charge.

4.    Sous l'onglet Instance management (Gestion des instances), sélectionnez Actions, Set scale-in protection (Définir la protection contre la diminution en charge).

5.    Créez un fournisseur de capacité dans Amazon ECS.

Utilisation de l'interface de ligne de commande AWS (AWS CLI)

Pour répertorier les instances de votre groupe Auto Scaling qui ne disposent pas d'une protection contre la diminution en charge activée, exécutez la commande AWS CLI suivante à l'aide de la fonction de requête :

aws autoscaling describe-auto-scaling-groups \
    --region RegionID \
    --auto-scaling-group-names yourASGName \
    --query 'AutoScalingGroups[].Instances[?ProtectedFromScaleIn==`true`].{Id:InstanceId}' \
    --output text

Remarque : remplacez IDderégion par votre région AWS. Remplacez NomDevotregASG par le nom de votre groupe Auto Scaling.

Ensuite, procédez comme suit pour activer la protection contre la diminution en charge pour les instances spécifiées dans votre groupe Auto Scaling :

1.    Exécutez la commande suivante :

aws autoscaling set-instance-protection \
    --region RegionID \
    --instance-ids yourInstanceID \
    --auto-scaling-group-name yourASGName \
    --protected-from-scale-in

Remarque : remplacez IDderégion par votre région AWS. Remplacez  IDdevotreInstance par votre ID d'instance. Remplacez NomDevotregASG par le nom de votre groupe Auto Scaling. 2.    Créez un fournisseur de capacité dans Amazon ECS.


Informations connexes

Amazon ECS Cluster Auto Scaling

AWS OFFICIEL
AWS OFFICIELA mis à jour il y a 3 ans