Esempi di dimensionamento automatico che utilizzano la AWS CLI - AWS Command Line Interface

Esempi di dimensionamento automatico che utilizzano la AWS CLI

Negli esempi di codice seguenti viene mostrato come eseguire azioni e implementare scenari comuni utilizzando AWS Command Line Interface con il dimensionamento automatico.

Le operazioni sono estratti di codice da programmi più grandi e devono essere eseguite nel contesto. Sebbene le operazioni mostrino come richiamare le singole funzioni del servizio, è possibile visualizzarle contestualizzate negli scenari correlati.

Ogni esempio include un link al codice sorgente completo, dove è possibile trovare le istruzioni su come configurare ed eseguire il codice nel contesto.

Argomenti

Operazioni

L’esempio di codice seguente mostra come utilizzare attach-instances.

AWS CLI

Come collegare un’istanza a un gruppo Auto Scaling

In questo esempio, l’istanza specificata viene collegata al gruppo Auto Scaling specificato.

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

Questo comando non produce alcun output.

  • Per informazioni dettagliate sull’API, consulta AttachInstances in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare attach-load-balancer-target-groups.

AWS CLI

Come collegare un gruppo di destinazione a un gruppo Auto Scaling

In questo esempio, il gruppo di destinazione specificato viene collegato al gruppo Auto Scaling specificato.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Elastic Load Balancing e Amazon EC2 Auto Scaling nella Guida per l’utente di Amazon EC2 Auto Scaling.

L’esempio di codice seguente mostra come utilizzare attach-load-balancers.

AWS CLI

Come collegare un Classic Load Balancer a un gruppo Auto Scaling

In questo esempio, il Classic Load Balancer specificato viene collegato al gruppo Auto Scaling specificato.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Elastic Load Balancing e Amazon EC2 Auto Scaling nella Guida per l’utente di Amazon EC2 Auto Scaling.

  • Per informazioni dettagliate sull’API, consulta AttachLoadBalancers in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare cancel-instance-refresh.

AWS CLI

Come annullare un aggiornamento delle istanze

L’esempio cancel-instance-refresh seguente annulla un aggiornamento dell’istanza in corso per il gruppo Auto Scaling specificato.

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

Output:

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

Per ulteriori informazioni, consulta Annullamento dell’aggiornamento di un’istanza nella Guida per l’utente di Amazon EC2 Auto Scaling.

L’esempio di codice seguente mostra come utilizzare complete-lifecycle-action.

AWS CLI

Come completare un’azione del ciclo di vita

In questo esempio, ad Amazon EC2 Auto Scaling viene notificato che l’azione del ciclo di vita specificata è completa, in modo che possa portare a termine l’avvio o la chiusura dell’istanza.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Hook del ciclo di vita di Dimensionamento automatico Amazon EC2 nella Guida per l'utente di Dimensionamento automatico Amazon EC2.

L’esempio di codice seguente mostra come utilizzare create-auto-scaling-group.

AWS CLI

Esempio 1: come creare un gruppo Auto Scaling

L’esempio create-auto-scaling-group seguente crea un gruppo Auto Scaling in sottoreti in più zone di disponibilità all’interno di una Regione. Le istanze vengono avviate con la versione predefinita del modello di avvio specificato. Tieni presente che le impostazioni predefinite vengono utilizzate per la maggior parte delle altre impostazioni, come le policy di terminazione e la configurazione dei controlli dell’integrità.

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"

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Gruppi con scalabilità automatica nella Guida per l'utente di Dimensionamento automatico Amazon EC2.

Esempio 2: come collegare un’istanza di Application Load Balancer, Network Load Balancer o Gateway Load Balancer

In questo esempio viene specificato l’ARN di un gruppo di destinazione per un bilanciatore del carico che supporta il traffico previsto. Il tipo di controllo dell’integrità è impostato su ELB, ovvero quando Elastic Load Balancing segnala un’istanza non integra, il gruppo Auto Scaling la sostituisce. Il comando definisce anche un periodo di tolleranza di 600 secondi per il controllo dell’integrità. Il periodo di tolleranza consente di evitare la terminazione anticipata delle istanze appena avviate.

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"

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Elastic Load Balancing e Amazon EC2 Auto Scaling nella Guida per l’utente di Amazon EC2 Auto Scaling.

Esempio 3: come specificare un gruppo di posizionamento e utilizzare la versione più recente del modello di avvio

In questo esempio vengono avviate le istanze in un gruppo di posizionamento all’interno di una singola zona di disponibilità. Ciò può essere utile per gruppi a bassa latenza con carichi di lavoro basati sul calcolo ad alte prestazioni (HPC). In questo esempio vengono specificate anche la dimensione minima, la dimensione massima e la capacità desiderata del gruppo.

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"

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Gruppi di collocamento nella Guida per l'utente di Amazon EC2 per le istanze Linux.

Esempio 4: come specificare un gruppo Auto Scaling a istanza singola e utilizzare una versione specifica del modello di avvio

In questo esempio viene creato un gruppo Auto Scaling con capacità minima e massima impostata su 1 per imporre l’esecuzione di un’istanza. Il comando specifica anche la v1 di un modello di avvio in cui è specificato l’ID di un ENI esistente. Quando si utilizza un modello di avvio che specifica un ENI esistente per eth0, è necessario indicare una zona di disponibilità per il gruppo Auto Scaling corrispondente all’interfaccia di rete, senza specificare anche un ID di sottorete nella richiesta.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Gruppi con scalabilità automatica nella Guida per l'utente di Dimensionamento automatico Amazon EC2.

Esempio 5: come specificare una policy di terminazione diversa

In questo esempio viene creato un gruppo Auto Scaling utilizzando una configurazione di avvio e si imposta la policy di terminazione per terminare prima le istanze più vecchie. Il comando applica inoltre un tag al gruppo e alle relative istanze, con una chiave di Role e un valore di 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"

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Utilizzo delle policy di terminazione Amazon EC2 Auto Scaling nella Guida per l’utente di Amazon EC2 Auto Scaling.

