Exemplos do Auto Scaling usando o AWS CLI - AWS Command Line Interface

Exemplos do Auto Scaling usando o AWS CLI

Os exemplos de código a seguir mostram como realizar ações e implementar cenários comuns usando o AWS Command Line Interface com o Auto Scaling.

Ações são trechos de código de programas maiores e devem ser executadas em contexto. Embora as ações mostrem como chamar funções de serviço individuais, você pode ver as ações no contexto em seus cenários relacionados.

Cada exemplo inclui um link para o código-fonte completo, em que você pode encontrar instruções sobre como configurar e executar o código.

Tópicos

Ações

O código de exemplo a seguir mostra como usar attach-instances.

AWS CLI

Como anexar uma instância a um grupo do Auto Scaling

Este exemplo anexa a instância especificada ao grupo do Auto Scaling especificado.

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

Este comando não produz saída.

  • Para ver detalhes da API, consulte AttachInstances na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar attach-load-balancer-target-groups.

AWS CLI

Como anexar um grupo de destino a um grupo do Auto Scaling

Este exemplo anexa o grupo de destino especificado ao grupo do Auto Scaling especificado.

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

Este comando não produz saída.

Para obter mais informações, consulte Elastic Load Balancing e o Auto Scaling do Amazon EC2 no Guia do usuário do Auto Scaling do Amazon EC2.

O código de exemplo a seguir mostra como usar attach-load-balancers.

AWS CLI

Como anexar um Classic Load Balancer ao grupo do Auto Scaling

Este exemplo anexa o Classic Load Balancer especificado ao grupo do Auto Scaling especificado.

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

Este comando não produz saída.

Para obter mais informações, consulte Elastic Load Balancing e o Auto Scaling do Amazon EC2 no Guia do usuário do Auto Scaling do Amazon EC2.

  • Para receber detalhes da API, consulte AttachLoadBalancers na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar cancel-instance-refresh.

AWS CLI

Como cancelar uma atualização de instância

O exemplo cancel-instance-refresh a seguir cancela uma atualização de instância em andamento para o grupo do Auto Scaling especificado.

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

Saída:

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

Para obter mais informações, consulte Cancelar uma atualização de instância no Guia do usuário do Amazon EC2 Auto Scaling.

O código de exemplo a seguir mostra como usar complete-lifecycle-action.

AWS CLI

Como concluir a ação do ciclo de vida

Este exemplo notifica o Amazon EC2 Auto Scaling de que a ação do ciclo de vida especificada foi concluída para que ele possa concluir a execução ou o encerramento da instância.

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

Este comando não produz saída.

Para obter mais informações, consulte Ganchos do ciclo de vida do Amazon EC2 Auto Scaling no Manual do usuário do Amazon EC2 Auto Scaling.

O código de exemplo a seguir mostra como usar create-auto-scaling-group.

AWS CLI

Exemplo 1: como criar um grupo do Auto Scaling

O exemplo de create-auto-scaling-group a seguir cria um grupo do Auto Scaling em sub-redes de várias zonas de disponibilidade de uma região. As instâncias são executadas com a versão padrão do modelo de execução especificado. Observe que os padrões são usados na maioria das outras configurações, como nas políticas de encerramento e na configuração de verificação de integridade.

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"

Este comando não produz saída.

Para obter mais informações, consulte Grupos do Auto Scaling no Guia do usuário do Amazon EC2 Auto Scaling.

Exemplo 2: como anexar o Application Load Balancer, o Network Load Balancer ou o Gateway Load Balancer

Este exemplo especifica o ARN de um grupo de destino para um balanceador de carga compatível com o tráfego esperado. O tipo de verificação de integridade especifica o ELB. Desta forma, quando o Elastic Load Balancing reportar uma instância como não íntegra, o grupo do Auto Scaling a substitui. O comando também define um período de carência de 600 segundos para a verificação de integridade. O período de carência ajuda a evitar o encerramento prematuro de instâncias recém-iniciadas.

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"

Este comando não produz saída.

Para obter mais informações, consulte Elastic Load Balancing e o Auto Scaling do Amazon EC2 no Guia do usuário do Auto Scaling do Amazon EC2.

Exemplo 3: como especificar um grupo de posicionamento e usar a versão mais recente do modelo de execução

Este exemplo executa instâncias em um grupo de posicionamento dentro de uma única zona de disponibilidade. Isso pode ser útil para grupos de baixa latência com workloads de HPC. Esse exemplo também especifica o tamanho mínimo e máximo e a capacidade desejada do grupo.

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"

Este comando não produz saída.

Para obter mais informações, consulte Grupos de posicionamento no Guia do usuário para instâncias do Linux do Amazon EC2.

Exemplo 4: como especificar um grupo do Auto Scaling de instância única e usar uma versão específica para iniciar o modelo

Este exemplo cria um grupo do Auto Scaling com capacidade mínima e máxima definida como 1 para impor que uma apenas instância seja executada. O comando também especifica a v1 de um modelo de execução no qual o ID de um ENI existente é especificado. Ao usar um modelo de execução que especifica um ENI existente para eth0, é necessário especificar uma zona de disponibilidade para o grupo do Auto Scaling que corresponda à interface de rede, mas sem especificar um ID de sub-rede na solicitação.

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

Este comando não produz saída.

Para obter mais informações, consulte Grupos do Auto Scaling no Guia do usuário do Amazon EC2 Auto Scaling.

Exemplo 5: como especificar uma política de encerramento diferente

Este exemplo cria um grupo do Auto Scaling usando uma configuração de execução e define a política de encerramento para encerrar as instâncias mais antigas primeiro. O comando também aplica uma tag ao grupo e suas instâncias, com uma chave Role e valor de 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"

