Exemples d’utilisation de l’AWS CLI avec Auto Scaling - AWS Command Line Interface

Exemples d’utilisation de l’AWS CLI avec Auto Scaling

Les exemples de code suivants montrent comment réaliser des actions et mettre en œuvre des scénarios courants en utilisant l’AWS Command Line Interface avec Auto Scaling.

Les actions sont des extraits de code de programmes plus larges et doivent être exécutées dans leur contexte. Alors que les actions vous indiquent comment appeler des fonctions de service individuelles, vous pouvez les voir en contexte dans leurs scénarios associés.

Chaque exemple inclut un lien vers le code source complet, où vous trouverez des instructions sur la configuration et l’exécution du code en contexte.

Rubriques

Actions

L’exemple de code suivant montre comment utiliser attach-instances.

AWS CLI

Pour attacher une instance à un groupe Auto Scaling

Cet exemple attache l’instance spécifiée au groupe Auto Scaling spécifié.

aws autoscaling attach-instances \ --instance-ids i-061c63c5eb45f0416 \ --auto-scaling-group-name my-asg

Cette commande ne produit aucune sortie.

  • Pour plus de détails sur l’API, consultez AttachInstances dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser attach-load-balancer-target-groups.

AWS CLI

Pour attacher un groupe cible à un groupe Auto Scaling

Cet exemple attache le groupe cible spécifié au groupe Auto Scaling spécifié.

aws autoscaling attach-load-balancer-target-groups \ --auto-scaling-group-name my-asg \ --target-group-arns arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Elastic Load Balancing et Amazon EC2 Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

L’exemple de code suivant montre comment utiliser attach-load-balancers.

AWS CLI

Pour attacher un Classic Load Balancer à un groupe Auto Scaling

Cet exemple attache le Classic Load Balancer spécifié au groupe Auto Scaling spécifié.

aws autoscaling attach-load-balancers \ --load-balancer-names my-load-balancer \ --auto-scaling-group-name my-asg

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Elastic Load Balancing et Amazon EC2 Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

  • Pour plus de détails sur l’API, consultez AttachLoadBalancers dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser cancel-instance-refresh.

AWS CLI

Pour annuler une actualisation d’instance

L’exemple cancel-instance-refresh suivant annule une actualisation d’instance en cours pour le groupe Auto Scaling spécifié.

aws autoscaling cancel-instance-refresh \ --auto-scaling-group-name my-asg

Sortie :

{ "InstanceRefreshId": "08b91cf7-8fa6-48af-b6a6-d227f40f1b9b" }

Pour plus d’informations, consultez Annuler une actualisation d’instance dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

  • Pour plus de détails sur l’API, consultez CancelInstanceRefresh dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser complete-lifecycle-action.

AWS CLI

Pour effectuer une action de cycle de vie

Cet exemple indique à Amazon EC2 Auto Scaling que l’action du cycle de vie spécifiée est terminée afin qu’il puisse finaliser le lancement ou la résiliation de l’instance.

aws autoscaling complete-lifecycle-action \ --lifecycle-hook-name my-launch-hook \ --auto-scaling-group-name my-asg \ --lifecycle-action-result CONTINUE \ --lifecycle-action-token bcd2f1b8-9a78-44d3-8a7a-4dd07d7cf635

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Hooks de cycle de vie Amazon EC2 Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

  • Pour plus de détails sur l’API, consultez CompleteLifecycleAction dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser create-auto-scaling-group.

AWS CLI

Exemple 1 : pour créer un groupe Auto Scaling

L’exemple create-auto-scaling-group suivant crée un groupe Auto Scaling dans les sous-réseaux de plusieurs zones de disponibilité au sein d’une région. Les instances sont lancées avec la version par défaut du modèle de lancement spécifié. Notez que les valeurs par défaut sont utilisées pour la plupart des autres paramètres, tels que les politiques de résiliation et la configuration de la surveillance de l’état.

aws autoscaling create-auto-scaling-group \ --auto-scaling-group-name my-asg \ --launch-template LaunchTemplateId=lt-1234567890abcde12 \ --min-size 1 \ --max-size 5 \ --vpc-zone-identifier "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782"

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Groupes Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 2 : pour attacher un Application Load Balancer, un Network Load Balancer ou un Gateway Load Balancer

Cet exemple indique l’ARN d’un groupe cible pour un équilibreur de charge qui prend en charge le trafic attendu. Le type de surveillance de l’état indique ELB. Dès lors, quand Elastic Load Balancing signale une instance défectueuse, le groupe Auto Scaling la remplace. La commande définit également une période de grâce de surveillance de l’état de 600 secondes. Cette période de grâce permet d’éviter la résiliation prématurée des instances nouvellement lancées.

aws autoscaling create-auto-scaling-group \ --auto-scaling-group-name my-asg \ --launch-template LaunchTemplateId=lt-1234567890abcde12 \ --target-group-arns arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/943f017f100becff \ --health-check-type ELB \ --health-check-grace-period 600 \ --min-size 1 \ --max-size 5 \ --vpc-zone-identifier "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782"

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Elastic Load Balancing et Amazon EC2 Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 3 : pour spécifier un groupe de placement et utiliser la dernière version du modèle de lancement

Cet exemple lance des instances dans un groupe de placement dans une même zone de disponibilité. Cela peut être utile pour les groupes à faible latence soumis à des charges de travail HPC. Cet exemple indique également la taille minimale, la taille maximale et la capacité souhaitée du groupe.

aws autoscaling create-auto-scaling-group \ --auto-scaling-group-name my-asg \ --launch-template LaunchTemplateId=lt-1234567890abcde12,Version='$Latest' \ --min-size 1 \ --max-size 5 \ --desired-capacity 3 \ --placement-group my-placement-group \ --vpc-zone-identifier "subnet-6194ea3b"

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Groupes de placement dans le Guide de l’utilisateur Amazon EC2 pour les instances Linux.

Exemple 4 : pour spécifier un groupe Auto Scaling à instance unique et utiliser une version spécifique du modèle de lancement

Cet exemple crée un groupe Auto Scaling dont les capacités minimale et maximale sont définies sur 1 de manière à garantir l’exécution d’une instance. Cette commande spécifie également la version 1 d’un modèle de lancement dans lequel l’ID d’une ENI existante est spécifié. Lorsque vous utilisez un modèle de lancement qui spécifie une ENI existante pour eth0, vous devez spécifier une zone de disponibilité pour le groupe Auto Scaling qui correspond à l’interface réseau, sans avoir à spécifier également aucun ID de sous-réseau dans la demande.

aws autoscaling create-auto-scaling-group \ --auto-scaling-group-name my-asg-single-instance \ --launch-template LaunchTemplateName=my-template-for-auto-scaling,Version='1' \ --min-size 1 \ --max-size 1 \ --availability-zones us-west-2a

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Groupes Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 5 : pour spécifier une politique de résiliation différente

Cet exemple crée un groupe Auto Scaling à l’aide d’une configuration de lancement et définit la politique de résiliation pour résilier les instances les plus anciennes en premier. Cette commande applique également une balise au groupe et à ses instances, avec la clé Role et la valeur WebServer.

aws autoscaling create-auto-scaling-group \ --auto-scaling-group-name my-asg \ --launch-configuration-name my-lc \ --min-size 1 \ --max-size 5 \ --termination-policies "OldestInstance" \ --tags "ResourceId=my-asg,ResourceType=auto-scaling-group,Key=Role,Value=WebServer,PropagateAtLaunch=true" \ --vpc-zone-identifier "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782"

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Utilisation des politiques de résiliation Amazon EC2 Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 6 : pour spécifier un hook de cycle de vie de lancement

Cet exemple crée un groupe Auto Scaling avec un hook de cycle de vie qui prend en charge une action personnalisée lors du lancement de l’instance.

aws autoscaling create-auto-scaling-group \ --cli-input-json file://~/config.json

Contenu du fichier config.json :

{ "AutoScalingGroupName": "my-asg", "LaunchTemplate": { "LaunchTemplateId": "lt-1234567890abcde12" }, "LifecycleHookSpecificationList": [{ "LifecycleHookName": "my-launch-hook", "LifecycleTransition": "autoscaling:EC2_INSTANCE_LAUNCHING", "NotificationTargetARN": "arn:aws:sqs:us-west-2:123456789012:my-sqs-queue", "RoleARN": "arn:aws:iam::123456789012:role/my-notification-role", "NotificationMetadata": "SQS message metadata", "HeartbeatTimeout": 4800, "DefaultResult": "ABANDON" }], "MinSize": 1, "MaxSize": 5, "VPCZoneIdentifier": "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782", "Tags": [{ "ResourceType": "auto-scaling-group", "ResourceId": "my-asg", "PropagateAtLaunch": true, "Value": "test", "Key": "environment" }] }

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Hooks de cycle de vie Amazon EC2 Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 7 : pour spécifier un hook de cycle de vie de résiliation

Cet exemple crée un groupe Auto Scaling avec un hook de cycle de vie qui prend en charge une action personnalisée lors de la résiliation de l’instance.

aws autoscaling create-auto-scaling-group \ --cli-input-json file://~/config.json

Contenu de config.json :

{ "AutoScalingGroupName": "my-asg", "LaunchTemplate": { "LaunchTemplateId": "lt-1234567890abcde12" }, "LifecycleHookSpecificationList": [{ "LifecycleHookName": "my-termination-hook", "LifecycleTransition": "autoscaling:EC2_INSTANCE_TERMINATING", "HeartbeatTimeout": 120, "DefaultResult": "CONTINUE" }], "MinSize": 1, "MaxSize": 5, "TargetGroupARNs": [ "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067" ], "VPCZoneIdentifier": "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782" }

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Hooks de cycle de vie Amazon EC2 Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 8 : pour spécifier une politique de résiliation personnalisée

Cet exemple crée un groupe Auto Scaling qui spécifie une politique de résiliation de fonction Lambda personnalisée qui indique à Amazon EC2 Auto Scaling quelles instances peuvent être résiliées en toute sécurité lors d’une réduction horizontale.

aws autoscaling create-auto-scaling-group \ --auto-scaling-group-name my-asg-single-instance \ --launch-template LaunchTemplateName=my-template-for-auto-scaling \ --min-size 1 \ --max-size 5 \ --termination-policies "arn:aws:lambda:us-west-2:123456789012:function:HelloFunction:prod" \ --vpc-zone-identifier "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782"

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Création d’une politique de résiliation personnalisée avec Lambda dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

  • Pour plus de détails sur l’API, consultez CreateAutoScalingGroup dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser create-launch-configuration.

