Ejemplos de Auto Scaling usando AWS CLI - AWS Command Line Interface

Esta documentación es AWS CLI únicamente para la versión 1 de la versión. Para ver la documentación relacionada con la versión 2 de AWS CLI, consulte la Guía del usuario de la versión 2.

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Ejemplos de Auto Scaling usando AWS CLI

Los siguientes ejemplos de código muestran cómo realizar acciones e implementar escenarios comunes mediante el AWS Command Line Interface uso de Auto Scaling.

Las acciones son extractos de código de programas más grandes y deben ejecutarse en contexto. Mientras las acciones muestran cómo llamar a las funciones de servicio individuales, es posible ver las acciones en contexto en los escenarios relacionados.

Cada ejemplo incluye un enlace al código fuente completo, donde puede encontrar instrucciones sobre cómo configurar y ejecutar el código en su contexto.

Acciones

En el siguiente ejemplo de código se muestra cómo usarloattach-instances.

AWS CLI

Para adjuntar una instancia a un grupo de Auto Scaling

En este ejemplo, se adjunta la instancia especificada al grupo de Auto Scaling especificado.

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

Este comando no genera ninguna salida.

  • Para API obtener más información, consulte AttachInstancesla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloattach-load-balancer-target-groups.

AWS CLI

Asociación de un grupo de destino a un grupo de escalado automático

En este ejemplo, se asocia el grupo de destino especificado al grupo de escalado automático 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 no genera ninguna salida.

Para obtener más información, consulte Elastic Load Balancing y Amazon EC2 Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

El siguiente ejemplo de código muestra cómo usarloattach-load-balancers.

AWS CLI

Para adjuntar un Classic Load Balancer a un grupo de Auto Scaling

En este ejemplo, se adjunta el Classic Load Balancer especificado al grupo de Auto Scaling especificado.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Elastic Load Balancing y Amazon EC2 Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

  • Para API obtener más información, consulte AttachLoadBalancersla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlocancel-instance-refresh.

AWS CLI

Para cancelar la actualización de una instancia

El siguiente cancel-instance-refresh ejemplo cancela una actualización de instancias en curso para el grupo de Auto Scaling especificado.

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

Salida:

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

Para obtener más información, consulte Cancelar una actualización de una instancia en la Guía del usuario de Amazon EC2 Auto Scaling.

El siguiente ejemplo de código muestra cómo usarlocomplete-lifecycle-action.

AWS CLI

Para completar la acción del ciclo de vida

En este ejemplo, se notifica a Amazon EC2 Auto Scaling que la acción del ciclo de vida especificada se ha completado para que pueda finalizar el lanzamiento o la finalización de la instancia.

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 no genera ninguna salida.

Para obtener más información, consulte los enlaces del ciclo de vida de Amazon EC2 Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

El siguiente ejemplo de código muestra cómo usarlocreate-auto-scaling-group.

AWS CLI

Ejemplo 1: Creación de un grupo de escalado automático

En el siguiente ejemplo create-auto-scaling-group se crea un grupo de escalado automático en subredes de varias zonas de disponibilidad dentro de una región. Las instancias se lanzan con la versión predeterminada de la plantilla de lanzamiento especificada. Tenga en cuenta que se utilizan valores predeterminados para la mayoría de las demás configuraciones, como las políticas de terminación y la configuración de las comprobaciones de estado.

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 no genera ninguna salida.

Para obtener más información, consulte los grupos de Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 2: Asociación de un equilibrador de carga de aplicación, un equilibrador de carga de red o un equilibrador de carga de puerta de enlace

En este ejemplo se especifica el grupo objetivo ARN de un balanceador de cargas que soporte el tráfico esperado. El tipo de comprobación de estado especifica ELB para que, cuando Elastic Load Balancing informa de una instancia como en mal estado, el grupo de escalado automático reemplaza la instancia. El comando también define un período de gracia de 600 segundos para la comprobación de estado. El período de gracia ayuda a evitar la finalización prematura de las instancias recién lanzadas.

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 no genera ninguna salida.

Para obtener más información, consulte Elastic Load Balancing y Amazon EC2 Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 3: Especificación de un grupo con ubicación y utilizar la versión más reciente de la plantilla de lanzamiento

En este ejemplo, se lanzan instancias a un grupo con ubicación en una única zona de disponibilidad. Esto puede resultar útil para grupos de baja latencia con cargas de HPC trabajo. En este ejemplo, también se especifican el tamaño mínimo, el tamaño máximo y la capacidad deseada del 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 no genera ninguna salida.

Para obtener más información, consulte Grupos de ubicación en la Guía del EC2 usuario de Amazon para instancias de Linux.

Ejemplo 4: Especificación de un grupo de escalado automático de una sola instancia y utilizar una versión específica de la plantilla de lanzamiento

En este ejemplo, se crea un grupo de escalado automático con una capacidad mínima y máxima establecida en 1 para garantizar que se ejecute una instancia. El comando también especifica la versión 1 de una plantilla de lanzamiento en la que ENI se especifica el ID de una plantilla existente. Cuando utilice una plantilla de lanzamiento que especifique una existente ENI para eth0, debe especificar una zona de disponibilidad para el grupo de Auto Scaling que coincida con la interfaz de red, sin especificar también un ID de subred en la solicitud.

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 no genera ninguna salida.