Esempio 6: come specificare un hook del ciclo di vita all’avvio

Nell’esempio seguente viene creato un gruppo Auto Scaling con un hook del ciclo di vita che supporta un’azione personalizzata all’avvio delle istanze.

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

Contenuto del file 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" }] }

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Hook del ciclo di vita di Dimensionamento automatico Amazon EC2 nella Guida per l'utente di Dimensionamento automatico Amazon EC2.

Esempio 7: come specificare un hook del ciclo di vita alla terminazione

Nell’esempio seguente viene creato un gruppo Auto Scaling con un hook del ciclo di vita che supporta un’azione personalizzata alla cessazione delle istanze.

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

Contenuto di 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" }

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Hook del ciclo di vita di Dimensionamento automatico Amazon EC2 nella Guida per l'utente di Dimensionamento automatico Amazon EC2.

Esempio 8: come specificare una policy di terminazione personalizzata

In questo esempio viene creato un gruppo Auto Scaling che specifica una policy di terminazione personalizzata della funzione Lambda, che indica ad Amazon EC2 Auto Scaling le istanze da terminare durante la riduzione orizzontale.

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"

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Creazione di una policy di terminazione personalizzata con Lambda nella Guida per l’utente di Amazon EC2 Auto Scaling.

L’esempio di codice seguente mostra come utilizzare create-launch-configuration.

AWS CLI

Esempio 1: come creare una configurazione di avvio

In questo esempio viene creata una configurazione di avvio semplice.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Creazione di configurazioni di avvio nella Guida per l’utente di Amazon EC2 Auto Scaling.

Esempio 2: come creare una configurazione di avvio con un gruppo di sicurezza, una coppia di chiavi e uno script di avvio

In questo esempio viene creata una configurazione di avvio con un gruppo di sicurezza, una coppia di chiavi e uno script di avvio contenuti nei dati utente.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Creazione di configurazioni di avvio nella Guida per l’utente di Amazon EC2 Auto Scaling.

Esempio 3: come creare una configurazione di avvio con un ruolo IAM

In questo esempio viene creata una configurazione di avvio con il nome del profilo dell’istanza di un ruolo 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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Ruolo IAM per le applicazioni in esecuzione sulle istanze Amazon EC2 nella Guida per l'utente di Amazon EC2 Auto Scaling.

Esempio 4: come creare una configurazione di avvio con il monitoraggio dettagliato abilitato

In questo esempio viene creata una configurazione di avvio con il monitoraggio dettagliato EC2 abilitato, che invia le metriche EC2 a CloudWatch a intervalli di 1 minuto.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Configurazione del monitoraggio per le istanze Auto Scaling nella Guida per l’utente di Amazon EC2 Auto Scaling.

Esempio 5: come creare una configurazione di avvio che avvia le istanze spot

In questo esempio viene creata una configurazione di avvio che utilizza le istanze spot come unica opzione di acquisto.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Richiesta di istanze spot nella Guida per l’utente di Amazon EC2 Auto Scaling.

Esempio 6: come creare una configurazione di avvio utilizzando un’istanza EC2

In questo esempio viene creata una configurazione di avvio basata sugli attributi di un’istanza esistente. Sostituisce la tenancy del posizionamento e l’eventuale impostazione di un indirizzo IP pubblico includendo le opzioni --placement-tenancy e --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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Creazione di una configurazione di avvio utilizzando un’istanza EC2 nella Guida per l’utente di Amazon EC2 Auto Scaling.

Esempio 7: come creare una configurazione di avvio con una mappatura dei dispositivi a blocchi per un volume Amazon EBS

In questo esempio viene creata una configurazione di avvio con una mappatura dei dispositivi a blocchi per un volume gp3 Amazon EBS con il nome di dispositivo /dev/sdh e una dimensione del volume pari a 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"}}]'

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta EBS in Amazon EC2 Auto Scaling API Reference.

Per ulteriori informazioni sulla sintassi per citare i valori dei parametri in formato JSON, consulta Utilizzo di virgolette con stringhe nell’AWS CLI nella Guida per l’utente dell’interfaccia a riga di comando AWS.

Esempio 8: come creare una configurazione di avvio con una mappatura dei dispositivi a blocchi per un volume dell’archivio dell’istanza

In questo esempio viene creata una configurazione di avvio con ephemeral1 come volume di archivio dell’istanza con il nome di dispositivo /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"}]'

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta BlockDeviceMapping in Amazon EC2 Auto Scaling API Reference.

Per ulteriori informazioni sulla sintassi per citare i valori dei parametri in formato JSON, consulta Utilizzo di virgolette con stringhe nell’AWS CLI nella Guida per l’utente dell’interfaccia a riga di comando AWS.

Esempio 9: come creare una configurazione di avvio e impedire a un dispositivo a blocchi di collegarsi al momento dell’avvio