AWS CLI

Exemple 1 : pour créer une configuration de lancement

Cet exemple crée une configuration de lancement simple.

aws autoscaling create-launch-configuration \ --launch-configuration-name my-lc \ --image-id ami-04d5cc9b88example \ --instance-type m5.large

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Création d’une configuration du lancement dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 2 : pour créer une configuration de lancement avec un groupe de sécurité, une paire de clés et un script de démarrage

Cet exemple crée une configuration de lancement avec un groupe de sécurité, une paire de clés et un script de démarrage contenus dans les données utilisateur.

aws autoscaling create-launch-configuration \ --launch-configuration-name my-lc \ --image-id ami-04d5cc9b88example \ --instance-type m5.large \ --security-groups sg-eb2af88example \ --key-name my-key-pair \ --user-data file://myuserdata.txt

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Création d’une configuration du lancement dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 3 : pour créer une configuration de lancement avec un rôle IAM

Cet exemple crée une configuration de lancement avec le nom de profil d’instance d’un rôle IAM.

aws autoscaling create-launch-configuration \ --launch-configuration-name my-lc \ --image-id ami-04d5cc9b88example \ --instance-type m5.large \ --iam-instance-profile my-autoscaling-role

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Rôle IAM pour les applications qui s’exécutent sur des instances Amazon EC2 dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 4 : pour créer une configuration de lancement avec la surveillance détaillée activée

Cet exemple crée une configuration de lancement avec la surveillance détaillée d’EC2 activée, qui envoie des métriques EC2 à CloudWatch par intervalles d’une minute.

aws autoscaling create-launch-configuration \ --launch-configuration-name my-lc \ --image-id ami-04d5cc9b88example \ --instance-type m5.large \ --instance-monitoring Enabled=true

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Configuration de la surveillance pour les instances Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 5 : pour créer une configuration de lancement d’instances Spot

Cet exemple crée une configuration de lancement qui utilise les instances Spot comme seule option d’achat.

aws autoscaling create-launch-configuration \ --launch-configuration-name my-lc \ --image-id ami-04d5cc9b88example \ --instance-type m5.large \ --spot-price "0.50"

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Demande d’instances Spot dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 6 : pour créer une configuration de lancement avec une instance EC2

Cet exemple crée une configuration de lancement basée sur les attributs d’une instance existante. Il remplace la location de placement et indique si une adresse IP publique est définie en incluant les options --placement-tenancy et --no-associate-public-ip-address.

aws autoscaling create-launch-configuration \ --launch-configuration-name my-lc-from-instance \ --instance-id i-0123a456700123456 \ --instance-type m5.large \ --no-associate-public-ip-address \ --placement-tenancy dedicated

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Création d’une configuration du lancement avec une instance EC2 dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 7 : pour créer une configuration de lancement avec un mappage de périphérique de stockage en mode bloc pour un volume Amazon EBS

Cet exemple crée une configuration de lancement avec un mappage de périphérique de stockage en mode bloc pour un volume gp3 d’Amazon EBS avec le nom d’appareil /dev/sdh et une taille de volume de 20.

aws autoscaling create-launch-configuration \ --launch-configuration-name my-lc \ --image-id ami-04d5cc9b88example \ --instance-type m5.large \ --block-device-mappings '[{"DeviceName":"/dev/sdh","Ebs":{"VolumeSize":20,"VolumeType":"gp3"}}]'

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez EBS dans la Référence des API d’Amazon EC2 Auto Scaling.

Pour plus d’informations sur la syntaxe afin de citer des valeurs de paramètres au format JSON, consultez Utilisation de guillemets avec des chaînes dans l’AWS CLI dans le Guide de l’utilisateur de l’interface de ligne de commande AWS.

Exemple 8 : pour créer une configuration de lancement avec un mappage de périphérique de stockage en mode bloc pour un volume de stockage d’instances

Cet exemple crée une configuration de lancement avec ephemeral1 comme volume de stockage d’instances avec le nom de périphérique /dev/sdc.

aws autoscaling create-launch-configuration \ --launch-configuration-name my-lc \ --image-id ami-04d5cc9b88example \ --instance-type m5.large \ --block-device-mappings '[{"DeviceName":"/dev/sdc","VirtualName":"ephemeral1"}]'

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez BlockDeviceMapping dans la Référence des API d’Amazon EC2 Auto Scaling.

Pour plus d’informations sur la syntaxe afin de citer des valeurs de paramètres au format JSON, consultez Utilisation de guillemets avec des chaînes dans l’AWS CLI dans le Guide de l’utilisateur de l’interface de ligne de commande AWS.

Exemple 9 : pour créer une configuration de lancement et empêcher un périphérique de stockage en mode bloc de s’attacher au moment du lancement

Cet exemple crée une configuration de lancement qui supprime un périphérique de stockage en mode bloc spécifié par le mappage de périphérique de stockage en mode bloc de l’AMI (par exemple, /dev/sdf).

aws autoscaling create-launch-configuration \ --launch-configuration-name my-lc \ --image-id ami-04d5cc9b88example \ --instance-type m5.large \ --block-device-mappings '[{"DeviceName":"/dev/sdf","NoDevice":""}]'

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez BlockDeviceMapping dans la Référence des API d’Amazon EC2 Auto Scaling.

Pour plus d’informations sur la syntaxe afin de citer des valeurs de paramètres au format JSON, consultez Utilisation de guillemets avec des chaînes dans l’AWS CLI dans le Guide de l’utilisateur de l’interface de ligne de commande AWS.

L’exemple de code suivant montre comment utiliser create-or-update-tags.

AWS CLI

Pour créer ou mettre à jour des balises pour un groupe Auto Scaling

Cet exemple ajoute deux balises au groupe Auto Scaling spécifié.

aws autoscaling create-or-update-tags \ --tags ResourceId=my-asg,ResourceType=auto-scaling-group,Key=Role,Value=WebServer,PropagateAtLaunch=true ResourceId=my-asg,ResourceType=auto-scaling-group,Key=Dept,Value=Research,PropagateAtLaunch=true

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Balisage de groupes et d’instances Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

  • Pour plus de détails sur l’API, consultez CreateOrUpdateTags dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser delete-auto-scaling-group.

AWS CLI

Exemple 1 : pour supprimer le groupe Auto Scaling spécifié

Cet exemple supprime le groupe Auto Scaling spécifié.

aws autoscaling delete-auto-scaling-group \ --auto-scaling-group-name my-asg

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Suppression de votre infrastructure Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 2 : pour forcer la suppression du groupe Auto Scaling spécifié

Pour supprimer le groupe Auto Scaling sans attendre la résiliation de ses instances, utilisez l’option --force-delete.

aws autoscaling delete-auto-scaling-group \ --auto-scaling-group-name my-asg \ --force-delete

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Suppression de votre infrastructure Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

  • Pour plus de détails sur l’API, consultez DeleteAutoScalingGroup dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser delete-launch-configuration.

AWS CLI

Pour supprimer une configuration de lancement

Cet exemple supprime la configuration de lancement spécifiée.

aws autoscaling delete-launch-configuration \ --launch-configuration-name my-launch-config

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Suppression de votre infrastructure Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

L’exemple de code suivant montre comment utiliser delete-lifecycle-hook.

AWS CLI

Pour supprimer un hook de cycle de vie

Cet exemple supprime le hook de cycle de vie spécifié.

aws autoscaling delete-lifecycle-hook \ --lifecycle-hook-name my-lifecycle-hook \ --auto-scaling-group-name my-asg

Cette commande ne produit aucune sortie.

  • Pour plus de détails sur l’API, consultez DeleteLifecycleHook dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser delete-notification-configuration.

AWS CLI

Pour supprimer une notification Auto Scaling

Cet exemple supprime la notification spécifiée du groupe Auto Scaling spécifié.

aws autoscaling delete-notification-configuration \ --auto-scaling-group-name my-asg \ --topic-arn arn:aws:sns:us-west-2:123456789012:my-sns-topic

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Supprimer une configuration de notification dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

L’exemple de code suivant montre comment utiliser delete-policy.

AWS CLI

Pour supprimer une stratégie de mise à l’échelle

Cet exemple supprime la stratégie de mise à l’échelle spécifiée.

aws autoscaling delete-policy \ --auto-scaling-group-name my-asg \ --policy-name alb1000-target-tracking-scaling-policy

Cette commande ne produit aucune sortie.

  • Pour plus de détails sur l’API, consultez DeletePolicy dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser delete-scheduled-action.

AWS CLI

Pour supprimer une action planifiée d’un groupe Auto Scaling

Cet exemple supprime l’action planifiée spécifiée du groupe Auto Scaling spécifié.

aws autoscaling delete-scheduled-action \ --auto-scaling-group-name my-asg \ --scheduled-action-name my-scheduled-action

Cette commande ne produit aucune sortie.

  • Pour plus de détails sur l’API, consultez DeleteScheduledAction dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser delete-tags.

AWS CLI

Pour supprimer une balise d’un groupe Auto Scaling

Cet exemple supprime la balise spécifiée du groupe Auto Scaling spécifié.

aws autoscaling delete-tags \ --tags ResourceId=my-asg,ResourceType=auto-scaling-group,Key=Dept,Value=Research

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Balisage de groupes et d’instances Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

  • Pour plus de détails sur l’API, consultez DeleteTags dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser delete-warm-pool.

AWS CLI

Exemple 1 : pour supprimer un groupe d’instances préinitialisées

L’exemple suivant supprime le groupe d’instances préinitialisées pour le groupe Auto Scaling spécifié.

aws autoscaling delete-warm-pool \ --auto-scaling-group-name my-asg

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Groupes d’instances préinitialisées pour les instances Amazon EC2 Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 2 : pour forcer la suppression d’un groupe d’instances préinitialisées

Pour supprimer le groupe d’instances préinitialisées sans attendre la résiliation de ses instances, utilisez l’option --force-delete.

aws autoscaling delete-warm-pool \ --auto-scaling-group-name my-asg \ --force-delete

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Groupes d’instances préinitialisées pour les instances Amazon EC2 Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

  • Pour plus de détails sur l’API, consultez DeleteWarmPool dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser describe-account-limits.

AWS CLI

Pour décrire les limites de votre compte Amazon EC2 Auto Scaling

Cet exemple décrit les limites Amazon EC2 Auto Scaling de votre compte AWS.