Para obtener más información, consulte los grupos de Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 5: Especificación de una política de terminación diferente

En este ejemplo, se crea un grupo de escalado automático mediante una configuración de lanzamiento y se establece la política de terminación para terminar primero las instancias más antiguas. El comando también aplica una etiqueta al grupo y a sus instancias, con una clave de Role y un 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 no genera ninguna salida.

Para obtener más información, consulte Cómo trabajar con las políticas de rescisión de Amazon EC2 Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 6: Especificación de un enlace de ciclo de vida de lanzamiento

En este ejemplo, se crea un grupo de escalado automático con un enlace de ciclo de vida que admite una acción personalizada cuando se lanza una instancia.

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

Contenido del archivo 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 no genera ninguna salida.

Para obtener más información, consulte los enlaces del ciclo de vida de Amazon EC2 Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 7: Especificación de un enlace de ciclo de vida de terminación

En este ejemplo, se crea un grupo de escalado automático con un enlace de ciclo de vida que admite una acción personalizada en la terminación de una instancia.

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

Contenidos 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 no genera ninguna salida.

Para obtener más información, consulte los enlaces del ciclo de vida de Amazon EC2 Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 8: Especificación de una política de terminación personalizada

En este ejemplo, se crea un grupo de Auto Scaling que especifica una política de terminación de funciones de Lambda personalizada que indica a Amazon EC2 Auto Scaling qué instancias son seguras de terminar al escalarlas.

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 no genera ninguna salida.

Para obtener más información, consulte Creación de una política de rescisión personalizada con Lambda en la Guía del usuario de Amazon EC2 Auto Scaling.

El siguiente ejemplo de código muestra cómo usarlocreate-launch-configuration.

AWS CLI

Ejemplo 1: Para crear una configuración de lanzamiento

En este ejemplo se crea una configuración de lanzamiento sencilla.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Creación de una configuración de lanzamiento en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 2: Para crear una configuración de inicio con un grupo de seguridad, un key pair y un script de bootrapping

En este ejemplo, se crea una configuración de inicio con un grupo de seguridad, un key pair y un script de bootrapping incluidos en los datos del usuario.

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 no genera ninguna salida.

Para obtener más información, consulte Creación de una configuración de lanzamiento en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 3: Para crear una configuración de lanzamiento con un IAM rol

En este ejemplo, se crea una configuración de lanzamiento con el nombre del perfil de instancia de un IAM rol.

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 no genera ninguna salida.

Para obtener más información, consulte el IAMrol de las aplicaciones que se ejecutan en EC2 instancias de Amazon en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 4: Para crear una configuración de lanzamiento con la supervisión detallada habilitada

En este ejemplo, se crea una configuración de lanzamiento con la supervisión EC2 detallada habilitada, que envía EC2 las métricas CloudWatch en 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 no genera ninguna salida.

Para obtener más información, consulte Configuración de la supervisión de instancias de Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 5: Para crear una configuración de lanzamiento que lance instancias puntuales

En este ejemplo, se crea una configuración de lanzamiento que utiliza instancias puntuales como única opción 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 no genera ninguna salida.

Para obtener más información, consulte Solicitud de instancias puntuales en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 6: Para crear una configuración de lanzamiento mediante una EC2 instancia

En este ejemplo, se crea una configuración de lanzamiento basada en los atributos de una instancia existente. Anula la ubicación, el arrendamiento y la configuración de una dirección IP pública al incluir las opciones --placement-tenancy y--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 no genera ninguna salida.

Para obtener más información, consulte Creación de una configuración de lanzamiento mediante una EC2 instancia en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 7: Para crear una configuración de lanzamiento con un mapeo de dispositivos de bloques para un EBS volumen de Amazon

En este ejemplo, se crea una configuración de lanzamiento con un mapeo de dispositivos de bloques para un EBS gp3 volumen de Amazon con el nombre del dispositivo /dev/sdh y un tamaño de volumen 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 no genera ninguna salida.

Para obtener más información, consulte EBSla APIreferencia de Amazon EC2 Auto Scaling.

Para obtener información sobre la sintaxis para citar valores JSON de parámetros con formato, consulte Uso de comillas con cadenas AWS CLI en la Guía del usuario de la interfaz de línea de AWS comandos.

Ejemplo 8: Para crear una configuración de lanzamiento con un mapeo de dispositivos de bloques para un volumen de almacén de instancias

En este ejemplo, se crea una configuración de lanzamiento con ephemeral1 un volumen de almacén de instancias con el nombre del 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 no genera ninguna salida.

Para obtener más información, consulte BlockDeviceMappingla APIreferencia de Amazon EC2 Auto Scaling.

Para obtener información sobre la sintaxis para citar valores JSON de parámetros con formato, consulte Uso de comillas con cadenas AWS CLI en la Guía del usuario de la interfaz de línea de AWS comandos.

Ejemplo 9: Para crear una configuración de inicio y evitar que un dispositivo de bloques se conecte en el momento del lanzamiento