In questo esempio viene creata una configurazione di avvio che elimina un dispositivo a blocchi specificato dalla mappatura dei dispositivi a blocchi dell’AMI (ad esempio, /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":""}]'

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta BlockDeviceMapping in Amazon EC2 Auto Scaling API Reference.

Per ulteriori informazioni sulla sintassi per citare i valori dei parametri in formato JSON, consulta Utilizzo di virgolette con stringhe nell’AWS CLI nella Guida per l’utente dell’interfaccia a riga di comando AWS.

L’esempio di codice seguente mostra come utilizzare create-or-update-tags.

AWS CLI

Come creare o aggiornare i tag per un gruppo Auto Scaling

In questo esempio vengono aggiunti due tag al gruppo Auto Scaling specificato.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Tagging di gruppi e istanze Auto Scaling nella Guida per l'utente di Amazon EC2 Auto Scaling.

  • Per informazioni dettagliate sull’API, consulta CreateOrUpdateTags in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare delete-auto-scaling-group.

AWS CLI

Esempio 1: come eliminare il gruppo Auto Scaling specificato

In questo esempio viene eliminato il gruppo Auto Scaling specificato.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Eliminazione dell’infrastruttura Auto Scaling nella Guida per l’utente di Amazon EC2 Auto Scaling.

Esempio 2: come forzare l’eliminazione del gruppo Auto Scaling specificato

Per eliminare il gruppo Auto Scaling senza attendere il termine delle istanze del gruppo, utilizza l’opzione --force-delete.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Eliminazione dell’infrastruttura Auto Scaling nella Guida per l’utente di Amazon EC2 Auto Scaling.

L’esempio di codice seguente mostra come utilizzare delete-launch-configuration.

AWS CLI

Come eliminare la configurazione di avvio

In questo esempio viene eliminata la configurazione di avvio specificata.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Eliminazione dell’infrastruttura Auto Scaling nella Guida per l’utente di Amazon EC2 Auto Scaling.

L’esempio di codice seguente mostra come utilizzare delete-lifecycle-hook.

AWS CLI

Come eliminare un hook del ciclo di vita

In questo esempio viene eliminato l’hook del ciclo di vita specificato.

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

Questo comando non produce alcun output.

  • Per informazioni dettagliate sull’API, consulta DeleteLifecycleHook in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare delete-notification-configuration.

AWS CLI

Come eliminare una notifica di dimensionamento automatico

In questo esempio viene eliminata la notifica specificata dal gruppo Auto Scaling specificato.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Eliminazione della configurazione delle notifiche nella Guida per l’utente di Amazon EC2 Auto Scaling.

L’esempio di codice seguente mostra come utilizzare delete-policy.

AWS CLI

Come eliminare una policy di dimensionamento

In questo esempio viene eliminata la policy di dimensionamento specificata.

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

Questo comando non produce alcun output.

  • Per informazioni dettagliate sulla API, consulta DeletePolicy nella AWS CLI Documentazione di riferimento dei comandi.

L’esempio di codice seguente mostra come utilizzare delete-scheduled-action.

AWS CLI

Come eliminare un’azione pianificata da un gruppo Auto Scaling

In questo esempio, l’azione pianificata specificata viene eliminata dal gruppo Auto Scaling specificato.

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

Questo comando non produce alcun output.

L’esempio di codice seguente mostra come utilizzare delete-tags.

AWS CLI

Come eliminare un tag da un gruppo Auto Scaling

In questo esempio viene eliminato il tag specificato dal gruppo Auto Scaling specificato.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Tagging di gruppi e istanze Auto Scaling nella Guida per l'utente di Amazon EC2 Auto Scaling.

  • Per informazioni dettagliate sull’API, consulta DeleteTags in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare delete-warm-pool.

AWS CLI

Esempio 1: come eliminare un warm pool

Nell’esempio seguente viene eliminato un warm pool per il gruppo Auto Scaling specificato.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Warm pools per Dimensionamento automatico Amazon EC2 nella Guida per l'utente di Dimensionamento automatico Amazon EC2.

Esempio 2: come forzare l’eliminazione di un warm pool

Per eliminare il warm pool senza attendere la terminazione delle relative istanze, utilizza l’opzione --force-delete.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Warm pools per Dimensionamento automatico Amazon EC2 nella Guida per l'utente di Dimensionamento automatico Amazon EC2.

  • Per informazioni dettagliate sull’API, consulta DeleteWarmPool in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare describe-account-limits.

AWS CLI

Come descrivere i limiti dell’account Amazon EC2 Auto Scaling

In questo esempio vengono descritti i limiti di Amazon EC2 Auto Scaling per un account AWS.

aws autoscaling describe-account-limits

Output:

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

Per ulteriori informazioni, consulta Quote del servizio Amazon EC2 Auto Scaling nella Guida per l’utente di Amazon EC2 Auto Scaling.

L’esempio di codice seguente mostra come utilizzare describe-adjustment-types.

AWS CLI

Come descrivere i tipi di regolazione del dimensionamento disponibili

In questo esempio vengono descritti i tipi di regolazione disponibili.

aws autoscaling describe-adjustment-types

Output:

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

Per ulteriori informazioni, consulta la sezione sui Tipi di dimensionamento automatico nella Guida per l'utente di Amazon EC2 Auto Scaling.

L’esempio di codice seguente mostra come utilizzare describe-auto-scaling-groups.

AWS CLI

Esempio 1: come descrivere il gruppo Auto Scaling specificato

In questo esempio viene descritto il gruppo Auto Scaling specificato.

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

Output:

{ "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": [] } ] }

Esempio 2: come descrivere i primi 100 gruppi Auto Scaling specificati

In questo esempio vengono descritti i gruppi Auto Scaling specificati. Consente di specificare fino a 100 nomi di gruppo.

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

Vedi l'esempio 1 per un output di esempio.

Esempio 3: come descrivere un gruppo Auto Scaling nella Regione specificata

In questo esempio viene descritto fino a un massimo di 75 gruppi Auto Scaling nella Regione specificata.

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

Vedi l'esempio 1 per un output di esempio.

Esempio 4: come descrivere il numero specificato di gruppi Auto Scaling

Per restituire un numero specifico di gruppi Auto Scaling, utilizza l’opzione --max-items.

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

Vedi l'esempio 1 per un output di esempio.

Se l’output include un campo NextToken, significa che sono presenti più gruppi. Per ottenere i gruppi aggiuntivi, utilizza il valore di questo campo con l’opzione --starting-token in una chiamata successiva come descritto di seguito.

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

Vedi l'esempio 1 per un output di esempio.

Esempio 5: come descrivere i gruppi Auto Scaling che utilizzano configurazioni di avvio

In questo esempio viene utilizzata l’opzione --query per descrivere i gruppi Auto Scaling che utilizzano configurazioni di avvio.

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

Output:

[ { "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": [] } ]