aws autoscaling describe-account-limits

Sortie :

{ "NumberOfLaunchConfigurations": 5, "MaxNumberOfLaunchConfigurations": 100, "NumberOfAutoScalingGroups": 3, "MaxNumberOfAutoScalingGroups": 20 }

Pour plus d’informations, consultez Quotas de service Amazon EC2 Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

  • Pour plus de détails sur l’API, consultez DescribeAccountLimits dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser describe-adjustment-types.

AWS CLI

Pour décrire les types d’ajustements disponibles pour la mise à l’échelle

Cet exemple décrit les types d’ajustements disponibles.

aws autoscaling describe-adjustment-types

Sortie :

{ "AdjustmentTypes": [ { "AdjustmentType": "ChangeInCapacity" }, { "AdjustmentType": "ExactCapacity" }, { "AdjustmentType": "PercentChangeInCapacity" } ] }

Pour plus d’informations, consultez Types d’ajustement de la mise à l’échelle dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

  • Pour plus de détails sur l’API, consultez DescribeAdjustmentTypes dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser describe-auto-scaling-groups.

AWS CLI

Exemple 1 : pour décrire le groupe Auto Scaling spécifié

Cet exemple décrit le groupe Auto Scaling spécifié.

aws autoscaling describe-auto-scaling-groups \ --auto-scaling-group-names my-asg

Sortie :

{ "AutoScalingGroups": [ { "AutoScalingGroupName": "my-asg", "AutoScalingGroupARN": "arn:aws:autoscaling:us-west-2:123456789012:autoScalingGroup:930d940e-891e-4781-a11a-7b0acd480f03:autoScalingGroupName/my-asg", "LaunchTemplate": { "LaunchTemplateName": "my-launch-template", "Version": "1", "LaunchTemplateId": "lt-1234567890abcde12" }, "MinSize": 0, "MaxSize": 1, "DesiredCapacity": 1, "DefaultCooldown": 300, "AvailabilityZones": [ "us-west-2a", "us-west-2b", "us-west-2c" ], "LoadBalancerNames": [], "TargetGroupARNs": [], "HealthCheckType": "EC2", "HealthCheckGracePeriod": 0, "Instances": [ { "InstanceId": "i-06905f55584de02da", "InstanceType": "t2.micro", "AvailabilityZone": "us-west-2a", "HealthStatus": "Healthy", "LifecycleState": "InService", "ProtectedFromScaleIn": false, "LaunchTemplate": { "LaunchTemplateName": "my-launch-template", "Version": "1", "LaunchTemplateId": "lt-1234567890abcde12" } } ], "CreatedTime": "2023-10-28T02:39:22.152Z", "SuspendedProcesses": [], "VPCZoneIdentifier": "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782", "EnabledMetrics": [], "Tags": [], "TerminationPolicies": [ "Default" ], "NewInstancesProtectedFromScaleIn": false, "ServiceLinkedRoleARN":"arn", "TrafficSources": [] } ] }

Exemple 2 : pour décrire les 100 premiers groupes Auto Scaling spécifiés

Cet exemple décrit les groupes Auto Scaling spécifiés. Il vous permet de spécifier jusqu’à 100 noms de groupe.

aws autoscaling describe-auto-scaling-groups \ --max-items 100 \ --auto-scaling-group-names "group1" "group2" "group3" "group4"

Voir l’exemple 1 pour un exemple de sortie.

Exemple 3 : pour décrire un groupe Auto Scaling dans la région spécifiée

Cet exemple décrit les groupes Auto Scaling dans la région spécifiée, jusqu’à 75 groupes maximum.

aws autoscaling describe-auto-scaling-groups \ --max-items 75 \ --region us-east-1

Voir l’exemple 1 pour un exemple de sortie.

Exemple 4 : pour décrire le nombre spécifié de groupes Auto Scaling

Pour renvoyer un nombre spécifique de groupes Auto Scaling, utilisez l’option --max-items.

aws autoscaling describe-auto-scaling-groups \ --max-items 1

Voir l’exemple 1 pour un exemple de sortie.

Si la sortie inclut un champ NextToken, il existe d’autres groupes. Pour obtenir les groupes supplémentaires, utilisez la valeur de ce champ avec l’option --starting-token lors d’un appel ultérieur comme suit.

aws autoscaling describe-auto-scaling-groups \ --starting-token Z3M3LMPEXAMPLE

Voir l’exemple 1 pour un exemple de sortie.

Exemple 5 : pour décrire les groupes Auto Scaling qui utilisent des configurations de lancement

Cet exemple utilise l’option --query pour décrire les groupes Auto Scaling qui utilisent des configurations de lancement.

aws autoscaling describe-auto-scaling-groups \ --query 'AutoScalingGroups[?LaunchConfigurationName!=`null`]'

Sortie :

[ { "AutoScalingGroupName": "my-asg", "AutoScalingGroupARN": "arn:aws:autoscaling:us-west-2:123456789012:autoScalingGroup:930d940e-891e-4781-a11a-7b0acd480f03:autoScalingGroupName/my-asg", "LaunchConfigurationName": "my-lc", "MinSize": 0, "MaxSize": 1, "DesiredCapacity": 1, "DefaultCooldown": 300, "AvailabilityZones": [ "us-west-2a", "us-west-2b", "us-west-2c" ], "LoadBalancerNames": [], "TargetGroupARNs": [], "HealthCheckType": "EC2", "HealthCheckGracePeriod": 0, "Instances": [ { "InstanceId": "i-088c57934a6449037", "InstanceType": "t2.micro", "AvailabilityZone": "us-west-2c", "HealthStatus": "Healthy", "LifecycleState": "InService", "LaunchConfigurationName": "my-lc", "ProtectedFromScaleIn": false } ], "CreatedTime": "2023-10-28T02:39:22.152Z", "SuspendedProcesses": [], "VPCZoneIdentifier": "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782", "EnabledMetrics": [], "Tags": [], "TerminationPolicies": [ "Default" ], "NewInstancesProtectedFromScaleIn": false, "ServiceLinkedRoleARN":"arn", "TrafficSources": [] } ]

Pour plus d’informations, consultez Filtrage de la sortie dans l’AWS CLI dans le Guide de l’utilisateur de l’interface de ligne de commande AWS.

L’exemple de code suivant montre comment utiliser describe-auto-scaling-instances.

AWS CLI

Exemple 1 : pour décrire une ou plusieurs instances

Cet exemple décrit l’instance spécifiée.

aws autoscaling describe-auto-scaling-instances \ --instance-ids i-06905f55584de02da

Sortie :

{ "AutoScalingInstances": [ { "InstanceId": "i-06905f55584de02da", "InstanceType": "t2.micro", "AutoScalingGroupName": "my-asg", "AvailabilityZone": "us-west-2b", "LifecycleState": "InService", "HealthStatus": "HEALTHY", "ProtectedFromScaleIn": false, "LaunchTemplate": { "LaunchTemplateId": "lt-1234567890abcde12", "LaunchTemplateName": "my-launch-template", "Version": "1" } } ] }

Exemple 2 : pour décrire une ou plusieurs instances

Cet exemple utilise l’option --max-items pour spécifier le nombre d’instances à renvoyer avec cet appel.

aws autoscaling describe-auto-scaling-instances \ --max-items 1

Si la sortie inclut un champ NextToken, il existe d’autres instances. Pour obtenir les instances supplémentaires, utilisez la valeur de ce champ avec l’option --starting-token lors d’un appel ultérieur comme suit.

aws autoscaling describe-auto-scaling-instances \ --starting-token Z3M3LMPEXAMPLE

Voir l’exemple 1 pour un exemple de sortie.

Exemple 3 : pour décrire les instances qui utilisent des configurations de lancement

Cet exemple utilise l’option --query pour décrire les instances qui utilisent des configurations de lancement.

aws autoscaling describe-auto-scaling-instances \ --query 'AutoScalingInstances[?LaunchConfigurationName!=`null`]'

Sortie :

[ { "InstanceId": "i-088c57934a6449037", "InstanceType": "t2.micro", "AutoScalingGroupName": "my-asg", "AvailabilityZone": "us-west-2c", "LifecycleState": "InService", "HealthStatus": "HEALTHY", "LaunchConfigurationName": "my-lc", "ProtectedFromScaleIn": false } ]

Pour plus d’informations, consultez Filtrage de la sortie dans l’AWS CLI dans le Guide de l’utilisateur de l’interface de ligne de commande AWS.

L’exemple de code suivant montre comment utiliser describe-auto-scaling-notification-types.

AWS CLI

Pour décrire les types de notifications disponibles

Cet exemple décrit les types de notifications disponibles.

aws autoscaling describe-auto-scaling-notification-types

Sortie :

{ "AutoScalingNotificationTypes": [ "autoscaling:EC2_INSTANCE_LAUNCH", "autoscaling:EC2_INSTANCE_LAUNCH_ERROR", "autoscaling:EC2_INSTANCE_TERMINATE", "autoscaling:EC2_INSTANCE_TERMINATE_ERROR", "autoscaling:TEST_NOTIFICATION" ] }

Pour plus d’informations, consultez Réception de notifications Amazon SNS lors de la mise à l’échelle d’un groupe Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

L’exemple de code suivant montre comment utiliser describe-instance-refreshes.

AWS CLI

Pour décrire des actualisations d’instance

L’exemple describe-instance-refreshes suivant renvoie une description de toutes les demandes d’actualisation d’instance pour le groupe Auto Scaling spécifié, y compris le message de statut et (si disponible) la raison du statut.

aws autoscaling describe-instance-refreshes \ --auto-scaling-group-name my-asg

Sortie :

{ "InstanceRefreshes": [ { "InstanceRefreshId": "08b91cf7-8fa6-48af-b6a6-d227f40f1b9b", "AutoScalingGroupName": "my-asg", "Status": "InProgress", "StatusReason": "Waiting for instances to warm up before continuing. For example: 0e69cc3f05f825f4f is warming up.", "EndTime": "2023-03-23T16:42:55Z", "PercentageComplete": 0, "InstancesToUpdate": 0, "Preferences": { "MinHealthyPercentage": 100, "InstanceWarmup": 300, "CheckpointPercentages": [ 50 ], "CheckpointDelay": 3600, "SkipMatching": false, "AutoRollback": true, "ScaleInProtectedInstances": "Ignore", "StandbyInstances": "Ignore" } }, { "InstanceRefreshId": "dd7728d0-5bc4-4575-96a3-1b2c52bf8bb1", "AutoScalingGroupName": "my-asg", "Status": "Successful", "EndTime": "2022-06-02T16:53:37Z", "PercentageComplete": 100, "InstancesToUpdate": 0, "Preferences": { "MinHealthyPercentage": 90, "InstanceWarmup": 300, "SkipMatching": true, "AutoRollback": true, "ScaleInProtectedInstances": "Ignore", "StandbyInstances": "Ignore" } } ] }