En este ejemplo, se crea una configuración de lanzamiento que suprime un dispositivo de bloques especificado en el mapeo de dispositivos de bloques del AMI (por ejemplo,/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 no genera ninguna salida.

Para obtener más información, consulte BlockDeviceMappingla APIreferencia de Amazon EC2 Auto Scaling.

Para obtener información sobre la sintaxis para citar valores JSON de parámetros con formato, consulte Uso de comillas con cadenas AWS CLI en la Guía del usuario de la interfaz de línea de AWS comandos.

El siguiente ejemplo de código muestra cómo usarlocreate-or-update-tags.

AWS CLI

Para crear o actualizar etiquetas para un grupo de Auto Scaling

En este ejemplo se agregan dos etiquetas al grupo de 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 no genera ninguna salida.

Para obtener más información, consulte Etiquetado de grupos e instancias de Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

  • Para API obtener más información, consulte CreateOrUpdateTagsla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlodelete-auto-scaling-group.

AWS CLI

Ejemplo 1: Eliminación del grupo de escalado automático especificado

En este ejemplo, se elimina el grupo de escalado automático especificado.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Eliminar la infraestructura de Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 2: Forzado de la eliminación del grupo de escalado automático especificado

Para eliminar el grupo de escalado automático sin esperar a que las instancias del grupo terminen, utilice la opción --force-delete.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Eliminar la infraestructura de Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

El siguiente ejemplo de código muestra cómo usarlodelete-launch-configuration.

AWS CLI

Para eliminar una configuración de lanzamiento

En este ejemplo, se elimina la configuración de lanzamiento especificada.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Eliminar la infraestructura de Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

El siguiente ejemplo de código muestra cómo usarlodelete-lifecycle-hook.

AWS CLI

Para eliminar un enlace de ciclo de vida

En este ejemplo, se elimina el enlace del ciclo de vida especificado.

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

Este comando no genera ninguna salida.

  • Para API obtener más información, consulte DeleteLifecycleHookla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlodelete-notification-configuration.

AWS CLI

Para eliminar una notificación de Auto Scaling

En este ejemplo, se elimina la notificación especificada del grupo de 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 no genera ninguna salida.

Para obtener más información, consulte Eliminar la configuración de notificaciones en la Guía del usuario de Amazon EC2 Auto Scaling.

El siguiente ejemplo de código muestra cómo usarlodelete-policy.

AWS CLI

Para eliminar una política de escalado

En este ejemplo, se elimina la política de escalado especificada.

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

Este comando no genera ninguna salida.

  • Para API obtener más información, consulte DeletePolicyla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlodelete-scheduled-action.

AWS CLI

Para eliminar una acción programada de un grupo de Auto Scaling

En este ejemplo, se elimina la acción programada especificada del grupo de Auto Scaling especificado.

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

Este comando no genera ninguna salida.

El siguiente ejemplo de código muestra cómo usarlodelete-tags.

AWS CLI

Para eliminar una etiqueta de un grupo de Auto Scaling

En este ejemplo, se elimina la etiqueta especificada del grupo de Auto Scaling especificado.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Etiquetado de grupos e instancias de Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

  • Para API obtener más información, consulte DeleteTagsla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlodelete-warm-pool.

AWS CLI

Ejemplo 1: Para eliminar una piscina caliente

El siguiente ejemplo elimina la piscina caliente del grupo de Auto Scaling especificado.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Warm Pools for Amazon EC2 Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 2: Para forzar la eliminación de una piscina caliente

Para eliminar la piscina caliente sin esperar a que sus instancias terminen, usa la --force-delete opción.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Warm Pools for Amazon EC2 Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

  • Para API obtener más información, consulte DeleteWarmPoolla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlodescribe-account-limits.

AWS CLI

Para describir los límites de su cuenta EC2 de Amazon Auto Scaling

En este ejemplo, se describen los límites EC2 de Amazon Auto Scaling para su AWS cuenta.

aws autoscaling describe-account-limits

Salida:

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

Para obtener más información, consulte las cuotas de servicio de Amazon EC2 Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

El siguiente ejemplo de código muestra cómo usarlodescribe-adjustment-types.

AWS CLI

Para describir los tipos de ajuste de escala disponibles

En este ejemplo se describen los tipos de ajuste disponibles.

aws autoscaling describe-adjustment-types

Salida:

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

Para obtener más información, consulte Tipos de ajustes de escalado en la Guía del usuario de Amazon EC2 Auto Scaling.

El siguiente ejemplo de código muestra cómo usarlodescribe-auto-scaling-groups.

AWS CLI

Ejemplo 1: Descripción del grupo de escalado automático especificado

En este ejemplo, se describe el grupo de escalado automático especificado.

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

Salida:

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

Ejemplo 2: Descripción de los 100 primeros grupos de escalado automático especificados

En este ejemplo, se describen los grupos de escalado automático especificados. Le permite especificar hasta 100 nombres de grupos.

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

Consulte el ejemplo 1 para ver una salida de muestra.

Ejemplo 3: Descripción de un grupo de escalado automático en la región especificada

En este ejemplo, se describen los grupos de escalado automático en la región especificada, hasta un máximo de 75 grupos.

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

Consulte el ejemplo 1 para ver una salida de muestra.

Ejemplo 4: Descripción del número especificado de grupos de escalado automático

Para devolver un número específico de grupos de escalado automático, utilice la opción --max-items.

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

Consulte el ejemplo 1 para ver una salida de muestra.

Si la salida incluye un campo NextToken, hay más grupos. Para obtener los grupos adicionales, utilice el valor de este campo con la opción --starting-token en una llamada posterior de la siguiente manera.

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

Consulte el ejemplo 1 para ver una salida de muestra.

Ejemplo 5: Para describir los grupos de Auto Scaling que utilizan configuraciones de lanzamiento

En este ejemplo, se usa la --query opción para describir los grupos de Auto Scaling que usan configuraciones de lanzamiento.

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

Salida:

[ { "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 obtener más información, consulte Filtrar los AWS CLI resultados en la Guía del usuario de la interfaz de línea de AWS comandos.

El siguiente ejemplo de código muestra cómo usarlodescribe-auto-scaling-instances.

AWS CLI

Ejemplo 1: Descripción de una o varias instancias

En este ejemplo, se describe la instancia especificada.

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

Salida:

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

Ejemplo 2: Descripción de una o varias instancias

En este ejemplo, se utiliza la opción --max-items para especificar cuántas instancias se devolverán con esta llamada.

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

Si la salida incluye un campo NextToken, hay más instancias. Para obtener las instancias adicionales, utilice el valor de este campo con la opción --starting-token en una llamada posterior de la siguiente manera.

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

Consulte el ejemplo 1 para ver una salida de muestra.

Ejemplo 3: Para describir las instancias que utilizan configuraciones de lanzamiento

En este ejemplo, se usa la --query opción para describir las instancias que usan configuraciones de lanzamiento.

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

Salida:

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

Para obtener más información, consulte Filtrar los AWS CLI resultados en la Guía del usuario de la interfaz de línea de AWS comandos.

El siguiente ejemplo de código muestra cómo usarlodescribe-auto-scaling-notification-types.

AWS CLI

Para describir los tipos de notificaciones disponibles

En este ejemplo se describen los tipos de notificación disponibles.

aws autoscaling describe-auto-scaling-notification-types

Salida:

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

Para obtener más información, consulte Cómo recibir SNS notificaciones de Amazon cuando su grupo de Auto Scaling se amplía en la Guía del usuario de Amazon EC2 Auto Scaling.

El siguiente ejemplo de código muestra cómo usarlodescribe-instance-refreshes.

AWS CLI

Para describir las actualizaciones de instancias

El siguiente describe-instance-refreshes ejemplo devuelve una descripción de todas las solicitudes de actualización de instancias para el grupo de Auto Scaling especificado, incluido el mensaje de estado y (si está disponible) el motivo del estado.

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

Salida:

{ "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 obtener más información, consulte Comprobar el estado de una actualización de instancias en la Guía del usuario de Amazon EC2 Auto Scaling.

El siguiente ejemplo de código muestra cómo usarlodescribe-launch-configurations.

AWS CLI

Ejemplo 1: Para describir la configuración de lanzamiento especificada

En este ejemplo se describe la configuración de lanzamiento especificada.

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

Salida:

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

Ejemplo 2: Para describir un número específico de configuraciones de lanzamiento

Para devolver un número específico de configuraciones de lanzamiento, utilice la --max-items opción.

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

Si la salida incluye un NextToken campo, hay más configuraciones de lanzamiento. Para obtener las configuraciones de lanzamiento adicionales, utilice el valor de este campo con la --starting-token opción en una llamada posterior, de la siguiente manera.

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

El siguiente ejemplo de código muestra cómo usarlodescribe-lifecycle-hook-types.

AWS CLI

Para describir los tipos de ganchos de ciclo de vida disponibles

En este ejemplo, se describen los tipos de enlaces de ciclo de vida disponibles.

aws autoscaling describe-lifecycle-hook-types

Salida:

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

El siguiente ejemplo de código muestra cómo usarlodescribe-lifecycle-hooks.

AWS CLI

Para describir tus ganchos de ciclo de vida

En este ejemplo, se describen los enlaces del ciclo de vida del grupo de Auto Scaling especificado.

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

Salida:

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

El siguiente ejemplo de código muestra cómo usarlodescribe-load-balancer-target-groups.

AWS CLI

Para describir los grupos objetivo del balanceador de carga para un grupo de Auto Scaling

En este ejemplo, se describen los grupos objetivo del balanceador de carga asociados al grupo de Auto Scaling especificado.

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

Salida:

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

El siguiente ejemplo de código muestra cómo usarlodescribe-load-balancers.

AWS CLI

Para describir los balanceadores de carga clásicos para un grupo de Auto Scaling

En este ejemplo, se describen los balanceadores de carga clásicos para el grupo de Auto Scaling especificado.

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

Salida:

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

El siguiente ejemplo de código muestra cómo usarlodescribe-metric-collection-types.

AWS CLI

Para describir los tipos de recopilación de métricas disponibles

En este ejemplo, se describen los tipos de recopilación de métricas disponibles.

aws autoscaling describe-metric-collection-types

Salida:

{ "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 obtener más información, consulte las métricas de grupo de Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

El siguiente ejemplo de código muestra cómo usarlodescribe-notification-configurations.

AWS CLI

Ejemplo 1: Para describir las configuraciones de notificación de un grupo específico

En este ejemplo, se describen las configuraciones de notificación para el grupo de Auto Scaling especificado.

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

Salida:

{ "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 obtener más información, consulte Cómo recibir SNS notificaciones de Amazon cuando su grupo de Auto Scaling se amplía en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 1: Para describir un número específico de configuraciones de notificaciones

Para devolver un número específico de configuraciones de notificaciones, utilice el max-items parámetro.

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

Salida:

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

Si la salida incluye un NextToken campo, hay más configuraciones de notificación. Para obtener las configuraciones de notificación adicionales, utilice el valor de este campo con el starting-token parámetro en una llamada posterior de la siguiente manera.

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

Para obtener más información, consulte Cómo recibir SNS notificaciones de Amazon cuando su grupo de Auto Scaling se amplía en la Guía del usuario de Amazon EC2 Auto Scaling.

El siguiente ejemplo de código muestra cómo usarlodescribe-policies.

AWS CLI

Ejemplo 1: Para describir las políticas de escalado de un grupo específico

En este ejemplo, se describen las políticas de escalado del grupo de Auto Scaling especificado.

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

Salida:

{ "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 obtener más información, consulte Escalado dinámico en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 2: Para describir las políticas de escalado de un nombre específico

Para obtener políticas de escalado específicas, utilice la --policy-names opción.

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

Consulte el ejemplo 1 para ver una salida de muestra.

Para obtener más información, consulte Escalado dinámico en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 3: Para describir una serie de políticas de escalado

Para devolver un número específico de políticas, utilice la --max-items opción.

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

Consulte el ejemplo 1 para ver una salida de muestra.

Si el resultado incluye un NextToken campo, utilice el valor de este campo con la --starting-token opción en una llamada posterior para obtener las políticas adicionales.

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

Para obtener más información, consulte Escalado dinámico en la Guía del usuario de Amazon EC2 Auto Scaling.

  • Para API obtener más información, consulte DescribePoliciesla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlodescribe-scaling-activities.

AWS CLI

Ejemplo 1: Descripción de las actividades de escalado para el grupo especificado

En este ejemplo, se describen una o varias actividades de escalado para el grupo de escalado automático especificado.

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

Salida:

{ "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 obtener más información, consulte Verificar una actividad de escalado para un grupo de Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 2: Descripción de las actividades de escalado de un grupo eliminado

Para describir las actividades de escalado después de que un grupo de escalado automático se haya eliminado, añada la opción --include-deleted-groups.

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

Salida:

{ "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 obtener más información, consulte Solución de problemas de Amazon EC2 Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 3: Descripción de un número específico de actividades de escalado

Para devolver un número específico de actividades, utilice la opción --max-items.

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

Salida:

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

Si la salida incluye un campo NextToken, hay más actividades. Para obtener las actividades adicionales, utilice el valor de este campo con la opción --starting-token en una llamada posterior de la siguiente manera.

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

Para obtener más información, consulte Verificar una actividad de escalado para un grupo de Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

El siguiente ejemplo de código muestra cómo usarlodescribe-scaling-process-types.

AWS CLI

Para describir los tipos de procesos disponibles

En este ejemplo se describen los tipos de procesos disponibles.

aws autoscaling describe-scaling-process-types

Salida:

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

Para obtener más información, consulte Suspender y reanudar los procesos de escalado en la Guía del usuario de Amazon EC2 Auto Scaling.

El siguiente ejemplo de código muestra cómo usarlodescribe-scheduled-actions.

AWS CLI

Ejemplo 1: Para describir todas las acciones programadas

En este ejemplo se describen todas las acciones programadas.

aws autoscaling describe-scheduled-actions

Salida:

{ "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 obtener más información, consulte Escalado programado en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 2: Para describir las acciones programadas para el grupo especificado

Para describir las acciones programadas para un grupo de Auto Scaling específico, utilice la --auto-scaling-group-name opción.

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

Salida:

{ "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 obtener más información, consulte Escalado programado en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 3: Para describir la acción programada especificada

Para describir una acción programada específica, utilice la --scheduled-action-names opción.

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

Salida:

{ "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 obtener más información, consulte Escalado programado en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 4: Para describir las acciones programadas con una hora de inicio específica

Para describir las acciones programadas que comienzan a una hora específica, utilice la --start-time opción.

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

Salida:

{ "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 obtener más información, consulte Escalado programado en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 5: Para describir las acciones programadas que finalizan a una hora específica

Para describir las acciones programadas que finalizan a una hora específica, usa la --end-time opción.

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

Salida:

{ "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 obtener más información, consulte Escalado programado en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 6: Para describir un número específico de acciones programadas

Para devolver un número específico de acciones programadas, utilice la --max-items opción.

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

Salida:

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

Si la salida incluye un NextToken campo, hay más acciones programadas. Para obtener las acciones programadas adicionales, utilice el valor de este campo con la --starting-token opción en una llamada posterior, de la siguiente manera.

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

Para obtener más información, consulte Escalado programado en la Guía del usuario de Amazon EC2 Auto Scaling.

El siguiente ejemplo de código muestra cómo usarlodescribe-tags.

AWS CLI

Para describir todas las etiquetas

En este ejemplo se describen todas las etiquetas.

aws autoscaling describe-tags

Salida:

{ "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 obtener más información, consulte Etiquetado de grupos e instancias de Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 2: Para describir las etiquetas de un grupo específico

Para describir las etiquetas de un grupo de Auto Scaling específico, utilice la --filters opción.

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

Para obtener más información, consulte Etiquetado de grupos e instancias de Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 3: Para describir el número especificado de etiquetas

Para devolver un número específico de etiquetas, utilice la --max-items opción.

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

Si la salida incluye un NextToken campo, hay más etiquetas. Para obtener las etiquetas adicionales, utilice el valor de este campo con la --starting-token opción en una llamada posterior, de la siguiente manera.

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

Para obtener más información, consulte Etiquetado de grupos e instancias de Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

  • Para API obtener más información, consulte DescribeTagsla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlodescribe-termination-policy-types.

AWS CLI

Para describir los tipos de políticas de rescisión disponibles

En este ejemplo se describen los tipos de políticas de rescisión disponibles.

aws autoscaling describe-termination-policy-types

Salida:

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

Para obtener más información, consulte Controlar qué instancias de Auto Scaling finalizan durante el escalado en la Guía del usuario de Amazon EC2 Auto Scaling.

El siguiente ejemplo de código muestra cómo usarlodescribe-warm-pool.

AWS CLI

Para describir una piscina caliente

En este ejemplo se describe la piscina caliente del grupo de Auto Scaling especificado.

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

Salida:

{ "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 obtener más información, consulte Warm Pools for Amazon EC2 Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

  • Para API obtener más información, consulte DescribeWarmPoolla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlodetach-instances.

AWS CLI

Para separar una instancia de un grupo de Auto Scaling

En este ejemplo, se separa la instancia especificada del grupo de Auto Scaling especificado.

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

Salida:

{ "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 API obtener más información, consulte DetachInstancesla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlodetach-load-balancer-target-groups.

AWS CLI

Para separar un grupo objetivo del balanceador de carga de un grupo de Auto Scaling

En este ejemplo, se separa el grupo objetivo del balanceador de cargas especificado del grupo de 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 no produce ningún resultado

Para obtener más información, consulte Adjuntar un balanceador de carga a su grupo de Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

El siguiente ejemplo de código muestra cómo usarlodetach-load-balancers.

AWS CLI

Para separar un Classic Load Balancer de un grupo de Auto Scaling

En este ejemplo, se separa el Classic Load Balancer especificado del grupo de Auto Scaling especificado.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Adjuntar un balanceador de carga a su grupo de Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

  • Para API obtener más información, consulte la Referencia DetachLoadBalancersde AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlodisable-metrics-collection.

AWS CLI

Desactivación de la recopilación de métricas de grupo de un grupo de escalado automático

En este ejemplo, se deshabilita la recopilación de la métrica GroupDesiredCapacity del grupo de escalado automático especificado.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Supervisión de CloudWatch las métricas de sus grupos e instancias de Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

El siguiente ejemplo de código muestra cómo usarloenable-metrics-collection.

AWS CLI

Ejemplo 1: Habilitación de la recopilación de métricas de un grupo de escalado automático

En este ejemplo, se habilita la recopilación de datos para el grupo de escalado automático especificado.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Supervisión de CloudWatch las métricas de sus grupos e instancias de Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 2: Recopilación de datos para la métrica especificada para un grupo de escalado automático

Para recopilar datos para una métrica específica, utilice la opción --metrics.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Supervisión de CloudWatch las métricas de sus grupos e instancias de Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

El siguiente ejemplo de código muestra cómo usarloenter-standby.

AWS CLI

Para mover las instancias al modo de espera

En este ejemplo, se pone la instancia especificada en modo de espera. Esto resulta útil para actualizar o solucionar problemas de una instancia que se encuentra actualmente en servicio.

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

Salida:

{ "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 obtener más información, consulte el ciclo de vida de las instancias de Amazon EC2 Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

  • Para API obtener más información, consulte EnterStandbyla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloexecute-policy.

AWS CLI

Para ejecutar una política de escalado

En este ejemplo, se ejecuta la política de escalado denominada my-step-scale-out-policy para el grupo de 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 no genera ninguna salida.

Para obtener más información, consulte Políticas de escalado simples y escalonadas en la Guía del usuario de Amazon EC2 Auto Scaling.

  • Para API obtener más información, consulte ExecutePolicyla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloexit-standby.

AWS CLI

Para sacar las instancias del modo de espera

En este ejemplo, se saca la instancia especificada del modo de espera.

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

Salida:

{ "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 obtener más información, consulte Eliminar temporalmente instancias de su grupo de Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

  • Para API obtener más información, consulte ExitStandbyla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloput-lifecycle-hook.

AWS CLI

Ejemplo 1: Para crear un enlace de ciclo de vida

En este ejemplo, se crea un enlace de ciclo de vida que se invocará en cualquier instancia recién lanzada, con un tiempo de espera de 4800 segundos. Esto resulta útil para mantener las instancias en estado de espera hasta que finalicen los scripts de datos de usuario o para invocar una función AWS Lambda mediante. 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 no genera ninguna salida. Si ya existe un enlace de ciclo de vida con el mismo nombre, el nuevo enlace de ciclo de vida lo sobrescribirá.

Para obtener más información, consulte los enlaces del ciclo de vida de Amazon EC2 Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 2: Para enviar un mensaje de SNS correo electrónico de Amazon para notificarle las transiciones de estado de la instancia

En este ejemplo, se crea un enlace de ciclo de vida con el SNS tema y el IAM rol de Amazon que se usará para recibir notificaciones en el lanzamiento de la instancia.

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 no genera ninguna salida.

Para obtener más información, consulte los enlaces del ciclo de vida de Amazon EC2 Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 3: Para publicar un mensaje en una SQS cola de Amazon

En este ejemplo, se crea un enlace de ciclo de vida que publica un mensaje con metadatos en la SQS cola de Amazon especificada.

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 no genera ninguna salida.

Para obtener más información, consulte los enlaces del ciclo de vida de Amazon EC2 Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

  • Para API obtener más información, consulte PutLifecycleHookla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloput-notification-configuration.

AWS CLI

Para añadir una notificación

En este ejemplo, se agrega la notificación especificada al grupo de 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 no genera ninguna salida.

Para obtener más información, consulte Cómo recibir SNS notificaciones de Amazon cuando su grupo de Auto Scaling se amplía en la Guía del usuario de Amazon EC2 Auto Scaling.

El siguiente ejemplo de código muestra cómo usarloput-scaling-policy.

AWS CLI

Para agregar una política de escalado de seguimiento de objetivos a un grupo de Auto Scaling

El siguiente put-scaling-policy ejemplo aplica una política de escalado de seguimiento de objetivos al grupo de Auto Scaling especificado. El resultado contiene los nombres ARNs y los nombres de las dos CloudWatch alarmas creadas en su nombre. Si ya existe una política de escalado con el mismo nombre, la nueva política de escalado la sobrescribirá.

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

Contenidos de config.json:

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

Salida:

{ "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 ver más ejemplos, consulte Ejemplos de políticas de escalado para la interfaz de línea de AWS comandos (AWS CLI) en la Guía del usuario de Amazon EC2 Auto Scaling.

  • Para API obtener más información, consulte PutScalingPolicyla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloput-scheduled-update-group-action.

AWS CLI

Ejemplo 1: Para agregar una acción programada a un grupo de Auto Scaling

En este ejemplo, se agrega la acción programada especificada al grupo de 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 no genera ninguna salida. Si ya existe una acción programada con el mismo nombre, la nueva acción programada la sobrescribirá.

Para ver más ejemplos, consulte el escalado programado en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 2: Para especificar un programa periódico

En este ejemplo, se crea una acción programada para adaptarla a un programa recurrente cuya ejecución está prevista para las 00:30 horas del primero de enero, junio y diciembre de cada año.

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 no genera ninguna salida. Si ya existe una acción programada con el mismo nombre, la nueva acción programada la sobrescribirá.

Para ver más ejemplos, consulte el escalado programado en la Guía del usuario de Amazon EC2 Auto Scaling.

El siguiente ejemplo de código muestra cómo usarloput-warm-pool.

AWS CLI

Para crear una piscina caliente

El siguiente ejemplo crea una piscina caliente para el grupo de Auto Scaling especificado.

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

Este comando no genera ninguna salida. Si ya existe una piscina caliente, se actualizará.

Para obtener más información, consulte Warm Pools for Amazon EC2 Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

  • Para API obtener más información, consulte PutWarmPoolla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlorecord-lifecycle-action-heartbeat.

AWS CLI

Para registrar el latido de una acción del ciclo de vida

En este ejemplo, se registra el latido de una acción del ciclo de vida para mantener la instancia en estado pendiente.

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 no genera ninguna salida.

Para obtener más información, consulte los enlaces del ciclo de vida de Amazon EC2 Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

El siguiente ejemplo de código muestra cómo usarloresume-processes.

AWS CLI

Para reanudar los procesos suspendidos

En este ejemplo, se reanuda el proceso de escalado suspendido especificado para el grupo de Auto Scaling especificado.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Suspender y reanudar los procesos de escalado en la Guía del usuario de Amazon EC2 Auto Scaling.

  • Para API obtener más información, consulte la Referencia ResumeProcessesde AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlorollback-instance-refresh.

AWS CLI

Para revertir una actualización de una instancia

En el siguiente rollback-instance-refresh ejemplo, se revierte una actualización de instancias en curso para el grupo de Auto Scaling especificado.

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

Salida:

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

Para obtener más información, consulte Deshacer cambios con una reversión en la Guía del usuario de Amazon EC2 Auto Scaling.

El siguiente ejemplo de código muestra cómo usarloset-desired-capacity.

AWS CLI

Fijación de la capacidad deseada inicial para el grupo de escalado automático

En este ejemplo, se establece la capacidad deseada para el grupo de escalado automático especificado.

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

Este comando vuelve a la petición si se ejecuta correctamente.

  • Para API obtener más información, consulte SetDesiredCapacityla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloset-instance-health.

AWS CLI

Para establecer el estado de salud de una instancia

En este ejemplo, se establece el estado de salud de la instancia especificada enUnhealthy.

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

Este comando no genera ninguna salida.

  • Para API obtener más información, consulte SetInstanceHealthla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloset-instance-protection.

AWS CLI

Ejemplo 1: Para habilitar la configuración de protección de instancias para una instancia

En este ejemplo, se habilita la protección de instancias para la instancia especificada.

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

Este comando no genera ninguna salida.

Ejemplo 2: Para deshabilitar la configuración de protección de instancias para una instancia

En este ejemplo, se inhabilita la protección de instancias para la instancia especificada.

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

Este comando no genera ninguna salida.

El siguiente ejemplo de código muestra cómo usarlostart-instance-refresh.

AWS CLI

Ejemplo 1: Para iniciar una actualización de instancias mediante parámetros de línea de comandos

En el siguiente start-instance-refresh ejemplo, se inicia una actualización de instancias mediante argumentos de línea de comandos. El preferences parámetro opcional especifica un InstanceWarmup número de 60 segundos y un MinHealthyPercentage 50 porcentaje.

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

Salida:

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

Para obtener más información, consulte Iniciar una actualización de instancias en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 2: Para iniciar la actualización de una instancia mediante un JSON archivo

En el siguiente start-instance-refresh ejemplo, se inicia una actualización de instancias mediante un JSON archivo. Puede especificar el grupo Auto Scaling y definir la configuración y las preferencias que desee en un JSON archivo, como se muestra en el siguiente ejemplo.

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

Contenidos de config.json:

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

Salida:

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

Para obtener más información, consulte Iniciar una actualización de instancias en la Guía del usuario de Amazon EC2 Auto Scaling.

  • Para API obtener más información, consulte StartInstanceRefreshla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlosuspend-processes.

AWS CLI

Para suspender los procesos de Auto Scaling

Este ejemplo suspende el proceso de escalado especificado para el grupo de Auto Scaling especificado.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Suspender y reanudar los procesos de escalado en la Guía del usuario de Amazon EC2 Auto Scaling.

  • Para API obtener más información, consulte la Referencia SuspendProcessesde AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloterminate-instance-in-auto-scaling-group.

AWS CLI

Finalización de una instancia en su grupo de escalado automático

En este ejemplo, se termina la instancia especificada del grupo de escalado automático especificado sin actualizar el tamaño del grupo. Amazon EC2 Auto Scaling lanza una instancia de reemplazo después de que finalice la instancia especificada.

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

Salida:

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

El siguiente ejemplo de código muestra cómo usarloupdate-auto-scaling-group.

AWS CLI

Ejemplo 1: Actualización de los límites de tamaño de un grupo de escalado automático

En este ejemplo, se actualiza el grupo de escalado automático especificado con un tamaño mínimo de 2 y un tamaño máximo de 10.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Establecer límites de capacidad para su grupo de Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 2: Adición de comprobaciones de estado de Elastic Load Balancing y especificar qué zonas de disponibilidad y subredes se deben utilizar

En este ejemplo, se actualiza el grupo de escalado automático especificado para añadir comprobaciones de estado de Elastic Load Balancing. Este comando también actualiza el valor de --vpc-zone-identifier con una lista de subredes IDs en varias zonas de disponibilidad.

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 no genera ninguna salida.

Para obtener más información, consulte Elastic Load Balancing y Amazon EC2 Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 3: Actualización del grupo con ubicación y la política de terminación

En este ejemplo, se actualizan el grupo con ubicación y la política de terminación que se van a utilizar.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte los grupos de Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 4: Uso de la versión más reciente de la plantilla de lanzamiento

En este ejemplo, se actualiza el grupo de escalado automático para utilizar la versión más reciente de la plantilla de lanzamiento.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Plantillas de lanzamiento en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 5: Uso de una versión específica de la plantilla de lanzamiento

En este ejemplo, se actualiza el grupo de escalado automático especificado para utilizar una versión específica de una plantilla de lanzamiento en lugar de la versión más reciente o predeterminada.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Plantillas de lanzamiento en la Guía del usuario de Amazon EC2 Auto Scaling.

Ejemplo 6: Definición de una política de instancias mixtas y habilitar el reequilibrio de la capacidad

En este ejemplo, se actualiza el grupo de escalado automático especificado para que utilice una política de instancias mixtas y se habilita el reequilibrio de la capacidad. Esta estructura le permite especificar grupos con capacidades bajo demanda y de spot y utilizar distintas plantillas de lanzamiento para diferentes arquitecturas.

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

Contenidos 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 no genera ninguna salida.

Para obtener más información, consulte Grupos de Auto Scaling con varios tipos de instancias y opciones de compra en la Guía del usuario de Amazon EC2 Auto Scaling.