Per ulteriori informazioni, consulta Filter AWS CLI output nella Guida per l’utente dell’interfaccia a riga di comando di AWS.

L’esempio di codice seguente mostra come utilizzare describe-auto-scaling-instances.

AWS CLI

Esempio 1: come descrivere una o più istanze

In questo esempio viene descritta l’istanza specificata.

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

Output:

{ "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" } } ] }

Esempio 2: come descrivere una o più istanze

In questo esempio viene utilizzata l’opzione --max-items per specificare il numero di istanze da restituire con questa chiamata.

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

Se l’output include un campo NextToken, significa che sono presenti più istanze. Per ottenere le istanze aggiuntive, utilizza il valore di questo campo con l’opzione --starting-token in una chiamata successiva come descritto di seguito.

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

Vedi l'esempio 1 per un output di esempio.

Esempio 3: come descrivere le istanze che utilizzano le configurazioni di avvio

In questo esempio viene utilizzata l’opzione --query per descrivere le istanze che utilizzano configurazioni di avvio.

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

Output:

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

Per ulteriori informazioni, consulta Filter AWS CLI output nella Guida per l’utente dell’interfaccia a riga di comando di AWS.

L’esempio di codice seguente mostra come utilizzare describe-auto-scaling-notification-types.

AWS CLI

Come descrivere i tipi di notifica disponibili

In questo esempio vengono descritti i tipi di notifica disponibili.

aws autoscaling describe-auto-scaling-notification-types

Output:

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

Per ulteriori informazioni, consulta l'argomento relativo alla ricezione di notifiche Amazon SNS quando il gruppo Auto Scaling viene ridimensionato nella Guida per l'utente di Amazon EC2 Auto Scaling.

L’esempio di codice seguente mostra come utilizzare describe-instance-refreshes.

AWS CLI

Come descrivere gli aggiornamenti delle istanze

L’esempio describe-instance-refreshes seguente restituisce una descrizione di tutte le richieste di aggiornamento delle istanze per il gruppo Auto Scaling specificato, incluso il messaggio di stato e (se disponibile) il motivo dello stato.

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

Output:

{ "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" } } ] }

Per ulteriori informazioni, consulta Verificare lo stato dell’aggiornamento delle istanze nella Guida per l’utente di Amazon EC2 Auto Scaling.

L’esempio di codice seguente mostra come utilizzare describe-launch-configurations.

AWS CLI

Esempio 1: come descrivere la configurazione di avvio specificata

In questo esempio viene descritta la configurazione di avvio specificata.

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

Output:

{ "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" } } ] }

Esempio 2: come descrivere un numero specificato di configurazioni di avvio

Per restituire un numero specifico di configurazioni di avvio, utilizza l’opzione --max-items.

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

Se l’output include un campo NextToken, significa che sono presenti più configurazioni di avvio. Per ottenere le configurazioni di avvio aggiuntive, utilizza il valore di questo campo con l’opzione --starting-token in una chiamata successiva come descritto di seguito.

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

L’esempio di codice seguente mostra come utilizzare describe-lifecycle-hook-types.

AWS CLI

Come descrivere i tipi di hook del ciclo di vita disponibili

In questo esempio sono descritti i tipi di hook del ciclo di vita disponibili.

aws autoscaling describe-lifecycle-hook-types

Output:

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

L’esempio di codice seguente mostra come utilizzare describe-lifecycle-hooks.

AWS CLI

Come descrivere gli hook del ciclo di vita

In questo esempio vengono descritti gli hook del ciclo di vita del gruppo Auto Scaling specificato.

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

Output:

{ "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" } ] }

L’esempio di codice seguente mostra come utilizzare describe-load-balancer-target-groups.

AWS CLI

Come descrivere i gruppi di destinazione del bilanciatore del carico per un gruppo Auto Scaling

In questo esempio, i gruppi di destinazione del bilanciatore del carico vengono collegati al gruppo Auto Scaling specificato.

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

Output:

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

L’esempio di codice seguente mostra come utilizzare describe-load-balancers.

AWS CLI

Come descrivere i Classic Load Balancer per un gruppo Auto Scaling

In questo esempio vengono descritti i Classic Load Balancer per il gruppo Auto Scaling specificato.

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

Output:

{ "LoadBalancers": [ { "State": "Added", "LoadBalancerName": "my-load-balancer" } ] }

L’esempio di codice seguente mostra come utilizzare describe-metric-collection-types.

AWS CLI

Come descrivere i tipi di raccolta delle metriche disponibili

In questo esempio vengono descritti i tipi di raccolta delle metriche disponibili.

aws autoscaling describe-metric-collection-types

Output:

{ "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" } ] }

Per ulteriori informazioni, consulta la sezione Parametri del gruppo con scalabilità automatica nella Guida per l'utente di Dimensionamento automatico Amazon EC2.

L’esempio di codice seguente mostra come utilizzare describe-notification-configurations.

AWS CLI

Esempio 1: come descrivere le configurazioni di notifica di un gruppo specificato

In questo esempio vengono descritte le configurazioni di notifica del gruppo Auto Scaling specificato.

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

Output:

{ "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" } ] }

Per ulteriori informazioni, consulta l'argomento relativo alla ricezione di notifiche Amazon SNS quando il gruppo Auto Scaling viene ridimensionato nella Guida per l'utente di Amazon EC2 Auto Scaling.

Esempio 1: come descrivere il numero specificato di configurazioni di notifica

Per restituire un numero specifico di configurazioni di notifica, utilizza il parametro max-items.

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

Output:

{ "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" } ] }

Se l’output include un campo NextToken, significa che sono presenti più configurazioni di notifica. Per ottenere le configurazioni di notifica aggiuntive, utilizza il valore di questo campo con il parametro starting-token in una chiamata successiva come descritto di seguito.

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

Per ulteriori informazioni, consulta l'argomento relativo alla ricezione di notifiche Amazon SNS quando il gruppo Auto Scaling viene ridimensionato nella Guida per l'utente di Amazon EC2 Auto Scaling.