Pour plus d’informations, consultez Vérifier le statut d’une actualisation d’instance dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

L’exemple de code suivant montre comment utiliser describe-launch-configurations.

AWS CLI

Exemple 1 : pour décrire la configuration de lancement spécifiée

Cet exemple décrit la configuration de lancement spécifiée.

aws autoscaling describe-launch-configurations \ --launch-configuration-names my-launch-config

Sortie :

{ "LaunchConfigurations": [ { "LaunchConfigurationName": "my-launch-config", "LaunchConfigurationARN": "arn:aws:autoscaling:us-west-2:123456789012:launchConfiguration:98d3b196-4cf9-4e88-8ca1-8547c24ced8b:launchConfigurationName/my-launch-config", "ImageId": "ami-0528a5175983e7f28", "KeyName": "my-key-pair-uswest2", "SecurityGroups": [ "sg-05eaec502fcdadc2e" ], "ClassicLinkVPCSecurityGroups": [], "UserData": "", "InstanceType": "t2.micro", "KernelId": "", "RamdiskId": "", "BlockDeviceMappings": [ { "DeviceName": "/dev/xvda", "Ebs": { "SnapshotId": "snap-06c1606ba5ca274b1", "VolumeSize": 8, "VolumeType": "gp2", "DeleteOnTermination": true, "Encrypted": false } } ], "InstanceMonitoring": { "Enabled": true }, "CreatedTime": "2020-10-28T02:39:22.321Z", "EbsOptimized": false, "AssociatePublicIpAddress": true, "MetadataOptions": { "HttpTokens": "required", "HttpPutResponseHopLimit": 1, "HttpEndpoint": "disabled" } } ] }

Exemple 2 : pour décrire un nombre spécifié de configurations de lancement

Pour renvoyer un nombre spécifique de configurations de lancement, utilisez l’option --max-items.

aws autoscaling describe-launch-configurations \ --max-items 1

Si la sortie inclut un champ NextToken, il existe d’autres configurations de lancement. Pour obtenir les configurations de lancement supplémentaires, utilisez la valeur de ce champ avec l’option --starting-token lors d’un appel ultérieur comme suit.

aws autoscaling describe-launch-configurations \ --starting-token Z3M3LMPEXAMPLE

L’exemple de code suivant montre comment utiliser describe-lifecycle-hook-types.

AWS CLI

Pour décrire les types de hooks de cycle de vie disponibles

Cet exemple décrit les types de hooks de cycle de vie disponibles.

aws autoscaling describe-lifecycle-hook-types

Sortie :

{ "LifecycleHookTypes": [ "autoscaling:EC2_INSTANCE_LAUNCHING", "autoscaling:EC2_INSTANCE_TERMINATING" ] }

L’exemple de code suivant montre comment utiliser describe-lifecycle-hooks.

AWS CLI

Pour décrire vos hooks de cycle de vie

Cet exemple décrit les hooks de cycle de vie pour le groupe Auto Scaling spécifié.

aws autoscaling describe-lifecycle-hooks \ --auto-scaling-group-name my-asg

Sortie :

{ "LifecycleHooks": [ { "GlobalTimeout": 3000, "HeartbeatTimeout": 30, "AutoScalingGroupName": "my-asg", "LifecycleHookName": "my-launch-hook", "DefaultResult": "ABANDON", "LifecycleTransition": "autoscaling:EC2_INSTANCE_LAUNCHING" }, { "GlobalTimeout": 6000, "HeartbeatTimeout": 60, "AutoScalingGroupName": "my-asg", "LifecycleHookName": "my-termination-hook", "DefaultResult": "CONTINUE", "LifecycleTransition": "autoscaling:EC2_INSTANCE_TERMINATING" } ] }
  • Pour plus de détails sur l’API, consultez DescribeLifecycleHooks dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser describe-load-balancer-target-groups.

AWS CLI

Pour décrire les groupes cibles de l’équilibreur de charge pour un groupe Auto Scaling

Cet exemple décrit les groupes cibles de l’équilibreur de charge attachés au groupe Auto Scaling spécifié.

aws autoscaling describe-load-balancer-target-groups \ --auto-scaling-group-name my-asg

Sortie :

{ "LoadBalancerTargetGroups": [ { "LoadBalancerTargetGroupARN": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "State": "Added" } ] }

L’exemple de code suivant montre comment utiliser describe-load-balancers.

AWS CLI

Pour décrire les Classic Load Balancers pour un groupe Auto Scaling

Cet exemple décrit les Classic Load Balancers pour le groupe Auto Scaling spécifié.

aws autoscaling describe-load-balancers \ --auto-scaling-group-name my-asg

Sortie :

{ "LoadBalancers": [ { "State": "Added", "LoadBalancerName": "my-load-balancer" } ] }
  • Pour plus de détails sur l’API, consultez DescribeLoadBalancers dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser describe-metric-collection-types.

AWS CLI

Pour décrire les types de collectes de métriques disponibles

Cet exemple décrit les types de collectes de métriques disponibles.

aws autoscaling describe-metric-collection-types

Sortie :

{ "Metrics": [ { "Metric": "GroupMinSize" }, { "Metric": "GroupMaxSize" }, { "Metric": "GroupDesiredCapacity" }, { "Metric": "GroupInServiceInstances" }, { "Metric": "GroupInServiceCapacity" }, { "Metric": "GroupPendingInstances" }, { "Metric": "GroupPendingCapacity" }, { "Metric": "GroupTerminatingInstances" }, { "Metric": "GroupTerminatingCapacity" }, { "Metric": "GroupStandbyInstances" }, { "Metric": "GroupStandbyCapacity" }, { "Metric": "GroupTotalInstances" }, { "Metric": "GroupTotalCapacity" } ], "Granularities": [ { "Granularity": "1Minute" } ] }

Pour plus d’informations, consultez Métriques de groupe Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

L’exemple de code suivant montre comment utiliser describe-notification-configurations.

AWS CLI

Exemple 1 : pour décrire les configurations de notification d’un groupe spécifié

Cet exemple décrit les configurations de notification pour le groupe Auto Scaling spécifié.

aws autoscaling describe-notification-configurations \ --auto-scaling-group-name my-asg

Sortie :

{ "NotificationConfigurations": [ { "AutoScalingGroupName": "my-asg", "NotificationType": "autoscaling:TEST_NOTIFICATION", "TopicARN": "arn:aws:sns:us-west-2:123456789012:my-sns-topic-2" }, { "AutoScalingGroupName": "my-asg", "NotificationType": "autoscaling:TEST_NOTIFICATION", "TopicARN": "arn:aws:sns:us-west-2:123456789012:my-sns-topic" } ] }

Pour plus d’informations, consultez Réception de notifications Amazon SNS lors de la mise à l’échelle d’un groupe Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 1 : pour décrire un nombre spécifié de configurations de notification

Pour renvoyer un nombre spécifique de configurations de notification, utilisez le paramètre max-items.

aws autoscaling describe-notification-configurations \ --auto-scaling-group-name my-auto-scaling-group \ --max-items 1

Sortie :

{ "NotificationConfigurations": [ { "AutoScalingGroupName": "my-asg", "NotificationType": "autoscaling:TEST_NOTIFICATION", "TopicARN": "arn:aws:sns:us-west-2:123456789012:my-sns-topic-2" }, { "AutoScalingGroupName": "my-asg", "NotificationType": "autoscaling:TEST_NOTIFICATION", "TopicARN": "arn:aws:sns:us-west-2:123456789012:my-sns-topic" } ] }

Si la sortie inclut un champ NextToken, il existe d’autres configurations de notification. Pour obtenir les configurations de notification supplémentaires, utilisez la valeur de ce champ avec le paramètre starting-token lors d’un appel ultérieur comme suit.

aws autoscaling describe-notification-configurations \ --auto-scaling-group-name my-asg \ --starting-token Z3M3LMPEXAMPLE

Pour plus d’informations, consultez Réception de notifications Amazon SNS lors de la mise à l’échelle d’un groupe Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

L’exemple de code suivant montre comment utiliser describe-policies.

AWS CLI

Exemple 1 : pour décrire les stratégies de mise à l’échelle d’un groupe spécifié

Cet exemple décrit les stratégies de mise à l’échelle pour le groupe Auto Scaling spécifié.

aws autoscaling describe-policies \ --auto-scaling-group-name my-asg

Sortie :

{ "ScalingPolicies": [ { "AutoScalingGroupName": "my-asg", "PolicyName": "alb1000-target-tracking-scaling-policy", "PolicyARN": "arn:aws:autoscaling:us-west-2:123456789012:scalingPolicy:3065d9c8-9969-4bec-bb6a-3fbe5550fde6:autoScalingGroupName/my-asg:policyName/alb1000-target-tracking-scaling-policy", "PolicyType": "TargetTrackingScaling", "StepAdjustments": [], "Alarms": [ { "AlarmName": "TargetTracking-my-asg-AlarmHigh-924887a9-12d7-4e01-8686-6f844d13a196", "AlarmARN": "arn:aws:cloudwatch:us-west-2:123456789012:alarm:TargetTracking-my-asg-AlarmHigh-924887a9-12d7-4e01-8686-6f844d13a196" }, { "AlarmName": "TargetTracking-my-asg-AlarmLow-f96f899d-b8e7-4d09-a010-c1aaa35da296", "AlarmARN": "arn:aws:cloudwatch:us-west-2:123456789012:alarm:TargetTracking-my-asg-AlarmLow-f96f899d-b8e7-4d09-a010-c1aaa35da296" } ], "TargetTrackingConfiguration": { "PredefinedMetricSpecification": { "PredefinedMetricType": "ALBRequestCountPerTarget", "ResourceLabel": "app/my-alb/778d41231b141a0f/targetgroup/my-alb-target-group/943f017f100becff" }, "TargetValue": 1000.0, "DisableScaleIn": false }, "Enabled": true }, { "AutoScalingGroupName": "my-asg", "PolicyName": "cpu40-target-tracking-scaling-policy", "PolicyARN": "arn:aws:autoscaling:us-west-2:123456789012:scalingPolicy:5fd26f71-39d4-4690-82a9-b8515c45cdde:autoScalingGroupName/my-asg:policyName/cpu40-target-tracking-scaling-policy", "PolicyType": "TargetTrackingScaling", "StepAdjustments": [], "Alarms": [ { "AlarmName": "TargetTracking-my-asg-AlarmHigh-139f9789-37b9-42ad-bea5-b5b147d7f473", "AlarmARN": "arn:aws:cloudwatch:us-west-2:123456789012:alarm:TargetTracking-my-asg-AlarmHigh-139f9789-37b9-42ad-bea5-b5b147d7f473" }, { "AlarmName": "TargetTracking-my-asg-AlarmLow-bd681c67-fc18-4c56-8468-fb8e413009c9", "AlarmARN": "arn:aws:cloudwatch:us-west-2:123456789012:alarm:TargetTracking-my-asg-AlarmLow-bd681c67-fc18-4c56-8468-fb8e413009c9" } ], "TargetTrackingConfiguration": { "PredefinedMetricSpecification": { "PredefinedMetricType": "ASGAverageCPUUtilization" }, "TargetValue": 40.0, "DisableScaleIn": false }, "Enabled": true } ] }