Este comando não produz saída.

Para obter mais informações, consulte Trabalhar com políticas de término do Amazon EC2 Auto Scaling no Guia do usuário do Amazon EC2 Auto Scaling.

Exemplo 6: como especificar um gancho do ciclo de vida de lançamento

Este exemplo a seguir cria um grupo do Auto Scaling com um gancho do ciclo de vida que oferece suporte a uma ação personalizada na inicialização da instância.

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

Conteúdo do arquivo 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" }] }

Este comando não produz saída.

Para obter mais informações, consulte Ganchos do ciclo de vida do Amazon EC2 Auto Scaling no Manual do usuário do Amazon EC2 Auto Scaling.

Exemplo 7: como especificar um gancho do ciclo de vida de encerramento

Este exemplo a seguir cria um grupo do Auto Scaling com um gancho do ciclo de vida que oferece suporte a uma ação personalizada no encerramento da instância.

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

Conteúdo 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" }

Este comando não produz saída.

Para obter mais informações, consulte Ganchos do ciclo de vida do Amazon EC2 Auto Scaling no Manual do usuário do Amazon EC2 Auto Scaling.

Exemplo 8: como especificar uma política de encerramento personalizada

Este exemplo cria um grupo do Auto Scaling que especifica uma política de encerramento da função do Lambda personalizada que diz ao Amazon EC2 Auto Scaling quais instâncias podem ser encerradas com segurança em escala.

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"

Este comando não produz saída.

Para obter mais informações, consulte Criar uma política de término personalizada com o Lambda no Guia do usuário do Amazon EC2 Auto Scaling.

O código de exemplo a seguir mostra como usar create-launch-configuration.

AWS CLI

Exemplo 1: criar uma configuração de execução

Este exemplo cria uma configuração de inicialização simples.

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

Este comando não produz saída.

Para obter mais informações, consulte Criar uma configuração de execução no Guia do usuário do Amazon EC2 Auto Scaling.

Exemplo 2: criar uma configuração de inicialização com um grupo de segurança, um par de chaves e um script de bootstrapping

Este exemplo cria uma configuração de execução com um grupo de segurança, um par de chaves e um script de bootstrapping contido nos dados do usuário.

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

Este comando não produz saída.

Para obter mais informações, consulte Criar uma configuração de execução no Guia do usuário do Amazon EC2 Auto Scaling.

Exemplo 3: criar uma configuração de inicialização com um perfil do IAM

Este exemplo cria uma configuração de execução com o nome do perfil de instância de um perfil do 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

Este comando não produz saída.

Para obter mais informações, consulte Função do IAM para aplicativos que são executados em instâncias do Amazon EC2 no Guia do usuário do Amazon EC2 Auto Scaling.

Exemplo 4: habilitar o monitoramento detalhado em uma configuração de execução

Este exemplo cria uma configuração de execução com o monitoramento detalhado do EC2 habilitado, que envia métricas do EC2 para o CloudWatch em períodos de 1 minuto.

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

Este comando não produz saída.

Para obter mais informações, consulte Configurando o monitoramento de instâncias do Auto Scaling na Guia do usuário do Amazon EC2 Auto Scaling.

Exemplo 5: criar uma configuração de execução para instâncias spot

Este exemplo cria uma configuração de execução que usa instâncias spot como a única opção de compra.

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

Este comando não produz saída.

Para obter mais informações, consulte Solicitar instâncias spot no Guia do usuário do Amazon EC2 Auto Scaling.

Exemplo 6: criar uma configuração de execução usando uma instância do EC2

Este exemplo cria uma configuração de execução com base nos atributos de uma instância existente. Ele substitui a locação de localização e determina se um endereço IP público é definido, incluindo as opções --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

Este comando não produz saída.

Para obter mais informações, consulte Criação de uma configuração de execução usando uma instância do EC2 no Guia do usuário do Amazon EC2 Auto Scaling.

Exemplo 7: criar uma configuração de execução com um mapeamento de dispositivos de blocos para um volume do Amazon EBS

Este exemplo cria uma configuração de execução com um mapeamento de dispositivos de blocos para um volume gp3 do Amazon EBS com o nome do dispositivo /dev/sdh e um tamanho 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"}}]'

Este comando não produz saída.

Para obter mais informações, consulte EBS na Referência da API do Amazon EC2 Auto Scaling.

Para obter mais informações sobre como citar parâmetros formatados em JSON, consulte Usar aspas com strings na AWS CLI no Guia do usuário da AWS Command Line Interface.

Exemplo 8: criar uma configuração de execução com um mapeamento de dispositivos de blocos para um volume de armazenamento de instância

Este exemplo cria uma configuração de execução com ephemeral1 como volume de armazenamento de instância com o nome do 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"}]'

Este comando não produz saída.

Para obter mais informações, consulte BlockDeviceMapping na Referência de API do Amazon EC2 Auto Scaling.

Para obter mais informações sobre como citar parâmetros formatados em JSON, consulte Usar aspas com strings na AWS CLI no Guia do usuário da AWS Command Line Interface.

Exemplo 9: criar uma configuração de execução e impedir que um dispositivo de blocos se conecte no momento da execução