L’esempio di codice seguente mostra come utilizzare describe-policies.

AWS CLI

Esempio 1: come descrivere le policy di dimensionamento di un gruppo specificato

In questo esempio vengono descritte le policy di dimensionamento del gruppo Auto Scaling specificato.

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

Output:

{ "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 } ] }

Per ulteriori informazioni, consulta Dimensionamento dinamico nella Guida per l’utente di Amazon EC2 Auto Scaling.

Esempio 2: come descrivere le policy di dimensionamento di un nome specificato

Per restituire policy di dimensionamento specifiche, utilizza l’opzione --policy-names.

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

Vedi l'esempio 1 per un output di esempio.

Per ulteriori informazioni, consulta Dimensionamento dinamico nella Guida per l’utente di Amazon EC2 Auto Scaling.

Esempio 3: come descrivere una serie di policy di dimensionamento

Per restituire un numero specifico di policy, utilizza l’opzione --max-items.

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

Vedi l'esempio 1 per un output di esempio.

Se l’output include un campo NextToken, utilizza il valore di questo campo con l’opzione --starting-token in una chiamata successiva per ottenere le policy aggiuntive.

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

Per ulteriori informazioni, consulta Dimensionamento dinamico nella Guida per l’utente di Amazon EC2 Auto Scaling.

  • Per informazioni dettagliate sull’API, consulta DescribePolicies in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare describe-scaling-activities.

AWS CLI

Esempio 1: come descrivere le attività di dimensionamento per il gruppo specificato

In questo esempio vengono descritte le attività di dimensionamento del gruppo Auto Scaling specificato.

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

Output:

{ "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\"}" } ] }

Per maggiori informazioni, consulta Verificare un'attività di dimensionamento per un gruppo con scalabilità automatica nella Guida dell'utente di Dimensionamento automatico Amazon EC2.

Esempio 2: come descrivere le attività di dimensionamento per il gruppo eliminato

Come descrivere le attività di dimensionamento dopo l’eliminazione di un gruppo Auto Scaling, aggiungi l’opzione --include-deleted-groups.

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

Output:

{ "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" } ] }

Per ulteriori informazioni, consulta Risoluzione dei problemi di Amazon EC2 Auto Scaling nella Guida per l’utente di Amazon EC2 Auto Scaling.

Esempio 3: come descrivere un numero specificato di attività di dimensionamento

Per restituire un numero specifico di attività, utilizza l’opzione --max-items.

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

Output:

{ "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\"}" } ] }

Se l’output include un campo NextToken, significa che sono presenti più attività. Per ottenere le attività aggiuntive, utilizza il valore di questo campo con l’opzione --starting-token in una chiamata successiva come descritto di seguito.

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

Per maggiori informazioni, consulta Verificare un'attività di dimensionamento per un gruppo con scalabilità automatica nella Guida dell'utente di Dimensionamento automatico Amazon EC2.

L’esempio di codice seguente mostra come utilizzare describe-scaling-process-types.

AWS CLI

Come descrivere i tipi di processo disponibili

In questo esempio vengono descritti i tipi di processo disponibili.

aws autoscaling describe-scaling-process-types

Output:

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

Per ulteriori informazioni, consulta Sospensione e ripresa dei processi di dimensionamento nella Guida per l’utente di Amazon EC2 Auto Scaling.

L’esempio di codice seguente mostra come utilizzare describe-scheduled-actions.

AWS CLI

Esempio 1: come descrivere tutte le azioni pianificate

In questo esempio vengono descritte tutte le azioni pianificate.

aws autoscaling describe-scheduled-actions

Output:

{ "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" } ] }

Per ulteriori informazioni, consulta Dimensionamento programmato nella Guida per l'utente di Dimensionamento automatico Amazon EC2.

Esempio 2: come descrivere le azioni pianificate per il gruppo specificato

Come descrivere le azioni pianificate per un gruppo Auto Scaling specifico, utilizza l’opzione --auto-scaling-group-name.

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

Output:

{ "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" } ] }

Per ulteriori informazioni, consulta Dimensionamento programmato nella Guida per l'utente di Dimensionamento automatico Amazon EC2.

Esempio 3: come descrivere l’azione pianificata specificata

Come descrivere un’azione pianificata specifica, utilizza l’opzione --scheduled-action-names.

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

Output:

{ "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" } ] }

Per ulteriori informazioni, consulta Dimensionamento programmato nella Guida per l'utente di Dimensionamento automatico Amazon EC2.

Esempio 4: come descrivere le azioni pianificate con un’ora di inizio specificata

Come descrivere le azioni pianificate che iniziano a un’ora specifica, utilizza l’opzione --start-time.

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

Output:

{ "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" } ] }

Per ulteriori informazioni, consulta Dimensionamento programmato nella Guida per l'utente di Dimensionamento automatico Amazon EC2.

Esempio 5: come descrivere le azioni pianificate che terminano a un’ora specificata

Come descrivere le azioni pianificate che terminano a un’ora specifica, utilizza l’opzione --end-time.

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

Output:

{ "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" } ] }

Per ulteriori informazioni, consulta Dimensionamento programmato nella Guida per l'utente di Dimensionamento automatico Amazon EC2.

Esempio 6: come descrivere il numero specificato di azioni pianificate

Per restituire un numero specifico di azioni pianificate, utilizza l’opzione --max-items.

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

Output:

{ "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" } ] }

Se l’output include un campo NextToken, significa che sono presenti più azioni pianificate. Per ottenere le azioni pianificate aggiuntive, utilizza il valore di questo campo con l’opzione --starting-token in una chiamata successiva come descritto di seguito.

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

Per ulteriori informazioni, consulta Dimensionamento programmato nella Guida per l'utente di Dimensionamento automatico Amazon EC2.

L’esempio di codice seguente mostra come utilizzare describe-tags.

AWS CLI

Come descrivere tutti i tag