Pour plus d’informations, consultez Mise à l’échelle dynamique dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 2 : pour décrire les stratégies de mise à l’échelle correspondant à un nom spécifié

Pour renvoyer des stratégies de mise à l’échelle spécifiques, utilisez l’option --policy-names.

aws autoscaling describe-policies \ --auto-scaling-group-name my-asg \ --policy-names cpu40-target-tracking-scaling-policy

Voir l’exemple 1 pour un exemple de sortie.

Pour plus d’informations, consultez Mise à l’échelle dynamique dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 3 : pour décrire un nombre spécifique de stratégies de mise à l’échelle

Pour renvoyer un nombre spécifique de stratégies, utilisez l’option --max-items.

aws autoscaling describe-policies \ --auto-scaling-group-name my-asg \ --max-items 1

Voir l’exemple 1 pour un exemple de sortie.

Si la sortie inclut un champ NextToken, utilisez la valeur de ce champ avec l’option --starting-token lors d’un appel ultérieur pour obtenir les stratégies supplémentaires.

aws autoscaling describe-policies --auto-scaling-group-name my-asg --starting-token Z3M3LMPEXAMPLE

Pour plus d’informations, consultez Mise à l’échelle dynamique dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

  • Pour plus de détails sur l’API, consultez DescribePolicies dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser describe-scaling-activities.

AWS CLI

Exemple 1 : pour décrire les activités de mise à l’échelle du groupe spécifié

Cet exemple décrit les activités de mise à l’échelle pour le groupe Auto Scaling spécifié.

aws autoscaling describe-scaling-activities \ --auto-scaling-group-name my-asg

Sortie :

{ "Activities": [ { "ActivityId": "f9f2d65b-f1f2-43e7-b46d-d86756459699", "Description": "Launching a new EC2 instance: i-0d44425630326060f", "AutoScalingGroupName": "my-asg", "Cause": "At 2020-10-30T19:35:51Z a user request update of AutoScalingGroup constraints to min: 0, max: 16, desired: 16 changing the desired capacity from 0 to 16. At 2020-10-30T19:36:07Z an instance was started in response to a difference between desired and actual capacity, increasing the capacity from 0 to 16.", "StartTime": "2020-10-30T19:36:09.766Z", "EndTime": "2020-10-30T19:36:41Z", "StatusCode": "Successful", "Progress": 100, "Details": "{\"Subnet ID\":\"subnet-5ea0c127\",\"Availability Zone\":\"us-west-2b\"}" } ] }

Pour plus d’informations, consultez Vérifier une activité de mise à l’échelle pour un groupe Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 2 : pour décrire les activités de mise à l’échelle d’un groupe supprimé

Pour décrire les activités de mise à l’échelle après la suppression du groupe Auto Scaling, ajoutez l’option --include-deleted-groups.

aws autoscaling describe-scaling-activities \ --auto-scaling-group-name my-asg \ --include-deleted-groups

Sortie :

{ "Activities": [ { "ActivityId": "e1f5de0e-f93e-1417-34ac-092a76fba220", "Description": "Launching a new EC2 instance. Status Reason: Your Spot request price of 0.001 is lower than the minimum required Spot request fulfillment price of 0.0031. Launching EC2 instance failed.", "AutoScalingGroupName": "my-asg", "Cause": "At 2021-01-13T20:47:24Z a user request update of AutoScalingGroup constraints to min: 1, max: 5, desired: 3 changing the desired capacity from 0 to 3. At 2021-01-13T20:47:27Z an instance was started in response to a difference between desired and actual capacity, increasing the capacity from 0 to 3.", "StartTime": "2021-01-13T20:47:30.094Z", "EndTime": "2021-01-13T20:47:30Z", "StatusCode": "Failed", "StatusMessage": "Your Spot request price of 0.001 is lower than the minimum required Spot request fulfillment price of 0.0031. Launching EC2 instance failed.", "Progress": 100, "Details": "{\"Subnet ID\":\"subnet-5ea0c127\",\"Availability Zone\":\"us-west-2b\"}", "AutoScalingGroupState": "Deleted", "AutoScalingGroupARN": "arn:aws:autoscaling:us-west-2:123456789012:autoScalingGroup:283179a2-f3ce-423d-93f6-66bb518232f7:autoScalingGroupName/my-asg" } ] }

Pour plus d’informations, consultez Résoudre les problèmes d’Amazon EC2 Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 3 : pour décrire un nombre spécifié d’activités de mise à l’échelle

Pour renvoyer un nombre spécifique d’activités, utilisez l’option --max-items.

aws autoscaling describe-scaling-activities \ --max-items 1

Sortie :

{ "Activities": [ { "ActivityId": "f9f2d65b-f1f2-43e7-b46d-d86756459699", "Description": "Launching a new EC2 instance: i-0d44425630326060f", "AutoScalingGroupName": "my-asg", "Cause": "At 2020-10-30T19:35:51Z a user request update of AutoScalingGroup constraints to min: 0, max: 16, desired: 16 changing the desired capacity from 0 to 16. At 2020-10-30T19:36:07Z an instance was started in response to a difference between desired and actual capacity, increasing the capacity from 0 to 16.", "StartTime": "2020-10-30T19:36:09.766Z", "EndTime": "2020-10-30T19:36:41Z", "StatusCode": "Successful", "Progress": 100, "Details": "{\"Subnet ID\":\"subnet-5ea0c127\",\"Availability Zone\":\"us-west-2b\"}" } ] }

Si la sortie inclut un champ NextToken, il existe d’autres activités. Pour obtenir les activités supplémentaires, utilisez la valeur de ce champ avec l’option --starting-token lors d’un appel ultérieur comme suit.

aws autoscaling describe-scaling-activities \ --starting-token Z3M3LMPEXAMPLE

Pour plus d’informations, consultez Vérifier une activité de mise à l’échelle pour un groupe Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

L’exemple de code suivant montre comment utiliser describe-scaling-process-types.

AWS CLI

Pour décrire les types de processus disponibles

Cet exemple décrit les types de processus disponibles.

aws autoscaling describe-scaling-process-types

Sortie :

{ "Processes": [ { "ProcessName": "AZRebalance" }, { "ProcessName": "AddToLoadBalancer" }, { "ProcessName": "AlarmNotification" }, { "ProcessName": "HealthCheck" }, { "ProcessName": "InstanceRefresh" }, { "ProcessName": "Launch" }, { "ProcessName": "ReplaceUnhealthy" }, { "ProcessName": "ScheduledActions" }, { "ProcessName": "Terminate" } ] }

Pour plus d’informations, consultez Suspension et reprise des processus de mise à l’échelle dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

L’exemple de code suivant montre comment utiliser describe-scheduled-actions.

AWS CLI

Exemple 1 : pour décrire toutes les actions planifiées

Cet exemple décrit toutes vos actions planifiées.

aws autoscaling describe-scheduled-actions

Sortie :

{ "ScheduledUpdateGroupActions": [ { "AutoScalingGroupName": "my-asg", "ScheduledActionName": "my-recurring-action", "Recurrence": "30 0 1 1,6,12 *", "ScheduledActionARN": "arn:aws:autoscaling:us-west-2:123456789012:scheduledUpdateGroupAction:8e86b655-b2e6-4410-8f29-b4f094d6871c:autoScalingGroupName/my-asg:scheduledActionName/my-recurring-action", "StartTime": "2023-12-01T04:00:00Z", "Time": "2023-12-01T04:00:00Z", "MinSize": 1, "MaxSize": 6, "DesiredCapacity": 4, "TimeZone": "America/New_York" } ] }

Pour plus d’informations, consultez Mise à l’échelle planifiée dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 2 : pour décrire les actions planifiées pour le groupe spécifié

Pour décrire les actions planifiées pour un groupe Auto Scaling spécifique, utilisez l’option --auto-scaling-group-name.

aws autoscaling describe-scheduled-actions \ --auto-scaling-group-name my-asg

Sortie :

{ "ScheduledUpdateGroupActions": [ { "AutoScalingGroupName": "my-asg", "ScheduledActionName": "my-recurring-action", "Recurrence": "30 0 1 1,6,12 *", "ScheduledActionARN": "arn:aws:autoscaling:us-west-2:123456789012:scheduledUpdateGroupAction:8e86b655-b2e6-4410-8f29-b4f094d6871c:autoScalingGroupName/my-asg:scheduledActionName/my-recurring-action", "StartTime": "2023-12-01T04:00:00Z", "Time": "2023-12-01T04:00:00Z", "MinSize": 1, "MaxSize": 6, "DesiredCapacity": 4, "TimeZone": "America/New_York" } ] }

Pour plus d’informations, consultez Mise à l’échelle planifiée dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 3 : pour décrire l’action planifiée spécifiée

Pour décrire une action planifiée spécifique, utilisez l’option --scheduled-action-names.

aws autoscaling describe-scheduled-actions \ --scheduled-action-names my-recurring-action

Sortie :

{ "ScheduledUpdateGroupActions": [ { "AutoScalingGroupName": "my-asg", "ScheduledActionName": "my-recurring-action", "Recurrence": "30 0 1 1,6,12 *", "ScheduledActionARN": "arn:aws:autoscaling:us-west-2:123456789012:scheduledUpdateGroupAction:8e86b655-b2e6-4410-8f29-b4f094d6871c:autoScalingGroupName/my-asg:scheduledActionName/my-recurring-action", "StartTime": "2023-12-01T04:00:00Z", "Time": "2023-12-01T04:00:00Z", "MinSize": 1, "MaxSize": 6, "DesiredCapacity": 4, "TimeZone": "America/New_York" } ] }