Este exemplo cria uma configuração de execução que suprime um dispositivo de blocos especificado pelo mapeamento de dispositivos de blocos da AMI (por exemplo, /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":""}]'

Este comando não produz saída.

Para obter mais informações, consulte BlockDeviceMapping na Referência de API do Amazon EC2 Auto Scaling.

Para obter mais informações sobre como citar parâmetros formatados em JSON, consulte Usar aspas com strings na AWS CLI no Guia do usuário da AWS Command Line Interface.

O código de exemplo a seguir mostra como usar create-or-update-tags.

AWS CLI

Para criar ou atualizar tags de um grupo do Auto Scaling

Este exemplo adiciona duas tags ao grupo do Auto Scaling especificado.

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

Este comando não produz saída.

Para obter mais informações, consulte Marcar instâncias e grupos de Auto Scaling no Guia do usuário do Auto Scaling do Amazon EC2.

  • Para ver detalhes da API, consulte CreateOrUpdateTags na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar delete-auto-scaling-group.

AWS CLI

Exemplo 1: como excluir o grupo do Auto Scaling especificado

Este exemplo exclui o grupo do Auto Scaling especificado.

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

Este comando não produz saída.

Para obter mais informações, consulte Excluir infraestrutura do Auto Scaling no Guia do usuário do Amazon EC2 Auto Scaling.

Exemplo 2: como forçar a exclusão do grupo do Auto Scaling especificado

Use a opção --force-delete para excluir o grupo do Auto Scaling sem precisar esperar que as instâncias do grupo sejam encerradas.

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

Este comando não produz saída.

Para obter mais informações, consulte Excluir infraestrutura do Auto Scaling no Guia do usuário do Amazon EC2 Auto Scaling.

O código de exemplo a seguir mostra como usar delete-launch-configuration.

AWS CLI

Para excluir sua configuração de execução

Este exemplo exclui a configuração de execução especificada.

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

Este comando não produz saída.

Para obter mais informações, consulte Excluir infraestrutura do Auto Scaling no Guia do usuário do Amazon EC2 Auto Scaling.

O código de exemplo a seguir mostra como usar delete-lifecycle-hook.

AWS CLI

Para excluir um gancho do ciclo de vida

Este exemplo exclui o gancho do ciclo de vida especificado.

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

Este comando não produz saída.

  • Para ver detalhes da API, consulte DeleteLifecycleHook na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar delete-notification-configuration.

AWS CLI

Para excluir uma notificação de ajuste de escala automático

Este exemplo exclui a notificação especificada do grupo do Auto Scaling especificado.

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

Este comando não produz saída.

Para obter mais informações, consulte Excluir a configuração de notificação no Guia do usuário do Amazon EC2 Auto Scaling.

O código de exemplo a seguir mostra como usar delete-policy.

AWS CLI

Para excluir uma política de escalabilidade

Este exemplo exclui a política de escalabilidade especificada.

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

Este comando não produz saída.

  • Para obter detalhes da API, consulte DeletePolicy na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar delete-scheduled-action.

AWS CLI

Para excluir uma ação programada de um grupo do Auto Scaling

Este exemplo exclui a ação programada especificada do grupo do Auto Scaling especificado.

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

Este comando não produz saída.

O código de exemplo a seguir mostra como usar delete-tags.

AWS CLI

Para excluir uma tag de um grupo do Auto Scaling

Este exemplo exclui a tag especificada do grupo do Auto Scaling especificado.

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

Este comando não produz saída.

Para obter mais informações, consulte Marcar instâncias e grupos de Auto Scaling no Guia do usuário do Auto Scaling do Amazon EC2.

  • Para ver detalhes da API, consulte DeleteTags na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar delete-warm-pool.

AWS CLI

Exemplo 1: excluir um grupo de alta atividade

O exemplo a seguir exclui o grupo de alta atividade para um grupo do Auto Scaling.

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

Este comando não produz saída.

Para obter mais informações, consulte Grupos de alta atividade para o Amazon EC2 Auto Scaling no Manual do usuário do Amazon EC2 Auto Scaling.

Exemplo 2: forçar a exclusão de um grupo de alta atividade

Para excluir o grupo de alta atividade sem esperar que suas instâncias se encerrem, use a opção --force-delete.

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

Este comando não produz saída.

Para obter mais informações, consulte Grupos de alta atividade para o Amazon EC2 Auto Scaling no Manual do usuário do Amazon EC2 Auto Scaling.

  • Para ver detalhes da API, consulte DeleteWarmPool na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar describe-account-limits.

AWS CLI

Para descrever os limites de sua conta do Amazon EC2 Auto Scaling

Este exemplo descreve os limites do Amazon EC2 Auto Scaling para sua conta da AWS.

aws autoscaling describe-account-limits

Saída:

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

Para obter mais informações, consulte Service quotas do Amazon EC2 Auto Scaling no Guia do usuário do Amazon EC2 Auto Scaling.

O código de exemplo a seguir mostra como usar describe-adjustment-types.

AWS CLI

Para descrever os tipos de ajuste de escala disponíveis

Este exemplo descreve os tipos de ajuste disponíveis.

aws autoscaling describe-adjustment-types

Saída:

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

Para obter mais informações, consulte Tipos de ajuste da escalabilidade no Guia do usuário do Amazon EC2 Auto Scaling.

O código de exemplo a seguir mostra como usar describe-auto-scaling-groups.

AWS CLI

Exemplo 1: como descrever o grupo do Auto Scaling especificado

Este exemplo descreve o grupo do Auto Scaling especificado.

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

Saída:

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

Exemplo 2: como descrever os primeiros 100 grupos do Auto Scaling especificados

Este exemplo descreve os grupos do Auto Scaling especificados. Ele permite especificar até cem nomes de grupos.

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

Consulte um exemplo de saída no exemplo 1.

Exemplo 3: como descrever um grupo do Auto Scaling na região especificada

Este exemplo descreve até 75 grupos do Auto Scaling na região especificada.

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

Consulte um exemplo de saída no exemplo 1.

Exemplo 4: como descrever o número especificado do grupo do Auto Scaling

Use a opção --max-items para retornar um número específico de grupos do Auto Scaling.

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

Consulte um exemplo de saída no exemplo 1.

Se a saída incluir um campo NextToken, há mais grupos. Para obter os grupos adicionais, use o valor desse campo com a opção --starting-token em uma chamada subsequente da seguinte maneira.

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

Consulte um exemplo de saída no exemplo 1.

Exemplo 5: descrever grupos do Auto Scaling que usam configurações de execução

Este exemplo usa a opção --query para descrever os grupos do Auto Scaling que usam configurações de execução.

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

Saída:

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

Para obter mais informações, consulte Filtrar a saída da AWS CLI no Guia do usuário da AWS Command Line Interface.

O código de exemplo a seguir mostra como usar describe-auto-scaling-instances.

AWS CLI

Exemplo 1: como descrever uma ou mais instâncias

Este exemplo descreve a instância especificada.

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

Saída:

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

Exemplo 2: como descrever uma ou mais instâncias

Este exemplo usa a opção --max-items para especificar quantas instâncias devem ser retornadas pela chamada.

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

Se a saída incluir um campo NextToken, há mais instâncias. Para obter as instâncias adicionais, use o valor desse campo com a opção --starting-token em uma chamada subsequente da seguinte maneira.

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

Consulte um exemplo de saída no exemplo 1.

Exemplo 3: descrever instâncias que usam configurações de execução

Este exemplo usa a opção --query para descrever instâncias que usam configurações de execução.

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

Saída:

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

Para obter mais informações, consulte Filtrar a saída da AWS CLI no Guia do usuário da AWS Command Line Interface.

O código de exemplo a seguir mostra como usar describe-auto-scaling-notification-types.

AWS CLI

Para descrever os tipos de notificação disponíveis

Este exemplo descreve os tipos de notificação disponíveis.

aws autoscaling describe-auto-scaling-notification-types

Saída:

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

Para obter mais informações, consulte Obter notificações do Amazon SNS quando o grupo de Auto Scaling é dimensionado no Guia do usuário do Amazon EC2 Auto Scaling.

O código de exemplo a seguir mostra como usar describe-instance-refreshes.

AWS CLI

Para descrever atualizações de instâncias

O exemplo describe-instance-refreshes a seguir retorna uma descrição de todas as solicitações de atualização de instância para o grupo do Auto Scaling especificado, incluindo a mensagem de status e (se disponível) o motivo do status.

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

Saída:

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

Para obter mais informações, consulte Verificar o status de uma atualização de instância no Guia do usuário do Amazon EC2 Auto Scaling.

O código de exemplo a seguir mostra como usar describe-launch-configurations.

AWS CLI

Exemplo 1: descrever a configuração de execução especificada

Este exemplo descreve a configuração de execução especificada.

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

Saída:

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

Exemplo 2: descrever um número especificado de configurações de execução

Para retornar um número específico de configurações de execução, use a opção --max-items.

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

Se a saída incluir um campo NextToken, há mais configurações de execução. Para obter as configurações de execução adicionais, use o valor desse campo com a opção --starting-token em uma chamada subsequente da seguinte maneira.

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

O código de exemplo a seguir mostra como usar describe-lifecycle-hook-types.

AWS CLI

Para descrever os tipos de ganchos do ciclo de vida disponíveis

Este exemplo descreve os tipos de ganchos do ciclo de vida disponíveis.

aws autoscaling describe-lifecycle-hook-types

Saída:

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

O código de exemplo a seguir mostra como usar describe-lifecycle-hooks.

AWS CLI

Para descrever seus ganchos do ciclo de vida

Este exemplo descreve os ganchos do ciclo de vida do grupo do Auto Scaling especificado.

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

Saída:

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

O código de exemplo a seguir mostra como usar describe-load-balancer-target-groups.

AWS CLI

Para descrever os grupos-alvo do balanceador de carga para um grupo do Auto Scaling

Este exemplo descreve os grupos de destino do balanceador de carga anexados ao grupo do Auto Scaling especificado.

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

Saída:

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

O código de exemplo a seguir mostra como usar describe-load-balancers.

AWS CLI

Para descrever os Classic Load Balancers de um grupo do Auto Scaling

Esse exemplo descreve os load balancers clássicos do grupo de Auto Scaling especificado.

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

Saída:

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

O código de exemplo a seguir mostra como usar describe-metric-collection-types.

AWS CLI

Como descrever os tipos de coleta de métricas disponíveis

Este exemplo descreve os tipos de coleta de métricas disponíveis.

aws autoscaling describe-metric-collection-types

Saída:

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

Para obter mais informações, consulte Métricas de grupo do Auto Scaling no Guia do usuário do Amazon EC2 Auto Scaling.

O código de exemplo a seguir mostra como usar describe-notification-configurations.

AWS CLI

Exemplo 1: Como descrever as configurações de notificação de um grupo especificado.

Este exemplo descreve as configurações de notificação do grupo do Auto Scaling especificado.

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

Saída:

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

Para obter mais informações, consulte Obter notificações do Amazon SNS quando o grupo de Auto Scaling é dimensionado no Guia do usuário do Amazon EC2 Auto Scaling.

Exemplo 1: Como descrever um número especificado de configurações de notificação.

Para retornar um número especificado de configurações de notificação, use o parâmetro max-items.

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

Saída:

{ "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 a saída incluir um campo NextToken, há mais configurações de notificação. Para obter as notificações adicionais, use o valor desse campo com o parâmetro starting-token em uma chamada subsequente da seguinte maneira.

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

Para obter mais informações, consulte Obter notificações do Amazon SNS quando o grupo de Auto Scaling é dimensionado no Guia do usuário do Amazon EC2 Auto Scaling.

O código de exemplo a seguir mostra como usar describe-policies.

AWS CLI

Exemplo 1: como descrever as escalas do Auto Scaling especificado

Este exemplo descreve as politicas de escalabilidade do grupo do Auto Scaling especificado.

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

Saída:

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

Para obter mais informações, consulte Escalabilidade Dinâmica no Manual do usuário do Amazon EC2 Auto Scaling.

Exemplo 2: Como descrever as políticas de escalabilidade de um nome especificado.

Para retornar políticas de escalabilidade específicas, use a opção --policy-names.

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

Consulte um exemplo de saída no exemplo 1.

Para obter mais informações, consulte Escalabilidade dinâmica no Manual do usuário do Amazon EC2 Auto Scaling.

Exemplo 3: Como descrever várias políticas de escalabilidade.

Use a opção --max-items para retornar um número específico de politicas.

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

Consulte um exemplo de saída no exemplo 1.

Se a saída incluir um campo NextToken, use o valor desse campo com a opção --starting-token em uma chamada subsequente para obter as políticas adicionais.

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

Para obter mais informações, consulte Escalabilidade dinâmica no Manual do usuário do Amazon EC2 Auto Scaling.

  • Para ver detalhes da API, consulte DescribePoliciesna Referência de comandosAWS CLI.

O código de exemplo a seguir mostra como usar describe-scaling-activities.

AWS CLI

Exemplo 1: como descrever as ações de escalabilidade do grupo especificado

Este exemplo descreve as ações de escalabilidade do grupo do Auto Scaling especificado.

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

Saída:

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

Para mais informações, consulte Verificar uma ação de escalabilidade para um grupo do Auto Scaling no Guia do usuário do Amazon EC2 Auto Scaling.

Exemplo 2: como descrever as ações de escalabilidade de um grupo excluído

Adicione a opção --include-deleted-groups para descrever as ações de escalabilidade depois que o grupo do Auto Scaling for excluído.

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

Saída:

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

Para obter mais informações, consulte Solucionar problemas do Amazon EC2 Auto Scaling no Guia do usuário do Amazon EC2 Auto Scaling.

Exemplo 3: como descrever um número especificado de ações de escalabilidade

Use a opção --max-items para retornar um número específico de ações.

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

Saída:

{ "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 a saída incluir um campo NextToken, há mais ações. Para obter as ações adicionais, use o valor desse campo com a opção --starting-token em uma chamada subsequente da seguinte maneira.

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

Para mais informações, consulte Verificar uma ação de escalabilidade para um grupo do Auto Scaling no Guia do usuário do Amazon EC2 Auto Scaling.

O código de exemplo a seguir mostra como usar describe-scaling-process-types.

AWS CLI

Como descrever os tipos de processo disponíveis

Este exemplo descreve os tipos de processo disponíveis.

aws autoscaling describe-scaling-process-types

Saída:

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

Para obter mais informações, consulte Suspensão e retomada dos processos de escalabilidade no Guia do usuário do Amazon EC2 Auto Scaling.

O código de exemplo a seguir mostra como usar describe-scheduled-actions.

AWS CLI

Exemplo 1: Como descrever todas as ações programadas.

Este exemplo descreve todas as ações programadas.

aws autoscaling describe-scheduled-actions

Saída:

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

Para obter mais informações, consulte Escalabilidade programada no Manual do usuário do Amazon EC2 Auto Scaling.

Exemplo 2: Como descrever as ações agendadas do grupo especificado

Para descrever as ações programadas para um grupo do Auto Scaling específico, use a opção --auto-scaling-group-name.

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

Saída:

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

Para obter mais informações, consulte Escalabilidade programada no Manual do usuário do Amazon EC2 Auto Scaling.

Exemplo 3: Como descrever a ação programada especificada.

Para descrever uma ação programada específica, use a opção --scheduled-action-names.

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

Saída:

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

Para obter mais informações, consulte Escalabilidade programada no Manual do usuário do Amazon EC2 Auto Scaling.

Exemplo 4: Como descrever ações programadas com um horário de início especificado.

Para descrever as ações programadas que começam em um horário específico, use a opção --start-time.

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

Saída:

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

Para obter mais informações, consulte Escalabilidade programada no Manual do usuário do Amazon EC2 Auto Scaling.

Exemplo 5: Como descrever ações programadas que terminam em um horário especificado.

Para descrever as ações agendadas que terminam em um horário específico, use a opção --end-time .

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

Saída:

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

Para obter mais informações, consulte Escalabilidade programada no Manual do usuário do Amazon EC2 Auto Scaling.

Exemplo 6: como descrever um número especificado de ações agendadas

Use a opção --max-items para retornar um número específico de ações agendadas.

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

Saída:

{ "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 a saída incluir um campo NextToken, há mais ações agendadas. Para obter as ações agendadas, use o valor desse campo com a opção --starting-token em uma chamada subsequente da seguinte maneira.

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

Para obter mais informações, consulte Escalabilidade programada no Manual do usuário do Amazon EC2 Auto Scaling.

O código de exemplo a seguir mostra como usar describe-tags.

AWS CLI

Como descrever todas as tags

Este exemplo descreve todas as tags.

aws autoscaling describe-tags

Saída:

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

Para obter mais informações, consulte Marcar instâncias e grupos de Auto Scaling no Guia do usuário do Auto Scaling do Amazon EC2.

Exemplo 2: Como descrever tags para um grupo especificado.

Use a opção para descrever as tags de um grupo do Auto Scaling específico use a opção --filters.

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

Para obter mais informações, consulte Marcar instâncias e grupos de Auto Scaling no Guia do usuário do Auto Scaling do Amazon EC2.

Exemplo 3: Para descrever o número específico de tags

Use a opção --max-items para retornar um número específico de tags.

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

Se a saída incluir um campo NextToken, há mais tags. Para obter os tags adicionais, use o valor desse campo com a opção --starting-token em uma chamada subsequente da seguinte maneira.

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

Para obter mais informações, consulte Marcar instâncias e grupos de Auto Scaling no Guia do usuário do Auto Scaling do Amazon EC2.

  • Para ver detalhes da API, consulte DescribeTags na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar describe-termination-policy-types.

AWS CLI

Como descrever os tipos de políticas de encerramento disponíveis

Este exemplo descreve os tipos de políticas de encerramento disponíveis.

aws autoscaling describe-termination-policy-types

Saída:

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

Para obter mais informações, consulte Controlar quais instâncias do Auto Scaling são encerradas durante uma redução no Guia do usuário do Auto Scaling do Amazon EC2.

O código de exemplo a seguir mostra como usar describe-warm-pool.

AWS CLI

Para descrever um grupo de alta atividade

Este exemplo descreve o grupo de alta atividade do grupo do Auto Scaling especificado.

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

Saída:

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

Para obter mais informações, consulte Grupos de alta atividade para o Amazon EC2 Auto Scaling no Manual do usuário do Amazon EC2 Auto Scaling.

  • Para ver detalhes da API, consulte DescribeWarmPool na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar detach-instances.

AWS CLI

Para desvincular uma instância de um grupo do Auto Scaling existente

Este exemplo desvincula a instância especificada do grupo do Auto Scaling especificado.

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

Saída:

{ "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\"}" } ] }
  • Para ver detalhes da API, consulte DetachInstances na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar detach-load-balancer-target-groups.

AWS CLI

Como desvincular um grupo de destino do balanceador de carga de um grupo do Auto Scaling

Este exemplo desvincula o grupo de destino do balanceador de carga especificado ao grupo do Auto Scaling especificado.

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

Este comando não produz saída

Para obter mais informações, consulte Anexar um balanceador de carga ao seu grupo Auto Scaling no Guia do Usuário do Amazon EC2 Auto Scaling.

O código de exemplo a seguir mostra como usar detach-load-balancers.

AWS CLI

Como desvincula um Classic Load Balancer de um grupo do Auto Scaling

Este exemplo desvincula o Classic Load Balancer especificado do grupo do Auto Scaling especificado.

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

Este comando não produz saída.

Para obter mais informações, consulte Anexar um balanceador de carga ao seu grupo Auto Scaling no Guia do Usuário do Amazon EC2 Auto Scaling.

  • Para obter detalhes da API, consulte DetachLoadBalancers na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar disable-metrics-collection.

AWS CLI

Como desabilitar a coleta de métricas de um grupo do Auto Scaling

Este exemplo desativa a coleta da métrica GroupDesiredCapacity do grupo do Auto Scaling especificado.

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

Este comando não produz saída.

Para obter mais informações, consulte Monitorar métricas do CloudWatch para grupos de Auto Scaling e instâncias no Guia do usuário do Amazon EC2 Auto Scaling.

O código de exemplo a seguir mostra como usar enable-metrics-collection.

AWS CLI

Exemplo 1: como habilitar a coleta de métricas do grupo do Auto Scaling

Este exemplo habilita a coleta de dados do grupo do Auto Scaling especificado.

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

Este comando não produz saída.

Para obter mais informações, consulte Monitorar métricas do CloudWatch para grupos de Auto Scaling e instâncias no Guia do usuário do Amazon EC2 Auto Scaling.

Exemplo 2: como coletar dados da métrica especificada de um grupo de Auto Scaling

Use a opção --metrics para coletar dados de uma métrica específica.

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

Este comando não produz saída.

Para obter mais informações, consulte Monitorar métricas do CloudWatch para grupos de Auto Scaling e instâncias no Guia do usuário do Amazon EC2 Auto Scaling.

O código de exemplo a seguir mostra como usar enter-standby.

AWS CLI

Como colocar instâncias no modo de espera

Este exemplo coloca a instância especificada no modo de espera. Isso é útil para atualizar ou solucionar problemas de uma instância que está atualmente em serviço.

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

Saída:

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

Para obter mais informações, consulte Amazon EC2 Auto Scaling instância de ciclo de vida no Manual do usuário do Amazon EC2 Auto Scaling.

  • Para obter detalhes da API, consulte EnterStandby na AWS CLI Referência de comandos.

O código de exemplo a seguir mostra como usar execute-policy.

AWS CLI

Como executar uma política de escalabilidade

Este exemplo executa a política de escalabilidade chamada my-step-scale-out-policy para o grupo do Auto Scaling especificado.

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

Este comando não produz saída.

Para mais informações, consulte as políticas de escalonamento por passos e escalonamento simples no Guia do Usuário de Amazon EC2 Auto Scaling.

  • Para obter detalhes da API, consulte ExecutePolicy na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar exit-standby.

AWS CLI

Como tirar instâncias do modo de espera

Move the specified instances out of standby mode.

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

Saída:

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

Para obter mais informações, consulte Desvincular temporariamente instâncias do grupo do Auto Scaling no Manual do usuário do Amazon EC2 Auto Scaling.

  • Para obter detalhes da API, consulte ExitStandby na AWS CLIReferência de comandos.

O código de exemplo a seguir mostra como usar put-lifecycle-hook.

AWS CLI

Exemplo 1: Como criar um hook do ciclo de vida

Este exemplo cria um hook do ciclo de vida que será invocado em qualquer instância recém-iniciada, com um tempo limite de 4800 segundos. Isso é útil para manter as instâncias em um estado de espera até que os scripts de dados do usuário terminem ou para invocar uma função do AWS Lambda usando o 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

Este comando não produz saída. Se já existir um hook do ciclo de vida com o mesmo nome, ele será substituído pelo novo hook do ciclo de vida.

Para obter mais informações, consulte Ganchos do ciclo de vida do Amazon EC2 Auto Scaling no Manual do usuário do Amazon EC2 Auto Scaling.

Exemplo 2: Como enviar uma mensagem de e-mail do Amazon SNS para notificá-lo sobre as transições de estado da instância.

Este exemplo cria um hook do ciclo de vida com o tópico do Amazon SNS e o perfil do IAM a serem usados para receber notificações na execução da instância.

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

Este comando não produz saída.

Para obter mais informações, consulte Ganchos do ciclo de vida do Amazon EC2 Auto Scaling no Manual do usuário do Amazon EC2 Auto Scaling.

Exemplo 3: Como publicar uma mensagem em uma fila do Amazon SQS.

Este exemplo cria um hook do ciclo de vida que publica uma mensagem com metadados na fila especificada do Amazon SQS.

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"

Este comando não produz saída.

Para obter mais informações, consulte Ganchos do ciclo de vida do Amazon EC2 Auto Scaling no Manual do usuário do Amazon EC2 Auto Scaling.

  • Para obter detalhes da API, consulte PutLifecycleHook na AWS CLIReferência de comandos.

O código de exemplo a seguir mostra como usar put-notification-configuration.

AWS CLI

Para adicionar uma notificação

Este exemplo adiciona o grupo de destino especificado ao grupo do Auto Scaling especificado.

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

Este comando não produz saída.

Para obter mais informações, consulte Obter notificações do Amazon SNS quando o grupo de Auto Scaling é dimensionado no Guia do usuário do Amazon EC2 Auto Scaling.

O código de exemplo a seguir mostra como usar put-scaling-policy.

AWS CLI

Para adicionar uma política de escalabilidade com monitoramento do objetivo a um grupo do Auto Scaling

O exemplo put-scaling-policy a seguir aplica uma política de escalabilidade de monitoramento de destino ao grupo do Auto Scaling especificado. A saída contém os ARNs e os nomes dos dois alarmes do CloudWatch criados em seu nome. Se já existir uma política de escalonamento com o mesmo nome, ela será substituída pela nova política de escalonamento.

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

Conteúdo de config.json:

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

Saída:

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

Para obter mais exemplos, consulte Exemplos de políticas de escalabilidade para a AWS Command Line Interface (AWS CLI) no Guia do usuário do Amazon EC2 Auto Scaling.

  • Para ver detalhes da API, consulte PutScalingPolicy na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar put-scheduled-update-group-action.

AWS CLI

Exemplo 1: adicionar uma ação programada a um grupo de Auto Scaling

Este exemplo adiciona a ação agendada especificada ao grupo do Auto Scaling especificado.

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

Este comando não produz saída. Se uma ação programada com o mesmo nome já existir, ela será substituída pela nova ação programada.

Para obter mais exemplos, consulte Escalabilidade programada no Guia do usuário do Amazon EC2 Auto Scaling.

Exemplo 2: especificar uma programação recorrente

Este exemplo cria uma ação programada para escalar em uma programação recorrente que está programada para ser executada às 00h30 horas nos primeiros dias de janeiro, junho e dezembro de cada ano.

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

Este comando não produz saída. Se uma ação programada com o mesmo nome já existir, ela será substituída pela nova ação programada.

Para obter mais exemplos, consulte Escalabilidade programada no Guia do usuário do Amazon EC2 Auto Scaling.

O código de exemplo a seguir mostra como usar put-warm-pool.

AWS CLI

Para criar um grupo de alta atividade

O exemplo a seguir cria um grupo de alta atividade para um grupo do Auto Scaling.

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

Este comando não produz saída. Se já existir um grupo de alta atividade, ele será atualizado.

Para obter mais informações, consulte Grupos de alta atividade para o Amazon EC2 Auto Scaling no Manual do usuário do Amazon EC2 Auto Scaling.

  • Para ver detalhes da API, consulte PutWarmPool na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar record-lifecycle-action-heartbeat.

AWS CLI

Para registrar a pulsação de uma ação do ciclo de vida

Este exemplo registra uma pulsação da ação do ciclo de vida para manter a instância em um estado pendente.

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

Este comando não produz saída.

Para obter mais informações, consulte Ganchos do ciclo de vida do Amazon EC2 Auto Scaling no Manual do usuário do Amazon EC2 Auto Scaling.

O código de exemplo a seguir mostra como usar resume-processes.

AWS CLI

Como retomar processos suspensos

Este exemplo retoma o processo de escalabilidade suspenso especificado para o grupo do Auto Scaling especificado.

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

Este comando não produz saída.

Para obter mais informações, consulte Suspensão e retomada dos processos de escalabilidade no Guia do usuário do Amazon EC2 Auto Scaling.

  • Para ver detalhes da API, consulte ResumeProcesses na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar rollback-instance-refresh.

AWS CLI

Como reverter uma atualização de instância

O exemplo rollback-instance-refresh a seguir reverte uma atualização de instância em andamento para o grupo do Auto Scaling especificado.

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

Saída:

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

Para obter mais informações, consulte Desfazer alterações com uma reversão no Guia do usuário do Amazon EC2 Auto Scaling.

O código de exemplo a seguir mostra como usar set-desired-capacity.

AWS CLI

Como definir a capacidade desejada para um grupo do Auto Scaling

Este exemplo define a capacidade desejada para o grupo do Auto Scaling especificado.

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

Esse comando retornará ao prompt, se houver êxito.

  • Para obter detalhes da API, consulte SetDesiredCapacity na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar set-instance-health.

AWS CLI

Como definir o status de integridade de uma instância

Define o status da integridade da instância especificada para Unhealthy.

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

Este comando não produz saída.

  • Para ver detalhes da API, consulte SetInstanceHealth na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar set-instance-protection.

AWS CLI

Exemplo 1: habilitar a configuração de proteção de instância para uma instância

Este exemplo habilita a proteção de instância na a instância especificada.

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

Este comando não produz saída.

Exemplo 2: desativar a configuração de proteção de instância para uma instância

Este exemplo desabilita a proteção de instância na instância especificada.

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

Este comando não produz saída.

O código de exemplo a seguir mostra como usar start-instance-refresh.

AWS CLI

Exemplo 1: iniciar uma atualização de instância usando parâmetros de linha de comando

O exemplo start-instance-refresh a seguir inicia uma atualização da instância usando argumentos de linha de comando. O parâmetro opcional preferences especifica um InstanceWarmup de 60 segundos e um MinHealthyPercentage de 50%.

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

Saída:

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

Para obter mais informações, consulte Iniciar uma atualização de instância no Guia do usuário do Amazon EC2 Auto Scaling.

Exemplo 2: iniciar uma atualização de instância usando um arquivo JSON

O exemplo start-instance-refresh a seguir inicia uma atualização de instância usando um arquivo JSON. Você pode especificar o grupo do Auto Scaling e definir as configurações e as preferências desejadas em um arquivo JSON, conforme mostrado no exemplo a seguir.

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

Conteúdo de config.json:

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

Saída:

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

Para obter mais informações, consulte Iniciar uma atualização de instância no Guia do usuário do Amazon EC2 Auto Scaling.

  • Para obter detalhes sobre a API, consulte StartInstanceRefresh na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar suspend-processes.

AWS CLI

Como suspender os processos de ajuste de escala automático

Este exemplo suspende o processo de escalabilidade especificado para o grupo do Auto Scaling especificado.

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

Este comando não produz saída.

Para obter mais informações, consulte Suspensão e retomada dos processos de escalabilidade no Guia do usuário do Amazon EC2 Auto Scaling.

  • Para ver detalhes da API, consulte SuspendProcesses na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar terminate-instance-in-auto-scaling-group.

AWS CLI

Como encerrar uma instância em um grupo do Auto Scaling

Este exemplo encerra a instância especificada do grupo do Auto Scaling especificado sem atualizar o tamanho do grupo. O Amazon EC2 Auto Scaling executa uma instância de substituição após o encerramento da instância especificada.

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

Saída:

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

O código de exemplo a seguir mostra como usar update-auto-scaling-group.

AWS CLI

Exemplo 1: como atualizar os limites de tamanho de um grupo do Auto Scaling

Este exemplo atualiza o grupo do Auto Scaling especificado com um tamanho mínimo de 2 e máximo de 10.

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

Este comando não produz saída.

Para obter mais informações, consulte Definir limites de escalabilidade para seu grupo do Auto Scaling no Guia do usuário do Amazon EC2 Auto Scaling.

Exemplo 2: como adicionar verificações de integridade do Elastic Load Balancing e especificar quais zonas de disponibilidade e sub-redes usar

Este exemplo atualiza o grupo do Auto Scaling especificado para adicionar verificações de integridade do Elastic Load Balancing. Esse comando também atualiza o valor de --vpc-zone-identifier com uma lista de IDs de sub-rede em várias zonas de disponibilidade.

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"

Este comando não produz saída.

Para obter mais informações, consulte Elastic Load Balancing e o Auto Scaling do Amazon EC2 no Guia do usuário do Auto Scaling do Amazon EC2.

Exemplo 3: como atualizar o grupo de posicionamento e a política de encerramento

Este exemplo atualiza o grupo de posicionamento e a política de encerramento que devem ser usados.

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

Este comando não produz saída.

Para obter mais informações, consulte Grupos do Auto Scaling no Guia do usuário do Amazon EC2 Auto Scaling.

Exemplo 4: como usar a versão mais recente do modelo de execução

Este exemplo atualiza o grupo do Auto Scaling especificado para que use a versão mais recente do modelo de execução especificado.

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

Este comando não produz saída.

Para obter mais informações, consulte Modelos de execução no Manual do usuário do Amazon EC2 Auto Scaling.

Exemplo 5: como usar uma versão específica do modelo de execução

Este exemplo atualiza o grupo do Auto Scaling especificado para que use uma versão específica do modelo de execução em vez da versão mais recente ou padrão.

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

Este comando não produz saída.

Para obter mais informações, consulte Modelos de execução no Manual do usuário do Amazon EC2 Auto Scaling.

Exemplo 6: como definir uma política de instâncias mistas e habilitar o rebalanceamento de capacidade

Este exemplo atualiza o grupo do Auto Scaling especificado para que use uma política de instâncias mistas e permita o rebalanceamento de capacidade. Essa estrutura permite especificar grupos com capacidades spot e sob demanda e usar modelos de execução diferentes para arquiteturas diferentes.

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

Conteúdo 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" } } }

Este comando não produz saída.

Para obter mais informações, consulte Grupos de Auto Scaling com vários tipos de instância e opções de compra no Manual do usuário do Amazon EC2 Auto Scaling.