In questo esempio vengono descritti tutti i tag.

aws autoscaling describe-tags

Output:

{ "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" } ] }

Per ulteriori informazioni, consulta Tagging di gruppi e istanze Auto Scaling nella Guida per l'utente di Amazon EC2 Auto Scaling.

Esempio 2: come descrivere i tag per un gruppo specificato

Come descrivere i tag di un gruppo Auto Scaling specifico, utilizza l’opzione --filters.

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

Per ulteriori informazioni, consulta Tagging di gruppi e istanze Auto Scaling nella Guida per l'utente di Amazon EC2 Auto Scaling.

Esempio 3: come descrivere il numero specificato di tag

Per restituire un numero specifico di tag, utilizza l’opzione --max-items.

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

Se l’output include un campo NextToken, significa che sono presenti più tag. Per ottenere i tag aggiuntivi, utilizza il valore di questo campo con l’opzione --starting-token in una chiamata successiva come descritto di seguito.

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

Per ulteriori informazioni, consulta Tagging di gruppi e istanze Auto Scaling nella Guida per l'utente di Amazon EC2 Auto Scaling.

  • Per informazioni dettagliate sull’API, consulta DescribeTags in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare describe-termination-policy-types.

AWS CLI

Come descrivere i tipi di policy di terminazione disponibili

In questo esempio vengono descritti i tipi di policy di terminazione disponibili.

aws autoscaling describe-termination-policy-types

Output:

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

Per ulteriori informazioni, consulta Controllo delle istanze Auto Scaling che vengono terminate durante il dimensionamento nella Guida per l'utente di Amazon EC2 Auto Scaling.

L’esempio di codice seguente mostra come utilizzare describe-warm-pool.

AWS CLI

Come descrivere un warm pool

In questo esempio viene descritto il warm pool del gruppo Auto Scaling specificato.

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

Output:

{ "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" } } ] }

Per ulteriori informazioni, consulta Warm pools per Dimensionamento automatico Amazon EC2 nella Guida per l'utente di Dimensionamento automatico Amazon EC2.

  • Per informazioni dettagliate sull’API, consulta DescribeWarmPool in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare detach-instances.

AWS CLI

Come scollegare un’istanza da un gruppo Auto Scaling

In questo esempio, l’istanza specificata viene scollegata dal gruppo Auto Scaling specificato.

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

Output:

{ "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\"}" } ] }
  • Per informazioni dettagliate sull’API, consulta DetachInstances in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare detach-load-balancer-target-groups.

AWS CLI

Come scollegare un gruppo di destinazione del bilanciatore del carico da un gruppo Auto Scaling

In questo esempio, il gruppo di destinazione del bilanciatore del carico specificato viene scollegato dal gruppo Auto Scaling specificato.

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

Questo comando non produce alcun output.

Per maggiori informazioni, consulta Attaching a load balancer to your Auto Scaling group nella Guida per l'utente di Dimensionamento automatico Amazon EC2.

L’esempio di codice seguente mostra come utilizzare detach-load-balancers.

AWS CLI

Come scollegare un Classic Load Balancer da un gruppo Auto Scaling

In questo esempio, il Classic Load Balancer specificato viene scollegato dal gruppo Auto Scaling specificato.

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

Questo comando non produce alcun output.

Per maggiori informazioni, consulta Attaching a load balancer to your Auto Scaling group nella Guida per l'utente di Dimensionamento automatico Amazon EC2.

  • Per informazioni dettagliate sull’API, consulta DetachLoadBalancers in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare disable-metrics-collection.

AWS CLI

Come disabilitare la raccolta delle metriche per un gruppo Auto Scaling

In questo esempio viene disabilitata la raccolta della metrica GroupDesiredCapacity per il gruppo Auto Scaling specificato.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Monitoraggio dei parametri di CloudWatch per le istanze e i gruppi Auto Scaling nella Guida per l'utente di Amazon EC2 Auto Scaling.

L’esempio di codice seguente mostra come utilizzare enable-metrics-collection.

AWS CLI

Esempio 1: come abilitare la raccolta delle metriche per un gruppo Auto Scaling

In questo esempio viene abilitata la raccolta dei dati per il gruppo Auto Scaling specificato.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Monitoraggio dei parametri di CloudWatch per le istanze e i gruppi Auto Scaling nella Guida per l'utente di Amazon EC2 Auto Scaling.

Esempio 2: come raccogliere i dati della metrica specificata per un gruppo Auto Scaling

Per raccogliere i dati per una metrica specifica, utilizza l’opzione --metrics.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Monitoraggio dei parametri di CloudWatch per le istanze e i gruppi Auto Scaling nella Guida per l'utente di Amazon EC2 Auto Scaling.

L’esempio di codice seguente mostra come utilizzare enter-standby.

AWS CLI

Come spostare le istanze in modalità standby

In questo esempio, l’istanza specificata viene messa in modalità standby. Ciò è utile per aggiornare o risolvere i problemi di un’istanza attualmente in servizio.

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

Output:

{ "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\"}" } ] }

Per ulteriori informazioni, consulta Ciclo di vita dell’istanza Amazon EC2 Auto Scaling nella Guida per l’utente di Amazon EC2 Auto Scaling.

  • Per informazioni dettagliate sull’API, consulta EnterStandby in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare execute-policy.

AWS CLI

Come eseguire una policy di dimensionamento

In questo esempio viene descritta la policy di dimensionamento denominata my-step-scale-out-policy per il gruppo Auto Scaling specificato.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Policy di dimensionamento per fasi e di dimensionamento semplice nella Guida per l’utente di Amazon EC2 Auto Scaling.

  • Per informazioni dettagliate sull’API, consulta ExecutePolicy in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare exit-standby.

AWS CLI

Come impostare l’uscita delle istanze dalla modalità standby

In questo esempio viene impostata l’uscita dell’istanza specificata dalla modalità standby.

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

Output:

{ "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\"}" } ] }