Pour plus d’informations, consultez Mise à l’échelle planifiée dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 4 : pour décrire des actions planifiées avec une heure de début spécifiée

Pour décrire les actions planifiées qui démarrent à une heure précise, utilisez l’option --start-time.

aws autoscaling describe-scheduled-actions \ --start-time "2023-12-01T04:00:00Z"

Sortie :

{ "ScheduledUpdateGroupActions": [ { "AutoScalingGroupName": "my-asg", "ScheduledActionName": "my-recurring-action", "Recurrence": "30 0 1 1,6,12 *", "ScheduledActionARN": "arn:aws:autoscaling:us-west-2:123456789012:scheduledUpdateGroupAction:8e86b655-b2e6-4410-8f29-b4f094d6871c:autoScalingGroupName/my-asg:scheduledActionName/my-recurring-action", "StartTime": "2023-12-01T04:00:00Z", "Time": "2023-12-01T04:00:00Z", "MinSize": 1, "MaxSize": 6, "DesiredCapacity": 4, "TimeZone": "America/New_York" } ] }

Pour plus d’informations, consultez Mise à l’échelle planifiée dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 5 : pour décrire des actions planifiées qui se terminent à une heure spécifiée

Pour décrire les actions planifiées qui se terminent à une heure précise, utilisez l’option --end-time.

aws autoscaling describe-scheduled-actions \ --end-time "2023-12-01T04:00:00Z"

Sortie :

{ "ScheduledUpdateGroupActions": [ { "AutoScalingGroupName": "my-asg", "ScheduledActionName": "my-recurring-action", "Recurrence": "30 0 1 1,6,12 *", "ScheduledActionARN": "arn:aws:autoscaling:us-west-2:123456789012:scheduledUpdateGroupAction:8e86b655-b2e6-4410-8f29-b4f094d6871c:autoScalingGroupName/my-asg:scheduledActionName/my-recurring-action", "StartTime": "2023-12-01T04:00:00Z", "Time": "2023-12-01T04:00:00Z", "MinSize": 1, "MaxSize": 6, "DesiredCapacity": 4, "TimeZone": "America/New_York" } ] }

Pour plus d’informations, consultez Mise à l’échelle planifiée dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 6 : pour décrire un nombre spécifié d’actions planifiées

Pour renvoyer un nombre spécifique d’actions planifiées, utilisez l’option --max-items.

aws autoscaling describe-scheduled-actions \ --auto-scaling-group-name my-asg \ --max-items 1

Sortie :

{ "ScheduledUpdateGroupActions": [ { "AutoScalingGroupName": "my-asg", "ScheduledActionName": "my-recurring-action", "Recurrence": "30 0 1 1,6,12 *", "ScheduledActionARN": "arn:aws:autoscaling:us-west-2:123456789012:scheduledUpdateGroupAction:8e86b655-b2e6-4410-8f29-b4f094d6871c:autoScalingGroupName/my-asg:scheduledActionName/my-recurring-action", "StartTime": "2023-12-01T04:00:00Z", "Time": "2023-12-01T04:00:00Z", "MinSize": 1, "MaxSize": 6, "DesiredCapacity": 4, "TimeZone": "America/New_York" } ] }

Si la sortie inclut un champ NextToken, il existe d’autres actions planifiées. Pour obtenir les actions planifiées supplémentaires, utilisez la valeur de ce champ avec l’option --starting-token lors d’un appel ultérieur, comme suit.

aws autoscaling describe-scheduled-actions \ --auto-scaling-group-name my-asg \ --starting-token Z3M3LMPEXAMPLE

Pour plus d’informations, consultez Mise à l’échelle planifiée dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

  • Pour plus de détails sur l’API, consultez DescribeScheduledActions dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser describe-tags.

AWS CLI

Pour décrire toutes les balises

Cet exemple décrit toutes vos balises.

aws autoscaling describe-tags

Sortie :

{ "Tags": [ { "ResourceType": "auto-scaling-group", "ResourceId": "my-asg", "PropagateAtLaunch": true, "Value": "Research", "Key": "Dept" }, { "ResourceType": "auto-scaling-group", "ResourceId": "my-asg", "PropagateAtLaunch": true, "Value": "WebServer", "Key": "Role" } ] }

Pour plus d’informations, consultez Balisage de groupes et d’instances Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 2 : pour décrire les balises d’un groupe spécifique

Pour décrire les balises pour un groupe Auto Scaling spécifique, utilisez l’option --filters.

aws autoscaling describe-tags --filters Name=auto-scaling-group,Values=my-asg

Pour plus d’informations, consultez Balisage de groupes et d’instances Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 3 : pour décrire le nombre de balises spécifié

Pour renvoyer un nombre spécifique de balises, utilisez l’option --max-items.

aws autoscaling describe-tags \ --max-items 1

Si la sortie inclut un champ NextToken, il existe d’autres balises. Pour obtenir les balises supplémentaires, utilisez la valeur de ce champ avec l’option --starting-token lors d’un appel ultérieur, comme suit.

aws autoscaling describe-tags \ --filters Name=auto-scaling-group,Values=my-asg \ --starting-token Z3M3LMPEXAMPLE

Pour plus d’informations, consultez Balisage de groupes et d’instances Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

  • Pour plus de détails sur l’API, consultez DescribeTags dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser describe-termination-policy-types.

AWS CLI

Pour décrire les types de politiques de résiliation disponibles

Cet exemple décrit les types de politiques de résiliation disponibles.

aws autoscaling describe-termination-policy-types

Sortie :

{ "TerminationPolicyTypes": [ "AllocationStrategy", "ClosestToNextInstanceHour", "Default", "NewestInstance", "OldestInstance", "OldestLaunchConfiguration", "OldestLaunchTemplate" ] }

Pour plus d’informations, consultez Contrôle des instances Auto Scaling à résilier pendant une mise à l’échelle horizontale dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

L’exemple de code suivant montre comment utiliser describe-warm-pool.

AWS CLI

Pour décrire un groupe d’instances préinitialisées

Cet exemple décrit le un groupe d’instances préinitialisées pour le groupe Auto Scaling spécifié.

aws autoscaling describe-warm-pool \ --auto-scaling-group-name my-asg

Sortie :

{ "WarmPoolConfiguration": { "MinSize": 2, "PoolState": "Stopped" }, "Instances": [ { "InstanceId": "i-070a5bbc7e7f40dc5", "InstanceType": "t2.micro", "AvailabilityZone": "us-west-2c", "LifecycleState": "Warmed:Pending", "HealthStatus": "Healthy", "LaunchTemplate": { "LaunchTemplateId": "lt-00a731f6e9fa48610", "LaunchTemplateName": "my-template-for-auto-scaling", "Version": "6" } }, { "InstanceId": "i-0b52f061814d3bd2d", "InstanceType": "t2.micro", "AvailabilityZone": "us-west-2b", "LifecycleState": "Warmed:Pending", "HealthStatus": "Healthy", "LaunchTemplate": { "LaunchTemplateId": "lt-00a731f6e9fa48610", "LaunchTemplateName": "my-template-for-auto-scaling", "Version": "6" } } ] }

Pour plus d’informations, consultez Groupes d’instances préinitialisées pour les instances Amazon EC2 Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

  • Pour plus de détails sur l’API, consultez DescribeWarmPool dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser detach-instances.

AWS CLI

Pour détacher une instance d’un groupe Auto Scaling

Cet exemple détache l’instance spécifiée du groupe Auto Scaling spécifié.

aws autoscaling detach-instances \ --instance-ids i-030017cfa84b20135 \ --auto-scaling-group-name my-asg \ --should-decrement-desired-capacity

Sortie :

{ "Activities": [ { "ActivityId": "5091cb52-547a-47ce-a236-c9ccbc2cb2c9", "AutoScalingGroupName": "my-asg", "Description": "Detaching EC2 instance: i-030017cfa84b20135", "Cause": "At 2020-10-31T17:35:04Z instance i-030017cfa84b20135 was detached in response to a user request, shrinking the capacity from 2 to 1.", "StartTime": "2020-04-12T15:02:16.179Z", "StatusCode": "InProgress", "Progress": 50, "Details": "{\"Subnet ID\":\"subnet-6194ea3b\",\"Availability Zone\":\"us-west-2c\"}" } ] }
  • Pour plus de détails sur l’API, consultez DetachInstances dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser detach-load-balancer-target-groups.

AWS CLI

Pour détacher un groupe cible de l’équilibreur de charge d’un groupe Auto Scaling

Cet exemple détache le groupe cible de l’équilibreur de charge spécifié du groupe Auto Scaling spécifié.

aws autoscaling detach-load-balancer-target-groups \ --auto-scaling-group-name my-asg \ --target-group-arns arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Attachement d’un équilibreur de charge à votre groupe Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

L’exemple de code suivant montre comment utiliser detach-load-balancers.

AWS CLI

Pour détacher un Classic Load Balancer d’un groupe Auto Scaling

Cet exemple détache le Classic Load Balancer spécifié du groupe Auto Scaling spécifié.

aws autoscaling detach-load-balancers \ --load-balancer-names my-load-balancer \ --auto-scaling-group-name my-asg

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Attachement d’un équilibreur de charge à votre groupe Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

  • Pour plus de détails sur l’API, consultez DetachLoadBalancers dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser disable-metrics-collection.

AWS CLI

Pour désactiver les collectes de métriques pour un groupe Auto Scaling

Cet exemple désactive la collecte de la métrique GroupDesiredCapacity pour le groupe Auto Scaling spécifié.

aws autoscaling disable-metrics-collection \ --auto-scaling-group-name my-asg \ --metrics GroupDesiredCapacity

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Surveillance des métriques CloudWatch pour vos instances et groupes Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

  • Pour plus de détails sur l’API, consultez DisableMetricsCollection dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser enable-metrics-collection.

AWS CLI

Exemple 1 : pour activer la collecte de métriques pour un groupe Auto Scaling

Cet exemple active la collecte de données pour le groupe Auto Scaling spécifié.