Per ulteriori informazioni, consulta Rimozione temporanea di istanze dal gruppo Auto Scaling nella Guida per l’utente di Amazon EC2 Auto Scaling.

  • Per informazioni dettagliate sull’API, consulta ExitStandby in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare put-lifecycle-hook.

AWS CLI

Esempio 1: come creare un hook del ciclo di vita

In questo esempio viene creato un hook del ciclo di vita che verrà invocato su tutte le nuove istanze avviate, con un timeout di 4800 secondi. Ciò è utile per mantenere le istanze in uno stato di attesa fino al termine degli script dei dati utente o per invocare una funzione AWS Lambda utilizzando 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

Questo comando non produce alcun output. Se esiste già un hook del ciclo di vita con lo stesso nome, verrà sovrascritto dal nuovo hook del ciclo di vita.

Per ulteriori informazioni, consulta Hook del ciclo di vita di Dimensionamento automatico Amazon EC2 nella Guida per l'utente di Dimensionamento automatico Amazon EC2.

Esempio 2: come inviare un messaggio e-mail tramite Amazon SNS per comunicare le transizioni di stato dell’istanza

In questo esempio viene creato un hook del ciclo di vita con l’argomento Amazon SNS e il ruolo IAM da utilizzare per ricevere una notifica all’avvio dell’istanza.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Hook del ciclo di vita di Dimensionamento automatico Amazon EC2 nella Guida per l'utente di Dimensionamento automatico Amazon EC2.

Esempio 3: come pubblicare un messaggio in una coda Amazon SQS

In questo esempio viene creato un hook del ciclo di vita che pubblica un messaggio con metadati nella coda Amazon SQS specificata.

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"

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Hook del ciclo di vita di Dimensionamento automatico Amazon EC2 nella Guida per l'utente di Dimensionamento automatico Amazon EC2.

  • Per informazioni dettagliate sull’API, consulta PutLifecycleHook in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare put-notification-configuration.

AWS CLI

Come aggiungere una notifica

In questo esempio, la notifica specificata viene aggiunta al gruppo Auto Scaling specificato.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta l'argomento relativo alla ricezione di notifiche Amazon SNS quando il gruppo Auto Scaling viene ridimensionato nella Guida per l'utente di Amazon EC2 Auto Scaling.

L’esempio di codice seguente mostra come utilizzare put-scaling-policy.

AWS CLI

Come aggiungere una policy di dimensionamento con tracciamento delle destinazioni a un gruppo Auto Scaling

L’esempio put-scaling-policy seguente applica un criterio di dimensionamento di tracciamento della destinazione al gruppo Auto Scaling specificato. L’output contiene gli ARN e i nomi dei due allarmi CloudWatch creati automaticamente. Se esiste già una policy di dimensionamento con lo stesso nome, tale policy verrà sovrascritta dalla nuova policy.

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

Contenuto di config.json.

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

Output:

{ "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" } ] }

Per altri esempi, consulta Policy di dimensionamento di esempio per l’interfaccia a riga di comando AWS (AWS CLI) nella Guida per l’utente di Amazon EC2 Auto Scaling.

  • Per informazioni dettagliate sull’API, consulta PutScalingPolicy in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare put-scheduled-update-group-action.

AWS CLI

Esempio 1: come aggiungere un’azione pianificata a un gruppo Auto Scaling

In questo esempio, l’azione pianificata specificata viene aggiunta al gruppo Auto Scaling specificato.

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

Questo comando non produce alcun output. Se esiste già un’azione pianificata con lo stesso nome, tale azione verrà sovrascritta dalla nuova azione pianificata.

Per ulteriori informazioni, consulta Dimensionamento pianificato nella Guida per l’utente di Amazon EC2 Auto Scaling.

Esempio 2: come specificare una pianificazione ricorrente

In questo esempio viene creata un’azione di dimensionamento pianificata in base a una pianificazione ricorrente la cui esecuzione è programmata alle 00:30 del primo gennaio, giugno e dicembre di ogni anno.

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

Questo comando non produce alcun output. Se esiste già un’azione pianificata con lo stesso nome, tale azione verrà sovrascritta dalla nuova azione pianificata.

Per ulteriori informazioni, consulta Dimensionamento pianificato nella Guida per l’utente di Amazon EC2 Auto Scaling.

L’esempio di codice seguente mostra come utilizzare put-warm-pool.

AWS CLI

Come creare un warm pool

Nell’esempio seguente viene creato un warm pool per il gruppo Auto Scaling specificato.

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

Questo comando non produce alcun output. Se esiste già un warm pool, verrà aggiornato.

Per ulteriori informazioni, consulta Warm pools per Dimensionamento automatico Amazon EC2 nella Guida per l'utente di Dimensionamento automatico Amazon EC2.

  • Per informazioni dettagliate sull’API, consulta PutWarmPool in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare record-lifecycle-action-heartbeat.

AWS CLI

Come registrare l’heartbeat di un’azione del ciclo di vita

In questo esempio viene registrato l’heartbeat di un’azione del ciclo di vita per mantenere l’istanza in sospeso.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Hook del ciclo di vita di Dimensionamento automatico Amazon EC2 nella Guida per l'utente di Dimensionamento automatico Amazon EC2.

L’esempio di codice seguente mostra come utilizzare resume-processes.

AWS CLI

Come riprendere i processi in sospeso

In questo esempio viene ripreso il processo di dimensionamento automatico specificato per il gruppo Auto Scaling specificato.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Sospensione e ripresa dei processi di dimensionamento nella Guida per l’utente di Amazon EC2 Auto Scaling.

  • Per informazioni dettagliate sull’API, consulta ResumeProcesses in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare rollback-instance-refresh.

AWS CLI

Come eseguire il rollback dell’aggiornamento di un’istanza

L’esempio rollback-instance-refresh seguente esegue il rollback un aggiornamento dell’istanza in corso per il gruppo Auto Scaling specificato.

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