aws autoscaling enable-metrics-collection \ --auto-scaling-group-name my-asg \ --granularity "1Minute"

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Surveillance des métriques CloudWatch pour vos instances et groupes Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 2 : pour collecter des données pour la métrique spécifiée pour un groupe Auto Scaling

Pour collecter des données pour une métrique spécifique, utilisez l’option --metrics.

aws autoscaling enable-metrics-collection \ --auto-scaling-group-name my-asg \ --metrics GroupDesiredCapacity --granularity "1Minute"

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Surveillance des métriques CloudWatch pour vos instances et groupes Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

  • Pour plus de détails sur l’API, consultez EnableMetricsCollection dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser enter-standby.

AWS CLI

Pour déplacer des instances en mode veille

Cet exemple met l’instance spécifiée en mode veille. Cela est utile pour mettre à jour ou dépanner une instance actuellement en service.

aws autoscaling enter-standby \ --instance-ids i-061c63c5eb45f0416 \ --auto-scaling-group-name my-asg \ --should-decrement-desired-capacity

Sortie :

{ "Activities": [ { "ActivityId": "ffa056b4-6ed3-41ba-ae7c-249dfae6eba1", "AutoScalingGroupName": "my-asg", "Description": "Moving EC2 instance to Standby: i-061c63c5eb45f0416", "Cause": "At 2020-10-31T20:31:00Z instance i-061c63c5eb45f0416 was moved to standby in response to a user request, shrinking the capacity from 1 to 0.", "StartTime": "2020-10-31T20:31:00.949Z", "StatusCode": "InProgress", "Progress": 50, "Details": "{\"Subnet ID\":\"subnet-6194ea3b\",\"Availability Zone\":\"us-west-2c\"}" } ] }

Pour plus d’informations, consultez Cycle de vie d’une instance Amazon EC2 Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

  • Pour plus de détails sur l’API, consultez EnterStandby dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser execute-policy.

AWS CLI

Pour exécuter une stratégie de mise à l’échelle

Cet exemple exécute la stratégie de mise à l’échelle my-step-scale-out-policy pour le groupe Auto Scaling spécifié.

aws autoscaling execute-policy \ --auto-scaling-group-name my-asg \ --policy-name my-step-scale-out-policy \ --metric-value 95 \ --breach-threshold 80

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Politiques de mise à l’échelle simple et par étapes dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

  • Pour plus de détails sur l’API, consultez ExecutePolicy dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser exit-standby.

AWS CLI

Pour sortir les instances du mode veille

Cet exemple sort l’instance spécifiée du mode veille.

aws autoscaling exit-standby \ --instance-ids i-061c63c5eb45f0416 \ --auto-scaling-group-name my-asg

Sortie :

{ "Activities": [ { "ActivityId": "142928e1-a2dc-453a-9b24-b85ad6735928", "AutoScalingGroupName": "my-asg", "Description": "Moving EC2 instance out of Standby: i-061c63c5eb45f0416", "Cause": "At 2020-10-31T20:32:50Z instance i-061c63c5eb45f0416 was moved out of standby in response to a user request, increasing the capacity from 0 to 1.", "StartTime": "2020-10-31T20:32:50.222Z", "StatusCode": "PreInService", "Progress": 30, "Details": "{\"Subnet ID\":\"subnet-6194ea3b\",\"Availability Zone\":\"us-west-2c\"}" } ] }

Pour plus d’informations, consultez Suppression temporaire des instances du groupe Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

  • Pour plus de détails sur l’API, consultez ExitStandby dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser put-lifecycle-hook.

AWS CLI

Exemple 1 : pour créer un hook de cycle de vie

Cet exemple crée un hook de cycle de vie qui sera invoqué sur toutes les instances nouvellement lancées, avec un délai d’expiration de 4 800 secondes. Cela est utile pour maintenir les instances en état d’attente jusqu’à ce que les scripts de données utilisateur soient terminés, ou pour invoquer une fonction AWS Lambda à l’aide d’EventBridge.

aws autoscaling put-lifecycle-hook \ --auto-scaling-group-name my-asg \ --lifecycle-hook-name my-launch-hook \ --lifecycle-transition autoscaling:EC2_INSTANCE_LAUNCHING \ --heartbeat-timeout 4800

Cette commande ne produit aucune sortie. Si un hook de cycle de vie portant le même nom existe déjà, il sera remplacé par le nouveau hook de cycle de vie.

Pour plus d’informations, consultez Hooks de cycle de vie Amazon EC2 Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 2 : pour envoyer un e-mail Amazon SNS afin de vous notifier des transitions d’état de l’instance

Cet exemple crée un hook de cycle de vie avec la rubrique Amazon SNS et le rôle IAM à utiliser pour recevoir des notifications au lancement de l’instance.

aws autoscaling put-lifecycle-hook \ --auto-scaling-group-name my-asg \ --lifecycle-hook-name my-launch-hook \ --lifecycle-transition autoscaling:EC2_INSTANCE_LAUNCHING \ --notification-target-arn arn:aws:sns:us-west-2:123456789012:my-sns-topic \ --role-arn arn:aws:iam::123456789012:role/my-auto-scaling-role

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Hooks de cycle de vie Amazon EC2 Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 3 : pour publier un message dans une file d’attente Amazon SQS

Cet exemple crée un hook de cycle de vie qui publie un message contenant des métadonnées dans la file d’attente Amazon SQS spécifiée.

aws autoscaling put-lifecycle-hook \ --auto-scaling-group-name my-asg \ --lifecycle-hook-name my-launch-hook \ --lifecycle-transition autoscaling:EC2_INSTANCE_LAUNCHING \ --notification-target-arn arn:aws:sqs:us-west-2:123456789012:my-sqs-queue \ --role-arn arn:aws:iam::123456789012:role/my-notification-role \ --notification-metadata "SQS message metadata"

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Hooks de cycle de vie Amazon EC2 Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

  • Pour plus de détails sur l’API, consultez PutLifecycleHook dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser put-notification-configuration.

AWS CLI

Pour ajouter une notification

Cet exemple ajoute la notification spécifiée au groupe Auto Scaling spécifié.

aws autoscaling put-notification-configuration \ --auto-scaling-group-name my-asg \ --topic-arn arn:aws:sns:us-west-2:123456789012:my-sns-topic \ --notification-type autoscaling:TEST_NOTIFICATION

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Réception de notifications Amazon SNS lors de la mise à l’échelle d’un groupe Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

L’exemple de code suivant montre comment utiliser put-scaling-policy.

AWS CLI

Pour créer une stratégie de mise à l’échelle du suivi des cibles pour un groupe Auto Scaling

L’exemple put-scaling-policy suivant applique une stratégie de mise à l’échelle du suivi des cibles au groupe Auto Scaling spécifié. La sortie contient l’ARN et le nom des deux alarmes CloudWatch créées en votre nom. Si une stratégie de mise à l’échelle portant le même nom existe déjà, elle sera remplacée par la nouvelle stratégie de mise à l’échelle.

aws autoscaling put-scaling-policy --auto-scaling-group-name my-asg \ --policy-name alb1000-target-tracking-scaling-policy \ --policy-type TargetTrackingScaling \ --target-tracking-configuration file://config.json

Contenu de config.json :

{ "TargetValue": 1000.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "ALBRequestCountPerTarget", "ResourceLabel": "app/my-alb/778d41231b141a0f/targetgroup/my-alb-target-group/943f017f100becff" } }

Sortie :

{ "PolicyARN": "arn:aws:autoscaling:region:account-id:scalingPolicy:228f02c2-c665-4bfd-aaac-8b04080bea3c:autoScalingGroupName/my-asg:policyName/alb1000-target-tracking-scaling-policy", "Alarms": [ { "AlarmARN": "arn:aws:cloudwatch:region:account-id:alarm:TargetTracking-my-asg-AlarmHigh-fc0e4183-23ac-497e-9992-691c9980c38e", "AlarmName": "TargetTracking-my-asg-AlarmHigh-fc0e4183-23ac-497e-9992-691c9980c38e" }, { "AlarmARN": "arn:aws:cloudwatch:region:account-id:alarm:TargetTracking-my-asg-AlarmLow-61a39305-ed0c-47af-bd9e-471a352ee1a2", "AlarmName": "TargetTracking-my-asg-AlarmLow-61a39305-ed0c-47af-bd9e-471a352ee1a2" } ] }

Pour plus d’exemples, consultez Exemple de politiques de mise à l’échelle pour l’interface de ligne de commande AWS (AWS CLI) dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

  • Pour plus de détails sur l’API, consultez PutScalingPolicy dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser put-scheduled-update-group-action.

AWS CLI

Exemple 1 : pour ajouter une action planifiée à un groupe Auto Scaling

Cet exemple ajoute l’action planifiée spécifiée au groupe Auto Scaling spécifié.

aws autoscaling put-scheduled-update-group-action \ --auto-scaling-group-name my-asg \ --scheduled-action-name my-scheduled-action \ --start-time "2023-05-12T08:00:00Z" \ --min-size 2 \ --max-size 6 \ --desired-capacity 4

Cette commande ne produit aucune sortie. Si une action planifiée portant le même nom existe déjà, elle sera remplacée par la nouvelle action planifiée.

Pour plus d’exemples, consultez Mise à l’échelle planifiée dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 2 : pour spécifier un calendrier récurrent

Cet exemple crée une action planifiée à mettre à l’échelle selon un calendrier récurrent dont l’exécution est prévue à 00 h 30 les 1er janvier, juin et décembre de chaque année.

aws autoscaling put-scheduled-update-group-action \ --auto-scaling-group-name my-asg \ --scheduled-action-name my-recurring-action \ --recurrence "30 0 1 1,6,12 *" \ --min-size 2 \ --max-size 6 \ --desired-capacity 4

Cette commande ne produit aucune sortie. Si une action planifiée portant le même nom existe déjà, elle sera remplacée par la nouvelle action planifiée.

Pour plus d’exemples, consultez Mise à l’échelle planifiée dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

L’exemple de code suivant montre comment utiliser put-warm-pool.

AWS CLI

Pour créer un groupe d’instances préinitialisées

L’exemple suivant crée un groupe d’instances préinitialisées pour le groupe Auto Scaling spécifié.

aws autoscaling put-warm-pool \ --auto-scaling-group-name my-asg \ --min-size 2

Cette commande ne produit aucune sortie. Si un groupe d’instances préinitialisées existe déjà, il sera mis à jour.

Pour plus d’informations, consultez Groupes d’instances préinitialisées pour les instances Amazon EC2 Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

  • Pour plus de détails sur l’API, consultez PutWarmPool dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser record-lifecycle-action-heartbeat.

AWS CLI

Pour enregistrer les pulsations d’une action du cycle de vie

Cet exemple enregistre les pulsations d’une action du cycle de vie afin de maintenir l’instance dans un état d’attente.

aws autoscaling record-lifecycle-action-heartbeat \ --lifecycle-hook-name my-launch-hook \ --auto-scaling-group-name my-asg \ --lifecycle-action-token bcd2f1b8-9a78-44d3-8a7a-4dd07d7cf635

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Hooks de cycle de vie Amazon EC2 Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

L’exemple de code suivant montre comment utiliser resume-processes.

AWS CLI

Pour reprendre des processus suspendus

Cet exemple reprend le processus de mise à l’échelle suspendu spécifié pour le groupe Auto Scaling spécifié.

aws autoscaling resume-processes \ --auto-scaling-group-name my-asg \ --scaling-processes AlarmNotification

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Suspension et reprise des processus de mise à l’échelle dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

  • Pour plus de détails sur l’API, consultez ResumeProcesses dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser rollback-instance-refresh.

AWS CLI

Pour annuler une actualisation d’instance

L’exemple rollback-instance-refresh suivant annule une actualisation d’instance en cours pour le groupe Auto Scaling spécifié.

aws autoscaling rollback-instance-refresh \ --auto-scaling-group-name my-asg

Sortie :

{ "InstanceRefreshId": "08b91cf7-8fa6-48af-b6a6-d227f40f1b9b" }

Pour plus d’informations, veuillez Annuler les modifications avec une restauration dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

  • Pour plus de détails sur l’API, consultez RollbackInstanceRefresh dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser set-desired-capacity.

AWS CLI

Pour définir la capacité souhaitée pour un groupe Auto Scaling

Cet exemple définit la capacité souhaitée pour le groupe Auto Scaling spécifié.

aws autoscaling set-desired-capacity \ --auto-scaling-group-name my-asg \ --desired-capacity 2 \ --honor-cooldown

Cette commande revient à l’invite en cas de succès.

  • Pour plus de détails sur l’API, consultez SetDesiredCapacity dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser set-instance-health.

AWS CLI

Pour définir le statut d’intégrité d’une instance

Cet exemple définit le statut d’intégrité de l’instance spécifiée sur Unhealthy.

aws autoscaling set-instance-health \ --instance-id i-061c63c5eb45f0416 \ --health-status Unhealthy

Cette commande ne produit aucune sortie.

  • Pour plus de détails sur l’API, consultez SetInstanceHealth dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser set-instance-protection.

AWS CLI

Exemple 1 : pour activer le paramètre de protection d’une instance

Cet exemple active la protection d’instance pour l’instance spécifiée.

aws autoscaling set-instance-protection \ --instance-ids i-061c63c5eb45f0416 \ --auto-scaling-group-name my-asg --protected-from-scale-in

Cette commande ne produit aucune sortie.

Exemple 2 : pour désactiver le paramètre de protection d’instance pour une instance

Cet exemple désactive la protection d’instance pour l’instance spécifiée.

aws autoscaling set-instance-protection \ --instance-ids i-061c63c5eb45f0416 \ --auto-scaling-group-name my-asg \ --no-protected-from-scale-in

Cette commande ne produit aucune sortie.

  • Pour plus de détails sur l’API, consultez SetInstanceProtection dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser start-instance-refresh.

AWS CLI

Exemple 1 : pour démarrer l’actualisation d’une instance à l’aide des paramètres de ligne de commande

L’exemple start-instance-refresh suivant lance une actualisation d’instance à l’aide d’arguments de ligne de commande. Le paramètre preferences facultatif spécifie un InstanceWarmup de 60 secondes et un MinHealthyPercentage de 50 %.

aws autoscaling start-instance-refresh \ --auto-scaling-group-name my-asg \ --preferences '{"InstanceWarmup": 60, "MinHealthyPercentage": 50}'

Sortie :

{ "InstanceRefreshId": "08b91cf7-8fa6-48af-b6a6-d227f40f1b9b" }

Pour plus d’informations, consultez Lancer une actualisation d’instance dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 2 : pour démarrer l’actualisation d’une instance à l’aide d’un fichier JSON

L’exemple start-instance-refresh suivant lance une actualisation d’instance à l’aide d’un fichier JSON. Vous pouvez spécifier le groupe Auto Scaling et définir la configuration et les préférences de votre choix dans un fichier JSON, comme illustré dans l’exemple suivant.

aws autoscaling start-instance-refresh \ --cli-input-json file://config.json

Contenu de config.json :

{ "AutoScalingGroupName": "my-asg", "DesiredConfiguration": { "LaunchTemplate": { "LaunchTemplateId": "lt-068f72b729example", "Version": "$Default" } }, "Preferences": { "InstanceWarmup": 60, "MinHealthyPercentage": 50, "AutoRollback": true, "ScaleInProtectedInstances": Ignore, "StandbyInstances": Terminate } }

Sortie :

{ "InstanceRefreshId": "08b91cf7-8fa6-48af-b6a6-d227f40f1b9b" }

Pour plus d’informations, consultez Lancer une actualisation d’instance dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

  • Pour plus de détails sur l’API, consultez StartInstanceRefresh dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser suspend-processes.

AWS CLI

Pour suspendre les processus Auto Scaling

Cet exemple suspend le processus de mise à l’échelle spécifié pour le groupe Auto Scaling spécifié.

aws autoscaling suspend-processes \ --auto-scaling-group-name my-asg \ --scaling-processes AlarmNotification

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Suspension et reprise des processus de mise à l’échelle dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

  • Pour plus de détails sur l’API, consultez SuspendProcesses dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser terminate-instance-in-auto-scaling-group.

AWS CLI

Pour résilier une instance de votre groupe Auto Scaling

Cet exemple résilie l’instance spécifiée du groupe Auto Scaling spécifié sans mettre à jour la taille du groupe. Amazon EC2 Auto Scaling lance une instance de remplacement après que l’instance spécifiée soit résiliée.

aws autoscaling terminate-instance-in-auto-scaling-group \ --instance-id i-061c63c5eb45f0416 \ --no-should-decrement-desired-capacity

Sortie :

{ "Activities": [ { "ActivityId": "8c35d601-793c-400c-fcd0-f64a27530df7", "AutoScalingGroupName": "my-asg", "Description": "Terminating EC2 instance: i-061c63c5eb45f0416", "Cause": "", "StartTime": "2020-10-31T20:34:25.680Z", "StatusCode": "InProgress", "Progress": 0, "Details": "{\"Subnet ID\":\"subnet-6194ea3b\",\"Availability Zone\":\"us-west-2c\"}" } ] }

L’exemple de code suivant montre comment utiliser update-auto-scaling-group.

AWS CLI

Exemple 1 : pour mettre à jour les limites de taille d’un groupe Auto Scaling

Cet exemple met à jour le groupe Auto Scaling spécifié avec une taille minimale égale à 2 et une taille maximale égale à 10.

aws autoscaling update-auto-scaling-group \ --auto-scaling-group-name my-asg \ --min-size 2 \ --max-size 10

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Définition des limites de capacité pour votre groupe Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 2 : pour ajouter des surveillances de l’état Elastic Load Balancing et spécifier les zones de disponibilité et les sous-réseaux à utiliser

Cet exemple met à jour le groupe Auto Scaling spécifié pour ajouter des surveillances de l’état Elastic Load Balancing. Cette commande met également à jour la valeur de --vpc-zone-identifier avec une liste d’ID de sous-réseaux dans plusieurs zones de disponibilité.

aws autoscaling update-auto-scaling-group \ --auto-scaling-group-name my-asg \ --health-check-type ELB \ --health-check-grace-period 600 \ --vpc-zone-identifier "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782"

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Elastic Load Balancing et Amazon EC2 Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 3 : pour mettre à jour le groupe de placement et la stratégie de résiliation

Cet exemple met à jour le groupe de placement et la stratégie de résiliation à utiliser.

aws autoscaling update-auto-scaling-group \ --auto-scaling-group-name my-asg \ --placement-group my-placement-group \ --termination-policies "OldestInstance"

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Groupes Auto Scaling dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 4 : pour utiliser la dernière version du modèle de lancement

Cet exemple met à jour le groupe Auto Scaling pour utiliser la dernière version du modèle de lancement spécifié.

aws autoscaling update-auto-scaling-group \ --auto-scaling-group-name my-asg \ --launch-template LaunchTemplateId=lt-1234567890abcde12,Version='$Latest'

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Modèles de lancement dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 5 : pour utiliser une version spécifique du modèle de lancement

Cet exemple met à jour le groupe Auto Scaling spécifié pour utiliser une version spécifique d’un modèle de lancement au lieu de la dernière version ou de la version par défaut.

aws autoscaling update-auto-scaling-group \ --auto-scaling-group-name my-asg \ --launch-template LaunchTemplateName=my-template-for-auto-scaling,Version='2'

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Modèles de lancement dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

Exemple 6 : pour définir une politique d’instances mixtes et activer le rééquilibrage de la capacité

Cet exemple met à jour le groupe Auto Scaling spécifié afin d’utiliser une politique d’instances mixtes et d’activer le rééquilibrage de la capacité. Cette structure vous permet de spécifier des groupes dotés de capacités Spot et à la demande et d’utiliser différents modèles de lancement pour différentes architectures.

aws autoscaling update-auto-scaling-group \ --cli-input-json file://~/config.json

Contenu de config.json :

{ "AutoScalingGroupName": "my-asg", "CapacityRebalance": true, "MixedInstancesPolicy": { "LaunchTemplate": { "LaunchTemplateSpecification": { "LaunchTemplateName": "my-launch-template-for-x86", "Version": "$Latest" }, "Overrides": [ { "InstanceType": "c6g.large", "LaunchTemplateSpecification": { "LaunchTemplateName": "my-launch-template-for-arm", "Version": "$Latest" } }, { "InstanceType": "c5.large" }, { "InstanceType": "c5a.large" } ] }, "InstancesDistribution": { "OnDemandPercentageAboveBaseCapacity": 50, "SpotAllocationStrategy": "capacity-optimized" } } }

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Groupes Auto Scaling avec types d’instance et options d’achat multiples dans le Guide de l’utilisateur Amazon EC2 Auto Scaling.

  • Pour plus de détails sur l’API, consultez UpdateAutoScalingGroup dans la Référence des commandes de l’AWS CLI.