Output:

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

Per ulteriori informazioni, consulta Annullamento delle modifiche tramite un rollback nella Guida per l'utente di Dimensionamento automatico Amazon EC2.

L’esempio di codice seguente mostra come utilizzare set-desired-capacity.

AWS CLI

Come impostare la capacità desiderata per un gruppo Auto Scaling

In questo esempio viene impostata la capacità desiderata per il gruppo Auto Scaling specificato.

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

In caso di esito positivo, il comando torna al prompt.

  • Per informazioni dettagliate sull’API, consulta SetDesiredCapacity in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare set-instance-health.

AWS CLI

Come impostare lo stato dell’integrità di un’istanza

In questo esempio, lo stato di integrità dell’istanza specificata viene impostato su Unhealthy.

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

Questo comando non produce alcun output.

  • Per informazioni dettagliate sull’API, consulta SetInstanceHealth in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare set-instance-protection.

AWS CLI

Esempio 1: come abilitare l’impostazione di protezione delle istanze per un’istanza

In questo esempio viene abilitata la protezione dell’istanza specificata.

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

Questo comando non produce alcun output.

Esempio 2: come disabilitare l’impostazione di protezione delle istanze per un’istanza

In questo esempio viene disabilitata la protezione dell’istanza per l’istanza specificata.

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

Questo comando non produce alcun output.

L’esempio di codice seguente mostra come utilizzare start-instance-refresh.

AWS CLI

Esempio 1: come avviare l’aggiornamento di un’istanza utilizzando i parametri della riga di comando

L’esempio start-instance-refresh seguente avvia l’aggiornamento di un’istanza utilizzando argomenti della riga di comando. Il parametro opzionale preferences specifica una InstanceWarmup di 60 secondi e una MinHealthyPercentage pari al 50%.

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

Output:

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

Per ulteriori informazioni, consulta Avvio dell’aggiornamento di un’istanza nella Guida per l’utente di Amazon EC2 Auto Scaling.

Esempio 2: come avviare l’aggiornamento di un’istanza utilizzando un file JSON

L’esempio start-instance-refresh seguente avvia l’aggiornamento di un’istanza utilizzando un file JSON. È possibile specificare il gruppo Auto Scaling e definire la configurazione e le preferenze desiderate in un file JSON, come illustrato nell’esempio seguente.

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

Contenuto di config.json.

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

Output:

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

Per ulteriori informazioni, consulta Avvio dell’aggiornamento di un’istanza nella Guida per l’utente di Amazon EC2 Auto Scaling.

  • Per informazioni dettagliate sull’API, consulta StartInstanceRefresh in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare suspend-processes.

AWS CLI

Come sospendere i processi di dimensionamento automatico

In questo esempio viene sospeso il processo di dimensionamento specificato per il gruppo Auto Scaling specificato.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Sospensione e ripresa dei processi di dimensionamento nella Guida per l’utente di Amazon EC2 Auto Scaling.

  • Per informazioni dettagliate sull’API, consulta SuspendProcesses in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare terminate-instance-in-auto-scaling-group.

AWS CLI

Come terminare un’istanza in un gruppo Auto Scaling

In questo esempio l’istanza specificata nel gruppo Auto Scaling specificato viene terminata senza aggiornare la dimensione del gruppo. In questo caso, Amazon EC2 Auto Scaling avvia un’istanza di sostituzione dopo aver terminato l’istanza specificata.

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

Output:

{ "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’esempio di codice seguente mostra come utilizzare update-auto-scaling-group.

AWS CLI

Esempio 1: come aggiornare i limiti di dimensione di un gruppo Auto Scaling

In questo esempio, il gruppo Auto Scaling specificato viene aggiornato in base a una dimensione minima di 2 e massima di 10.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Impostazione dei limiti di capacità per il gruppo Auto Scaling nella Guida per l’utente di Amazon EC2 Auto Scaling.

Esempio 2: come aggiungere i controlli dell’integrità di Elastic Load Balancing e specificare quali zone di disponibilità e sottoreti utilizzare

In questo esempio, il gruppo Auto Scaling specificato viene aggiornato per aggiungere i controlli dell’integrità di Elastic Load Balancing. Questo comando aggiorna anche il valore di --vpc-zone-identifier con un elenco di ID di sottoreti in più zone di 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"

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Elastic Load Balancing e Amazon EC2 Auto Scaling nella Guida per l’utente di Amazon EC2 Auto Scaling.

Esempio 3: come aggiornare il gruppo di posizionamento e la policy di terminazione

In questo esempio vengono aggiornati il gruppo di posizionamento e la policy di terminazione da utilizzare.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Gruppi con scalabilità automatica nella Guida per l'utente di Dimensionamento automatico Amazon EC2.

Esempio 4: come utilizzare la versione più recente del modello di avvio

In questo esempio, il gruppo Auto Scaling specificato viene aggiornato per utilizzare la versione più recente del modello di avvio specificato.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Modelli di avvio nella Guida per l'utente di Amazon EC2 Auto Scaling.

Esempio 5: come utilizzare una versione specifica del modello di avvio

In questo esempio, il gruppo Auto Scaling specificato viene aggiornato per utilizzare una versione specifica di un modello di avvio anziché la versione più recente o predefinita.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Modelli di avvio nella Guida per l'utente di Amazon EC2 Auto Scaling.

Esempio 6: come definire una policy di istanze miste e abilitare il ribilanciamento della capacità

In questo esempio, il gruppo Auto Scaling specificato viene aggiornato per utilizzare una policy di istanze miste e consentire il ribilanciamento della capacità. Questa struttura consente di specificare gruppi con capacità spot e on demand e utilizzare modelli di avvio diversi per architetture diverse.

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

Contenuto di 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" } } }

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta la sezione relativa ai Gruppi con dimensionamento automatico con più tipi di istanze e opzioni di acquisto nella Guida per l'utente di Amazon EC2 Auto Scaling.