Está en la página 1de 349

Auto Scaling de Amazon EC2

Guía del usuario


Auto Scaling de Amazon EC2 Guía del usuario

Auto Scaling de Amazon EC2: Guía del usuario


Copyright © Amazon Web Services, Inc. and/or its affiliates. All rights reserved.

Las marcas comerciales y la imagen comercial de Amazon no se pueden utilizar en relación con ningún producto o
servicio que no sea de Amazon de ninguna manera que pueda causar confusión entre los clientes y que menosprecie
o desacredite a Amazon. Todas las demás marcas comerciales que no son propiedad de Amazon son propiedad de
sus respectivos propietarios, que pueden o no estar afiliados, conectados o patrocinados por Amazon.
Auto Scaling de Amazon EC2 Guía del usuario

Table of Contents
¿Qué es Amazon EC2 Auto Scaling ...................................................................................................... 1
Componentes de Auto Scaling ..................................................................................................... 1
Introducción ............................................................................................................................... 2
Acceso a Amazon EC2 Auto Scaling ............................................................................................. 2
Precios de Amazon EC2 Auto Scaling ........................................................................................... 3
Conformidad con DSS de PCI ...................................................................................................... 3
Servicios relacionados ................................................................................................................. 3
Ventajas de Auto Scaling ............................................................................................................. 3
Ejemplo: Cubrir la demanda variable ..................................................................................... 4
Ejemplo: Arquitectura de aplicaciones web ............................................................................. 5
Ejemplo: Distribución de instancias entre zonas de disponibilidad ............................................... 6
Ciclo de vida de la instancia ........................................................................................................ 8
Escalado ascendente .......................................................................................................... 9
Instancias en servicio .......................................................................................................... 9
Escalado en ..................................................................................................................... 10
Asociar una instancia ........................................................................................................ 10
Desasociar una instancia ................................................................................................... 10
Enlaces de ciclo de vida .................................................................................................... 10
Entrar y salir del modo de espera ....................................................................................... 11
Cuotas de servicio .................................................................................................................... 11
Configuración ................................................................................................................................... 13
Inscribirse en una Cuenta de AWS .............................................................................................. 13
Prepárese para utilizar Amazon EC2 ........................................................................................... 13
Instalar la AWS CLI .................................................................................................................. 13
Introducción ..................................................................................................................................... 14
Resumen del tutorial ................................................................................................................. 14
Prepararse para el tutorial .......................................................................................................... 15
Paso 1: Crear una plantilla de lanzamiento ................................................................................... 15
Paso 2: Cree un grupo de Auto Scaling de instancia única .............................................................. 17
Paso 3: Compruebe el grupo de Auto Scaling ............................................................................... 17
Paso 4: Terminar una instancia en el grupo de Auto Scaling ............................................................ 18
Paso 5: Pasos siguientes ........................................................................................................... 18
Paso 6: Eliminar recursos ........................................................................................................... 19
Tutorial: Configurar una aplicación con escalado y balanceo ................................................................... 20
Prerequisites ............................................................................................................................ 21
Paso 1: Configurar una plantilla de lanzamiento o una configuración de lanzamiento ............................ 21
Seleccione o cree una configuración de lanzamiento .............................................................. 23
Paso 2: Creación de un grupo de Auto Scaling ............................................................................. 24
Paso 3: Compruebe que el balanceador de carga está adjunto ........................................................ 25
Paso 4: Pasos siguientes ........................................................................................................... 25
Paso 5: Eliminar recursos ........................................................................................................... 25
Plantillas de lanzamiento .................................................................................................................... 27
Creación de una plantilla de lanzamiento para un grupo de Auto Scaling ........................................... 28
Creación de una plantilla de lanzamiento (consola) ................................................................ 28
Para crear una plantilla de lanzamiento a partir de una instancia existente (consola) .................... 33
Creación de una plantilla de lanzamiento (AWS CLI) .............................................................. 34
Limitations ....................................................................................................................... 34
Copiar una configuración de lanzamiento en una plantilla de lanzamiento .......................................... 34
Sustituir una configuración de lanzamiento por una plantilla de lanzamiento ....................................... 35
AWS CLIEjemplos de uso de plantillas de lanzamiento ................................................................... 36
Creación de una plantilla de lanzamiento simple .................................................................... 36
Especificación de etiquetas que etiquetan instancias en la creación .......................................... 37
Especificación de una interfaz de red existente ..................................................................... 37
Asignación de direcciones IP públicas .................................................................................. 38

iii
Auto Scaling de Amazon EC2 Guía del usuario

Añadir una interfaz de red secundaria .................................................................................. 38


Creación de múltiples interfaces de red habilitadas para EFA .................................................. 38
Especificación de una asignación de dispositivos de bloques ................................................... 39
Administrar las plantillas de lanzamiento .............................................................................. 39
Actualización de un grupo de Auto Scaling para utilizar una plantilla de lanzamiento .................... 41
Configuraciones de lanzamiento .......................................................................................................... 42
Creación de una configuración de lanzamiento .............................................................................. 42
Creación de la configuración de lanzamiento (consola) ........................................................... 43
Creación de una configuración de lanzamiento (AWS CLI) ...................................................... 44
Configuración de IMDS ...................................................................................................... 44
Creación de una configuración de lanzamiento mediante una instancia EC2 ....................................... 46
Creación de una configuración de lanzamiento mediante una instancia EC2 ............................... 47
Cree una configuración de inicio a partir de una instancia y anule los dispositivos de bloque
(AWS CLI) ....................................................................................................................... 48
Cree una configuración de lanzamiento y anule el tipo de instancia (AWS CLI) ........................... 49
Cambiar una configuración de lanzamiento ................................................................................... 50
Solicitar instancias de subasta .................................................................................................... 51
Configuración de la tenencia de instancia ..................................................................................... 52
Grupos de Auto Scaling ..................................................................................................................... 55
Uso de varios tipos de instancias y opciones de compra ................................................................. 56
Estrategias de asignación .................................................................................................. 57
Control de la proporción de instancias bajo demanda ............................................................. 59
Prácticas recomendadas para Instancias de spot ................................................................... 60
Prerequisites .................................................................................................................... 61
Crear un grupo de Auto Scaling con instancias de spot y bajo demanda (consola) ....................... 61
Configuración de estrategias de asignación de puntos (AWS CLI) ............................................ 63
Verificando si el grupo Auto Scaling está configurado correctamente y si el grupo ha iniciado
instancias (AWS CLI) ........................................................................................................ 69
Configuración de anulaciones ............................................................................................. 69
Creación de un grupo de mediante una plantilla de lanzamiento ....................................................... 79
Crear un grupo de mediante una configuración de lanzamiento ........................................................ 81
Creación de un grupo de mediante una instancia EC2 .................................................................... 83
Limitaciones y requisitos previos ......................................................................................... 83
Cree un grupo de Auto Scaling a partir de una instancia EC2 (AWS CLI) ................................... 84
Etiquetado de grupos e instancias de Auto Scaling ........................................................................ 86
Restricciones de las etiquetas ............................................................................................ 86
Ciclo de vida del etiquetado ............................................................................................... 87
Agregar o modificar etiquetas para el grupo de Auto Scaling ................................................... 87
Eliminar etiquetas ............................................................................................................. 89
Elastic Load Balancing .............................................................................................................. 90
Tipos de Elastic Load Balancing ........................................................................................ 91
Requisitos previos ............................................................................................................. 92
Conexión de un balanceador de carga ................................................................................. 92
Agregar comprobaciones de estado de ELB ......................................................................... 95
Agregar zonas de disponibilidad de ..................................................................................... 96
AWS CLIejemplos para trabajar con Elastic Load Balancing .................................................... 99
Lanzar instancias en una VPC .................................................................................................. 103
VPC predeterminada ....................................................................................................... 103
VPC no predeterminada ................................................................................................... 104
Consideraciones a la hora de elegir subredes VPC .............................................................. 104
Direcciones IP en una VPC .............................................................................................. 104
Interfaces de red en una VPC ........................................................................................... 104
Tenencia de ubicación de instancias .................................................................................. 105
Más recursos para aprender acerca de las VPC .................................................................. 105
Recomendaciones de Compute Optimizer ................................................................................... 105
Limitations ...................................................................................................................... 106
Findings ......................................................................................................................... 106

iv
Auto Scaling de Amazon EC2 Guía del usuario

Visualización de recomendaciones ..................................................................................... 106


Consideraciones para evaluar las recomendaciones ............................................................. 107
Sustitución de instancias en función de la duración máxima ........................................................... 108
Sustitución de instancias basadas en una actualización de instancia ............................................... 110
Iniciar o cancelar una actualización de instancias(consola) .................................................... 111
Inicie o cancele una actualización de instancias (AWS CLI) ................................................... 112
Limitations ...................................................................................................................... 114
Añadir puntos de control .................................................................................................. 114
Fusión de grupos de Auto Scaling ............................................................................................. 117
Zonas de fusión (AWS CLI) .............................................................................................. 117
Eliminación de la infraestructura de Auto Scaling ......................................................................... 119
Eliminar un grupo de Auto Scaling ..................................................................................... 119
(Opcional) Eliminar la configuración de lanzamiento ............................................................. 119
(Opcional) Eliminar la plantilla de lanzamiento ..................................................................... 120
(Opcional) Eliminar el balanceador de carga y grupos de destino ........................................... 120
(Opcional) Eliminar alarmas de CloudWatch ........................................................................ 121
Escalar su grupo ............................................................................................................................. 123
Opciones de escalado ............................................................................................................. 123
Establecimiento de límites de capacidad ..................................................................................... 124
Mantenimiento de un número fijo de instancias ............................................................................ 125
Escalado manual ..................................................................................................................... 126
Cambiar el tamaño del grupo de Auto Scaling (consola) ........................................................ 126
Para cambiar el tamaño del grupo de Auto Scaling (AWS CLI) ............................................... 127
Adjunte instancias de EC2 al grupo de Auto Scaling ............................................................. 128
Para desasociar instancias EC2 del grupo de Auto Scaling .................................................... 132
Escalado dinámico .................................................................................................................. 135
Cómo funcionan las directivas de escalado dinámico ............................................................ 136
Tipos de políticas de escalado dinámico ............................................................................. 137
Políticas de escalado dinámico ......................................................................................... 137
Políticas de escalado de seguimiento de destino .................................................................. 138
Directivas de escalado simples y de paso ........................................................................... 144
Tiempo de recuperación de escalado ................................................................................. 153
Escalado basado en Amazon SQS .................................................................................... 157
Verificación de una actividad de escalado ........................................................................... 161
Deshabilitar una política de escalado ................................................................................. 162
Eliminación de una política de escalado ............................................................................. 164
AWS CLIEjemplos de políticas de escalado ........................................................................ 166
Escalado predictivo ................................................................................................................. 168
Funcionamiento del escalado predictivo .............................................................................. 168
Prácticas recomendadas .................................................................................................. 169
Crear una política de escalado predictivo (consola) .............................................................. 169
Cree una política de escalado predictivo (AWS CLI) ............................................................. 171
Limitations ...................................................................................................................... 173
Exploración de datos y previsión ....................................................................................... 173
Anulación de las previsiones ............................................................................................. 175
Escalado programado .............................................................................................................. 178
Considerations ................................................................................................................ 179
Programaciones recurrentes ............................................................................................. 179
Crear y administrar acciones programadas (consola) ............................................................ 180
Cree y administre acciones programadas (AWS CLI) ............................................................ 182
Limitations ...................................................................................................................... 183
Enlaces de ciclo de vida .......................................................................................................... 184
Cómo funcionan los enlaces de ciclo de vida ...................................................................... 184
Condiciones y limitaciones ................................................................................................ 186
Recepción de notificaciones de enlace de ciclo de vida ......................................................... 187
Repositorio GitHub .......................................................................................................... 187
Disponibilidad de enlaces de ciclo de vida .......................................................................... 187

v
Auto Scaling de Amazon EC2 Guía del usuario

Configuración de notificaciones ......................................................................................... 188


Añadir enlaces de ciclo de vida ......................................................................................... 192
Completar una acción de ciclo de vida ............................................................................... 194
Tutorial: Configure un enlace de ciclo de vida que invoque una función Lambda ........................ 195
Piscinas calientes .................................................................................................................... 200
Antes de empezar ........................................................................................................... 201
Añadir una piscina caliente(consola) .................................................................................. 201
Agregue una piscina caliente (AWS CLI) ............................................................................ 202
Eliminar una piscina caliente ............................................................................................. 204
Limitations ...................................................................................................................... 204
Ciclo de vida de la instancia ............................................................................................. 204
Tipos de eventos y patrones de eventos ............................................................................. 207
Creación de reglas de EventBridge para eventos ................................................................. 210
Ver el estado de la verificación de salud y el motivo de los fallos de la verificación de salud ......... 212
Control de terminación de instancias .......................................................................................... 215
Escale políticas de terminación ......................................................................................... 215
Trabajar con políticas de terminación ................................................................................. 217
Creación de una política de terminación personalizada con Lambda ........................................ 221
Usar la protección de escalado ascendente de instancias ...................................................... 225
Eliminación temporal de instancias ............................................................................................ 228
Cómo funciona el estado de espera ................................................................................... 228
Estado de una instancia en estado de espera ..................................................................... 229
Quitar temporalmente una instancia (consola) ..................................................................... 229
Elimine temporalmente una instancia (AWS CLI) .................................................................. 230
Procesos de suspensión .......................................................................................................... 232
Procesos de Auto Scaling de Amazon EC2 ......................................................................... 233
Elegir la suspensión ........................................................................................................ 233
Suspender y reanudar procesos (consola) .......................................................................... 236
Suspender y reanudar procesos (AWS CLI) ........................................................................ 236
Monitorización ................................................................................................................................. 238
comprobación de estado de las instancias .................................................................................. 239
Estado de las instancias .................................................................................................. 239
Determinar la instancia de estado ...................................................................................... 240
Período de gracia de Health ............................................................................................. 240
Reemplazar instancias en mal estado ................................................................................ 241
Uso de comprobaciones de estado personalizadas ............................................................... 241
Véase también ................................................................................................................ 242
Reequilibrio de la capacidad ..................................................................................................... 242
Cómo funciona ............................................................................................................... 242
Cómo habilitar el reequilibrio de capacidad ......................................................................... 243
Agregar un gancho de ciclo de vida de terminación .............................................................. 248
Monitorización con AWS Personal Health Dashboard ................................................................... 249
Monitorización con CloudWatch ................................................................................................. 250
Habilitar métricas de grupo de Auto Scaling (consola) ........................................................... 251
Para habilitar las métricas de grupo de Auto Scaling (AWS CLI) ............................................. 251
Métricas y dimensiones disponibles ................................................................................... 252
Ver métricas gráficas para las instancias y los grupos de Auto Scaling .................................... 253
Trabajo con Amazon CloudWatch ...................................................................................... 254
Configuración de la supervisión para instancias de Auto Scaling ............................................. 256
Registrar llamadas a la API con AWS CloudTrail ......................................................................... 257
Información de Auto Scaling de Amazon EC2 ...................................................................... 258
Introducción a las entradas de los archivos de registro de Auto Scaling de Amazon .................... 258
Supervisión con notificaciones de Amazon SNS ........................................................................... 259
Notificaciones de SNS ..................................................................................................... 260
Configuración de notificaciones de Amazon SNS para Amazon EC2 Auto Scaling ...................... 261
Uso de EventBridge ................................................................................................................ 263
Eventos de Auto Scaling .................................................................................................. 264

vi
Auto Scaling de Amazon EC2 Guía del usuario

UsoAWS LambdaPara controlar eventos ............................................................................ 268


Creación de reglas de EventBridge por ejemplo eventos de actualización ................................. 270
Seguridad ...................................................................................................................................... 272
Protección de los datos ............................................................................................................ 272
Uso deAWS KMS keysPara cifrar volúmenes de Amazon EBS ............................................... 273
Identity and Access Management .............................................................................................. 273
Control de acceso ........................................................................................................... 274
Cómo funciona Amazon EC2 Auto Scaling .......................................................................... 274
AWSPolíticas administradas por ........................................................................................ 279
Roles vinculados a servicios ............................................................................................. 281
Ejemplos de políticas basadas en identidades ..................................................................... 286
Soporte para plantillas de lanzamiento de ........................................................................... 295
Función de IAM para aplicaciones que se ejecutan en instancias Amazon EC2 ......................... 300
AWS KMSdirectiva de claves para su uso con volúmenes cifrados .......................................... 301
Validación de la conformidad .................................................................................................... 305
Resiliencia .............................................................................................................................. 306
Seguridad de la infraestructura .................................................................................................. 306
Uso de puntos de enlace de la VPC para conectividad privada ...................................................... 307
Creación de un punto de enlace de la VPC de tipo interfaz .................................................... 307
Creación de una política de puntos de enlace de la VPC ...................................................... 308
Solución de problemas ..................................................................................................................... 309
Recuperación de un mensaje de error ........................................................................................ 309
Error de lanzamiento de la instancia .......................................................................................... 312
La configuración solicitada no se admite actualmente. .......................................................... 313
El grupo de seguridad <nombre del grupo de seguridad > no existe. El lanzamiento de la
instancia EC2 ha producido un error. ................................................................................. 313
El par de claves <par de claves asociado a la instancia EC2> no existe. El lanzamiento de la
instancia EC2 ha producido un error. ................................................................................. 314
La zona de disponibilidad solicitada ya no se admite. Vuelva a realizar la solicitud... ................... 314
el tipo de instancia solicitado (<tipo de instancia>) ya no es compatible con la zona de
disponibilidad solicitada (<zona de disponibilidad de la instancia>)... ........................................ 314
Su precio de solicitud puntual de 0.015 es menor que el precio mínimo requerido de
cumplimiento de solicitud puntual de 0.0735... ..................................................................... 314
Carga de nombre de dispositivo no válido. El lanzamiento de la instancia EC2 ha producido un
error. ............................................................................................................................. 315
El valor (<nombre asociado al dispositivo de almacenamiento de la instancia>) del parámetro
virtualName no es válido... ............................................................................................... 315
Mapeos de dispositivos de bloques de EBS no admitidos para las AMI del almacén de instancias. 315
Los grupos de ubicación no se pueden utilizar con instancias de tipo "m1.large". El lanzamiento
de la instancia EC2 ha producido un error. ......................................................................... 316
Client.InternalError: Error del cliente en el lanzamiento. ......................................................... 316
En la actualidad, no dispone de suficiente <instance type> capacidad en la zona de
disponibilidad que ha solicitado... El lanzamiento de la instancia EC2 ha producido un error. ........ 317
No hay capacidad puntual disponible que coincida con su solicitud. El lanzamiento de la
instancia EC2 ha producido un error. ................................................................................. 317
Ya se están ejecutando <número de instancias> instancias. El lanzamiento de la instancia EC2
ha producido un error. ..................................................................................................... 318
ProblAMI con el ...................................................................................................................... 318
El ID de AMI <ID de la AMI> no existe. El lanzamiento de la instancia EC2 ha producido un error. . 318
La AMI <ID de AMI> está pendiente y no se puede ejecutar. El lanzamiento de la instancia EC2
ha producido un error. ..................................................................................................... 319
El valor (<ID de AMI>) del parámetro virtualName no es válido. .............................................. 319
La arquitectura del tipo de instancia solicitado (i386) no coincide con la arquitectura del
manifiesto para ami-6622f00f (x86_64). El lanzamiento de la instancia EC2 ha producido un
error. ............................................................................................................................. 319
Problemas de carga ................................................................................................................ 319

vii
Auto Scaling de Amazon EC2 Guía del usuario

No se puede encontrar el balanceador de carga <su entorno de lanzamiento>. Error al validar la


configuración del balanceador de carga. ............................................................................. 320
No hay ningún balanceador de carga ACTIVO denominado <nombre del balanceador de carga>.
Error al actualizar la configuración del balanceador de carga. ................................................. 320
La instancia EC2 <ID de instancia> no está en VPC. Error al actualizar la configuración del
balanceador de carga. ..................................................................................................... 321
La instancia EC2 <ID de instancia> está en VPC. Error al actualizar la configuración del
balanceador de carga. ..................................................................................................... 321
Problemas de plantillas de lanzamiento ...................................................................................... 321
No tiene autorización para realizar esta operación ................................................................ 321
Comprobaciones de estado ...................................................................................................... 322
Se sacó de servicio una instancia en respuesta a un error de comprobación del estado de la
instancia EC2 ................................................................................................................. 322
Se sacó de servicio una instancia en respuesta a un reinicio programado de EC2 ...................... 323
Se sacó de servicio una instancia en respuesta a una comprobación de estado de EC2 que
indicaba que se había terminado o detenido ....................................................................... 323
Se sacó de servicio una instancia en respuesta a un error de comprobación de estado del
sistema ELB ................................................................................................................... 324
Recursos ....................................................................................................................................... 326
Historial de revisión ......................................................................................................................... 327
.................................................................................................................................................. cccxli

viii
Auto Scaling de Amazon EC2 Guía del usuario
Componentes de Auto Scaling

¿Qué es Amazon EC2 Auto Scaling


Amazon EC2 Auto Scaling lo ayuda a garantizar que tiene el número correcto de instancias Amazon EC2
disponibles para controlar la carga de su aplicación. Crea colecciones de instancias EC2, denominadas
grupos de Auto Scaling. Puede especificar el número mínimo de instancias en cada grupo de Auto Scaling
y Amazon EC2 Auto Scaling garantizará que el grupo nunca tenga menos de esas instancias. Puede
especificar el número máximo de instancias en cada grupo de Auto Scaling y Amazon EC2 Auto Scaling
garantizará que el grupo nunca tenga más de esas instancias. Si especifica la capacidad deseada, cuando
crea el grupo o con posterioridad, Amazon EC2 Auto Scaling garantiza que el grupo tenga ese número
de instancias. Si especifica políticas de escalado, Amazon EC2 Auto Scaling puede iniciar o terminar
instancias conforme aumente o disminuya la demanda de su aplicación.

Por ejemplo, el siguiente grupo de Auto Scaling tiene un tamaño mínimo de una instancia, una capacidad
deseada de dos instancias y un tamaño máximo de cuatro instancias. Las políticas de escalado que defina
ajustan el número de instancias, en el número mínimo y máximo de instancias, en función de los criterios
que especifique.

Para obtener más información acerca de los beneficios de Amazon EC2 Auto Scaling, consulteVentajas de
Amazon EC2 Auto Scaling (p. 3).

Componentes de Auto Scaling


En la siguiente tabla se describen los principales componentes de Amazon EC2 Auto Scaling.

Groups

Las instancias EC2 se organizan en grupos para que puedan tratarse


como una unidad lógica a efectos de escalado y administración.
Cuando crea un grupo, puede especificar su número mínimo,
máximo y deseado de instancias EC2. Para obtener más
información, consulte Grupos de Auto Scaling (p. 55).

Plantillas de configuración

Su grupo utiliza unLanzamiento de plantillas, o unconfiguración de


lanzamiento(no se recomienda, ofrece menos funciones) como una
plantilla de configuración para sus instancias EC2. Puede especificar
información como el ID de AMI, el tipo de instancia, el par de claves,
los grupos de seguridad y el mapeo de dispositivos de bloques para
las instancias. Para obtener más información, consulte Plantillas de
lanzamiento (p. 27) y Configuraciones de lanzamiento (p. 42).

1
Auto Scaling de Amazon EC2 Guía del usuario
Introducción

Opciones de escalado

Amazon EC2 Auto Scaling ofrece varias formas de escalar sus


grupo de Auto Scaling. Por ejemplo, puede configurar un grupo
para escalarlo basado en la aparición de determinadas condiciones
(escalado dinámico) o en una programación. Para obtener más
información, consulte Opciones de escalado (p. 123).

Introducción
Si es la primera vez que utiliza Amazon EC2 Auto Scaling, le recomendamos que consulteCiclo de vida de
instancias de Amazon EC2 Auto Scaling (p. 8)Antes de empezar.

Para empezar, complete elCómo empezar a utilizar Amazon EC2 Auto Scaling (p. 14)Para crear un
tutorial de Auto Scaling y ver cómo responde cuando termina una instancia de ese grupo. Si ya tiene
instancias EC2 en ejecución, puede crear un grupo de Auto Scaling mediante una instancia EC2 existente
y eliminar la instancia del grupo en cualquier momento.

Acceso a Amazon EC2 Auto Scaling


Si ha creado una cuenta de Amazon Web Services, puede tener acceso a Amazon EC2 Auto Scaling
iniciando sesión en laAWS Management Console, eligiendoEC2En la página de inicio de la consola de y, a
continuación, elijaGrupos de Auto ScalingEn el panel de navegación.

También puede tener acceso a Amazon EC2 Auto Scaling utilizando laAPI de Auto Scaling de Amazon
EC2. Auto Scaling de Amazon EC2 Estas solicitudes son solicitudes de HTTP o HTTPS que utilizan
los verbos GET o POST de HTTP y un parámetro de consulta denominado Action. Para obtener
más información acerca de las acciones de la API para Amazon EC2 Auto Scaling, consulteActionsen
laReferencia de API de Auto Scaling de Amazon EC2.

Si prefiere crear aplicaciones usando API específicas de un lenguaje en lugar de enviar una solicitud a
través de HTTP o HTTPS, AWS le proporciona bibliotecas, ejemplos de código, tutoriales y otros recursos
para desarrolladores de software. Estas bibliotecas proporcionan funciones básicas que automatizan
tareas como la firma criptográfica de las solicitudes o el tratamiento de las respuestas de error, facilitándole
así el comienzo. Para obtener más información, consulteAWSSDK y herramientas de.

Si prefiere utilizar una interfaz de línea de comandos, dispone de las siguientes opciones:

AWSInterfaz de línea de comandos (CLI)

Ofrece comandos para un amplio conjunto de productos de AWS y es compatible con Windows,
macOS y Linux. Para empezar, consulte la Guía del usuario de AWS Command Line Interface. Para
obtener más información, consulteAuto Scalingen laAWS CLIReferencia de los comandos de la.
AWSHerramientas de para Windows PowerShell

Ofrece comandos para un amplio conjunto de productos de AWS para los usuarios que utilizan scripts
en el entorno de PowerShell. Para empezar, consulte la Guía del usuario de AWS Tools for Windows
PowerShell. Para obtener más información, consulte laAWS Tools for PowerShellReferencia de
Cmdlet.

Para obtener información sobre las credenciales de acceso aAWS, consulteAWSCredenciales de


seguridad deen laReferencia general de Amazon Web Services. Para obtener información acerca de

2
Auto Scaling de Amazon EC2 Guía del usuario
Precios de Amazon EC2 Auto Scaling

las regiones y los puntos de enlace de las llamadas a Amazon EC2 Auto Scaling, consulte laRegiones y
puntos de enlaceEn la tabla deAWSReferencia general de.

Precios de Amazon EC2 Auto Scaling


No se aplican tarifas adicionales con Amazon EC2 Auto Scaling, por lo que es fácil probarlo y determinar
cómo puede beneficiar a suAWSarquitectura. Solo pagará por elAWS(por ejemplo, instancias de EC2,
volúmenes de EBS y alarmas de CloudWatch) que utilice.

Conformidad con DSS de PCI


Amazon EC2 Auto Scaling admite el procesamiento, el almacenamiento y la transmisión de datos de
tarjetas de crédito por parte de un comerciante o proveedor de servicios y se ha validado por estar
conforme con el Estándar de Seguridad de Datos para la Industria de Tarjeta de Pago (PCI DSS).
Para obtener más información acerca de PCI DSS, incluido cómo solicitar una copia del Paquete de
conformidad con PCI de AWS, consulte PCI DSS Nivel 1.

Servicios relacionados
Para distribuir automáticamente el tráfico entrante en la aplicación entre varias instancias de su grupo de
Auto Scaling, utilice Elastic Load Balancing. Para obtener más información, consulte la Guía del usuario de
Elastic Load Balancing.

Para monitorizar las estadísticas básicas de las instancias y los volúmenes de Amazon EBS, utilice
Amazon CloudWatch. Para obtener más información, consulte la Guía del usuario de Amazon CloudWatch.

Para configurar el escalado automático de recursos escalables para otros Amazon Web Services aparte de
Amazon EC2, consulte laGuía del usuario de la aplicación Auto Scaling.

Para monitorizar las llamadas efectuadas a la API de Amazon EC2 Auto Scaling para su cuenta,
utiliceAWS CloudTrail. Los datos registradas incluyen las llamadas realizadas por la AWS Management
Console, las herramientas de línea de comandos y otros servicios. Para obtener más información, consulte
la Guía del usuario de AWS CloudTrail.

Ventajas de Amazon EC2 Auto Scaling


Agregar Amazon EC2 Auto Scaling a su arquitectura de aplicaciones es una forma de obtener el máximo
provecho de laAWSNube. Cuando se utiliza Amazon EC2 Auto Scaling, sus aplicaciones disfrutan de los
siguientes beneficios:

• Mejor tolerancia a errores. Amazon EC2 Auto Scaling puede detectar cuándo una instancia está en
mal estado, terminarla y lanzar una instancia para sustituirla. También puede configurar Amazon EC2
Auto Scaling para que use varias zonas de disponibilidad. Si una zona de disponibilidad deja de estar
disponible, Amazon EC2 Auto Scaling puede lanzar instancias en otra para compensar.
• Mejor disponibilidad. Amazon EC2 Auto Scaling lo ayuda a garantizar que la aplicación tenga siempre la
capacidad adecuada para controlar la demanda de tráfico en cada momento.
• Mejor administración de costos. Amazon EC2 Auto Scaling puede aumentar y reducir de forma dinámica
la capacidad según sea necesario. Dado que se paga por las instancias EC2 que se utilizan, es posible
ahorrar dinero lanzando instancias cuando se necesitan y terminándolas cuando ya no son necesarias.

3
Auto Scaling de Amazon EC2 Guía del usuario
Ejemplo: Cubrir la demanda variable

Contenido
• Ejemplo: Cubrir la demanda variable (p. 4)
• Ejemplo: Arquitectura de aplicaciones web (p. 5)
• Ejemplo: Distribución de instancias entre zonas de disponibilidad (p. 6)
• Distribución de instancias (p. 7)
• Actividades de reequilibrio (p. 7)

Ejemplo: Cubrir la demanda variable


Para mostrar algunos de los beneficios de Amazon EC2 Auto Scaling, considere una aplicación web básica
que se ejecuta enAWS. Esta aplicación permite a los empleados buscar salas de conferencias para las
reuniones. Durante el comienzo y el final de la semana, el uso de esta aplicación es mínimo. A mitad
de semana, hay más empleados que programan reuniones, de modo que la demanda de la aplicación
aumenta de forma significativa.

En el siguiente gráfico se muestra cuánta capacidad de la aplicación se usa a lo largo de una semana.

Tradicionalmente, hay dos formas de planificar estos cambios de capacidad. La primera opción consiste en
agregar servidores suficientes para que la aplicación siempre tenga capacidad suficiente para satisfacer
la demanda. La desventaja de esta opción, sin embargo, es que hay días en que la aplicación no necesita
tanta capacidad. La capacidad adicional permanece sin utilizar y, en esencia, aumenta el costo de
mantener la aplicación en ejecución.

La segunda opción es tener capacidad suficiente para controlar la demanda media de la aplicación. Esta
opción es menos cara, ya que no necesita comprar equipos que utilizará solo de vez en cuando. Sin
embargo, existe el riesgo de que la experiencia del cliente se vea afectada si la demanda de la aplicación
supera su capacidad.

4
Auto Scaling de Amazon EC2 Guía del usuario
Ejemplo: Arquitectura de aplicaciones web

Añadiendo Amazon EC2 Auto Scaling a esta aplicación, dispone de una tercera opción. Puede añadir
nuevas instancias a la aplicación solo cuando sea necesario y terminarlas cuando ya no las necesite.
Como Amazon EC2 Auto Scaling utiliza instancias EC2, solo tiene que pagar por las instancias que utilice,
cuando las utilice. Ahora tiene una arquitectura rentable que proporciona la mejor experiencia a los clientes
a la vez que se minimizan los gastos.

Ejemplo: Arquitectura de aplicaciones web


En un escenario de aplicación web común, ejecuta varias copias de su aplicación de forma simultánea
para cubrir el volumen del tráfico de sus clientes. Estas copias múltiples de la aplicación se alojan en
instancias EC2 idénticas (servidores en la nube), cada una de las cuales tramita solicitudes de los clientes.

5
Auto Scaling de Amazon EC2 Guía del usuario
Ejemplo: Distribución de instancias
entre zonas de disponibilidad

Amazon EC2 Auto Scaling administra el lanzamiento y la terminación de estas instancias EC2 en su
nombre. Usted define un conjunto de criterios (como una alarma de Amazon CloudWatch) que determinan
cuándo el grupo de Auto Scaling lanza o termina instancias EC2. Agregar grupos de Auto Scaling a su
arquitectura de red ayuda a aumentar la disponibilidad y la tolerancia a errores de la aplicación.

Puede crear todos los grupos de Auto Scaling que necesite. Por ejemplo, puede crear un grupo de Auto
Scaling para cada capa.

Para distribuir el tráfico entre las instancias de su grupo de Auto Scaling, puede introducir un balanceador
de carga en su arquitectura. Para obtener más información, consulte Elastic Load Balancing (p. 90).

Ejemplo: Distribución de instancias entre zonas de


disponibilidad
AWSComo las instancias EC2, se alojan en centros de datos de alta disponibilidad. Para proporcionar
escalabilidad y fiabilidad adicionales, estos centros de datos están en ubicaciones físicas diferentes.
Las regiones son ubicaciones grandes dispersas por toda la geografía. Cada región contiene varias
ubicaciones separadas, denominadas zonas de disponibilidad, que están diseñadas para estar aisladas
de los errores que ocurran en las demás zonas de disponibilidad. Proporcionan conectividad de red
económica y de baja latencia con las demás zonas de disponibilidad dentro de la misma región.

Amazon EC2 Auto Scaling le permite beneficiarse de la seguridad y la fiabilidad de la redundancia


geográfica repartiendo los grupos de Auto Scaling entre varias zonas de disponibilidad dentro de
una región. Cuando una zona de disponibilidad pasa a tener un estado incorrecto o deja de estar
disponible, Auto Scaling lanza nuevas instancias en la zona de disponibilidad afectada. Cuando la zona de
disponibilidad en mal estado vuelve a tener un estado correcto, Auto Scaling redistribuye automáticamente
las instancias de la aplicación de manera uniforme por todas las zonas de disponibilidad designadas.

6
Auto Scaling de Amazon EC2 Guía del usuario
Ejemplo: Distribución de instancias
entre zonas de disponibilidad

Un grupo de Auto Scaling puede contener instancias EC2 en una o varias zonas de disponibilidad dentro
de la misma región. Sin embargo, los grupos de Auto Scaling no pueden abarcar varias regiones.

Para los grupos de Auto Scaling en una VPC, las instancias EC2 se lanzan en subredes. Usted selecciona
las subredes para las instancias EC2 cuando crea o actualiza el grupo de Auto Scaling. Puede seleccionar
una o varias subredes por zona de disponibilidad. Para obtener más información, consulteVPC y
subredesen laAmazon VPC User Guide.

Distribución de instancias
Amazon EC2 Auto Scaling intenta distribuir las instancias de manera uniforme entre las zonas de
disponibilidad que están habilitadas para su grupo de Auto Scaling. Para ello, Amazon EC2 Auto Scaling
intenta lanzar nuevas instancias en la zona de disponibilidad con el menor número de instancias. Si el
intento fracasa, Amazon EC2 Auto Scaling intenta lanzar las instancias en otra zona de disponibilidad
hasta que lo logra. Para los grupos de Auto Scaling de una VPC, si hay varias subredes en una zona
de disponibilidad, Amazon EC2 Auto Scaling selecciona una subred de la zona de disponibilidad
aleatoriamente.

Actividades de reequilibrio
Las actividades de reequilibrio se dividen en dos categorías: Reequilibrio de la zona de disponibilidad y
reequilibrio de capacidad.

7
Auto Scaling de Amazon EC2 Guía del usuario
Ciclo de vida de la instancia

Availability Zone (Reequilibrado)

Cuando se producen determinadas acciones, su grupo de Auto Scaling puede quedar desequilibrado entre
las zonas de disponibilidad. Amazon EC2 Auto Scaling compensa este desequilibrio reequilibrando las
zonas de disponibilidad. Las siguientes acciones pueden derivar en una actividad de reequilibrio:

• Cambia las zonas de disponibilidad del grupo.


• Termina o desasocia instancias de forma explícita y el grupo queda desequilibrado.
• Una zona de disponibilidad que anteriormente tenía capacidad insuficiente se recupera y ahora tiene
capacidad adicional disponible.
• Una zona de disponibilidad que anteriormente tenía un precio de spot superior a su precio máximo ahora
tiene un precio de spot inferior a su precio máximo.

Cuando se reequilibrio, Amazon EC2 Auto Scaling lanza nuevas instancias antes de terminar las antiguas,
por lo que no se pone en peligro el desempeño ni la disponibilidad de su aplicación.

Como Amazon EC2 Auto Scaling intenta lanzar nuevas instancias antes de terminar las antiguas, el
hecho de satisfacer por completo o casi la capacidad máxima especificada podría impedir o detener
completamente las actividades de reequilibrio. Para evitar este problema, el sistema puede superar
temporalmente la capacidad máxima especificada de un grupo en un margen del 10% (o en un margen
de 1 instancia, lo que sea mayor) durante una actividad de reequilibrio. El margen solo se amplía si el
grupo tiene o se aproxima a la capacidad máxima y necesita reequilibrarse, ya sea por una distribución de
zonas solicitada por el usuario o para compensar los problemas de disponibilidad de zona. La extensión se
mantiene solamente mientras sea necesaria para reequilibrar el grupo (normalmente unos minutos).

Reequilibrio de la capacidad

Puede habilitar el reequilibrio de capacidad para los grupos de Auto Scaling cuando utilice instancias
puntuales. Cuando activa el reequilibrio de capacidad, Amazon EC2 Auto Scaling intenta lanzar una
instancia de spot siempre que Amazon EC2 notifique que una instancia de spot tiene un riesgo elevado
de interrupción. Después de iniciar una nueva instancia, finaliza una instancia antigua. Para obtener más
información, consulte Reequilibrio de capacidad de Amazon EC2 Auto Scaling de Amazon EC2 (p. 242).

Ciclo de vida de instancias de Amazon EC2 Auto


Scaling
Las instancias EC2 de un grupo de Auto Scaling tienen una ruta o ciclo de vida que difiere de las de otras
instancias EC2. El ciclo de vida comienza cuando el grupo de Auto Scaling lanza una instancia y la pone
en servicio. El ciclo de vida finaliza cuando el usuario termina la instancia o el grupo de Auto Scaling retira
la instancia del servicio y la termina.
Note

Las instancias se cobran en cuanto se lanzan, incluido el tiempo en que aún no están en servicio.

En la siguiente ilustración se muestran las transiciones entre los estados de la instancia en el ciclo de vida
de Amazon EC2 Auto Scaling.

8
Auto Scaling de Amazon EC2 Guía del usuario
Escalado ascendente

Escalado ascendente
Los siguientes eventos de escalado descendente indican al grupo de Auto Scaling que lance instancias
EC2 y las asocie al grupo:

• Aumenta manualmente el tamaño del grupo. Para obtener más información, consulte Escale manual
para Amazon EC2 Auto Scaling (p. 126).
• Crea una política de escalado para aumentar automáticamente el tamaño del grupo en función del
aumento de la demanda especificado. Para obtener más información, consulte Escale dinámico para
Amazon EC2 Auto Scaling (p. 135).
• Configura el escalado basado en programación para aumentar el tamaño del grupo en un momento
determinado. Para obtener más información, consulte Escale programado para Amazon EC2 Auto
Scaling (p. 178).

Cuando se produce un evento de escalado ascendente, el grupo de Auto Scaling lanza el número
necesario de instancias EC2, utilizando su configuración de lanzamiento asignada. Estas instancias
comienzan en el estado Pending. Si añade un enlace de ciclo de vida a su grupo de Auto Scaling, puede
realizar una acción personalizada aquí. Para obtener más información, consulte Enlaces de ciclo de
vida (p. 10).

Cuando cada instancia está totalmente configurada y supera las comprobaciones de estado de Amazon
EC2, se asocia al grupo de Auto Scaling y pasa a tener elInServiceEstado. La instancia se tendrá en
cuenta para calcular la capacidad deseada del grupo de Auto Scaling.

Instancias en servicio
Las instancias permanecen en el estado InService hasta que se produce alguna de las siguientes
situaciones:

• Se produce un evento de escalado ascendente y Amazon EC2 Auto Scaling decide terminar esta
instancia para reducir el tamaño del grupo de Auto Scaling. Para obtener más información, consulte
Controlar qué instancias de Auto Scaling terminan durante la escala en (p. 215).
• Coloca la instancia en estado Standby. Para obtener más información, consulte Entrar y salir del modo
de espera (p. 11).
• Desasocia la instancia del grupo de Auto Scaling. Para obtener más información, consulte Desasociar
una instancia (p. 10).

9
Auto Scaling de Amazon EC2 Guía del usuario
Escalado en

• La instancia no supera el número necesario de comprobaciones de estado, por lo que se elimina


del grupo de Auto Scaling, se termina y se reemplaza. Para obtener más información, consulte
Comprobaciones de Health para instancias de Auto Scaling (p. 239).

Escalado en
Los siguientes eventos de escalado descendente indican al grupo de Auto Scaling que desasocie las
instancias EC2 del grupo y las termine:

• Reduce manualmente el tamaño del grupo. Para obtener más información, consulte Escale manual para
Amazon EC2 Auto Scaling (p. 126).
• Crea una política de escalado para reducir automáticamente el tamaño del grupo en función de la
reducción de la demanda especificada. Para obtener más información, consulte Escale dinámico para
Amazon EC2 Auto Scaling (p. 135).
• Configura el escalado basado en programación para reducir el tamaño del grupo en un momento
determinado. Para obtener más información, consulte Escale programado para Amazon EC2 Auto
Scaling (p. 178).

Es importante que, cada vez que cree un evento de escalado ascendente, cree también un evento de
escalado descendente correspondiente. De esta forma, se asegurará de que los recursos asignados a la
aplicación coinciden lo máximo posible con la demanda de esos recursos.

Cuando se produce un evento de escalado descendente, el grupo de Auto Scaling termina una o varias
instancias. El grupo de Auto Scaling utiliza su política de terminación para determinar qué instancias
debe terminar. Las instancias que se encuentran en proceso de terminación del grupo de Auto Scaling y
terminación adoptan laTerminating, y no se puede volver a poner en servicio. Si añade un enlace de
ciclo de vida a su grupo de Auto Scaling, puede realizar una acción personalizada aquí. Por último, las
instancias se terminan completamente y adoptan el estado Terminated.

Asociar una instancia


Puede asociar una instancia EC2 en ejecución que cumpla determinados criterios a su grupo de Auto
Scaling. Una vez que la instancia se ha asociado, se administra como parte del grupo de Auto Scaling.

Para obtener más información, consulte Adjunte instancias de EC2 al grupo de Auto Scaling (p. 128).

Desasociar una instancia


Puede desasociar una instancia de su grupo de Auto Scaling. Una vez que la instancia se ha desasociado,
puede administrarla por separado del grupo de Auto Scaling o asociarla a otro grupo de Auto Scaling.

Para obtener más información, consulte Para desasociar instancias EC2 del grupo de Auto
Scaling (p. 132).

Enlaces de ciclo de vida


Puede añadir un enlace de ciclo de vida a su grupo de Auto Scaling para realizar acciones personalizadas
cuando las instancias se lanzan y se terminan.

Cuando Amazon EC2 Auto Scaling responde a un evento de escalado descendente, lanza
una o varias instancias. Estas instancias comienzan en el estado Pending. Si ha agregado
unautoscaling:EC2_INSTANCE_LAUNCHINGEl enlace de ciclo de vida a su grupo de Auto Scaling, las
instancias pasan delPendingEstado a la.Pending:WaitEstado. Una vez completada la acción de ciclo

10
Auto Scaling de Amazon EC2 Guía del usuario
Entrar y salir del modo de espera

de vida, las instancias adoptan el estado Pending:Proceed. Cuando las instancias están totalmente
configuradas, se asocian al grupo de Auto Scaling y adoptan laInServiceEstado.

Cuando Amazon EC2 Auto Scaling responde a un evento de escalado descendente, termina una o varias
instancias. Estas instancias se desasocian del grupo de Auto Scaling y adoptan laTerminatingEstado.
Si ha agregado unautoscaling:EC2_INSTANCE_TERMINATINGEl enlace de ciclo de vida a su grupo
de Auto Scaling, las instancias pasan delTerminatingEstado a la.Terminating:WaitEstado. Una vez
completada la acción de ciclo de vida, las instancias adoptan el estado Terminating:Proceed. Cuando
las instancias se terminan completamente, adoptan el estado Terminated.

Para obtener más información, consulte Enganches de ciclo de vida de Amazon EC2 Auto
Scaling (p. 184).

Entrar y salir del modo de espera


Puede poner cualquier instancia que tenga un estado InService en estado Standby. Esto le permite
retirar la instancia del servicio, solucionar un problema o realizar cambios en ella y ponerla de nuevo en
servicio.

Instancias en unStandbyEl estado sigue estando administrado por el grupo de Auto Scaling. Sin embargo,
no son parte activa de la aplicación hasta que las pone de nuevo en servicio.

Para obtener más información, consulte Eliminación temporal de instancias del grupo de Auto
Scaling (p. 228).

Cuotas de servicio de Amazon EC2 Auto Scaling


Su cuenta Amazon Web Services EC2 Auto Scaling tiene las siguientes cuotas predeterminadas para
(anteriormente se denominaban «límites»).

Cuotas predeterminadas

• Configuraciones de lanzamiento por región: 200


• Grupos de Auto Scaling por región: 200

Para ver las cuotas actuales de su cuenta, abra la consola de Amazon EC2 enhttps://
console.aws.amazon.com/ec2/y vaya a la.Límites(Se ha creado el certificado). También puede utilizar
el comando describe-account-limits . Para solicitar un aumento, utilice el formulario de límites de Auto
Scaling.

Cuotas de grupo de Auto Scaling

• Políticas de escalado por grupo de Auto Scaling: 50


• Acciones programadas por grupo de Auto Scaling: 125
• Enlace del ciclo de vida por grupo de Auto Scaling: 50
• Temas de SNS por grupo de Auto Scaling: 10
• Instancias de Classic Load Balance por grupo de Auto Scaling: 50
• Grupos de destino por grupo de Auto Scaling: 50

Escalado de políticas

• Ajustes de pasos por política de escalado: 20

11
Auto Scaling de Amazon EC2 Guía del usuario
Cuotas de servicio

Límites específicos de API

• Puede utilizar AttachInstances, DetachInstances, EnterStandby y ExitStandby con hasta 20


identificadores de instancias a la vez.
• Puede utilizar AttachLoadBalancers y DetachLoadBalancers con hasta 10 balanceadores de
carga a la vez.
• Puede utilizar AttachLoadBalancerTargetGroups y DetachLoadBalancerTargetGroups con
hasta 10 grupos de destino a la vez.
• Puede usarSetInstanceProtectioncon como máximo 50 instancias a la vez.

Para obtener información acerca de las cuotas de servicio para otros Amazon Web Services,
consulteCuotas y puntos de enlace de servicioen laReferencia general de Amazon Web Services.

12
Auto Scaling de Amazon EC2 Guía del usuario
Inscribirse en una Cuenta de AWS

Configuración de Amazon EC2 Auto


Scaling
Antes de empezar a utilizar Amazon EC2 Auto Scaling, realice las siguientes tareas.

Tareas
• Inscribirse en una Cuenta de AWS (p. 13)
• Prepárese para utilizar Amazon EC2 (p. 13)
• Instalar la AWS CLI (p. 13)

Inscribirse en una Cuenta de AWS


Al suscribirse a una cuenta en Amazon Web Services, su cuenta se inscribe automáticamente en todos los
Amazon Web Services. Solo pagará por los servicios que utilice. Puede utilizar Amazon EC2 Auto Scaling
sin cargo adicional, aparte de lo que paga por las instancias EC2.

Si no dispone de una Cuenta de AWS Al inscribirse en una cuenta de la siguiente manera.

Para registrarse y obtener una cuenta de

1. Abra https://portal.aws.amazon.com/billing/signup.
2. Siga las instrucciones en línea.

Parte del procedimiento de inscripción consiste en recibir una llamada telefónica e indicar un código de
verificación en el teclado del teléfono.

AWS le enviará un email de confirmación luego de completar el proceso de registro.

Prepárese para utilizar Amazon EC2


Si no ha utilizado Amazon EC2 anteriormente, realice las tareas que se describen en la documentación
de Amazon EC2. Para obtener más información, consulteConfiguración de Amazon EC2en laGuía del
usuario de Amazon EC2 para instancias de LinuxorConfiguración de Amazon EC2en laGuía del usuario de
Amazon EC2 para instancias de Windows.

Instalar la AWS CLI


Para utilizarAWS CLICon Amazon EC2 Auto Scaling, instale la últimaAWS CLIVersión de . Para obtener
información acerca de cómo instalar laAWS CLIo actualizarla a la versión más reciente, consulteInstalación
de laAWSInterfaz de línea de comandos deen laAWS Command Line InterfaceGuía del usuario.

13
Auto Scaling de Amazon EC2 Guía del usuario
Resumen del tutorial

Cómo empezar a utilizar Amazon


EC2 Auto Scaling
Cuando use Amazon EC2 Auto Scaling, debe utilizar determinados componentes básicos para empezar.
En este tutorial le guiará por el proceso de configuración de componentes básicos para crear una
infraestructura básica para Auto Scaling de Amazon EC2.

Antes de crear un grupo de Auto Scaling para usarlo con la aplicación, revise la aplicación a fondo
mientras se ejecuta en la secciónAWS- Nube. Considere lo siguiente:

• Entre cuántas zonas de disponibilidad debe distribuirse el grupo de Auto Scaling.


• Qué recursos existentes se pueden utilizar, como grupos de seguridad o imágenes de máquina de
Amazon (AMI).
• Si desea escalar para aumentar o disminuir la capacidad, o solo desea asegurarse de que siempre haya
un número específico de servidores en funcionamiento. Tenga en cuenta que Amazon EC2 Auto Scaling
puede hacer ambas cosas a la vez.
• Qué métricas son más relevantes para el rendimiento de la aplicación.
• Cuánto tiempo tarda en lanzar y configurar un servidor.

Cuanto mejor conozca su aplicación, mayor será la eficacia de su arquitectura de Auto Scaling.

Tareas
• Resumen del tutorial (p. 14)
• Prepararse para el tutorial (p. 15)
• Paso 1: Crear una plantilla de lanzamiento (p. 15)
• Paso 2: Cree un grupo de Auto Scaling de instancia única (p. 17)
• Paso 3: Compruebe el grupo de Auto Scaling (p. 17)
• Paso 4: Terminar una instancia en el grupo de Auto Scaling (p. 18)
• Paso 5: Pasos siguientes (p. 18)
• Paso 6: Eliminar recursos (p. 19)

Resumen del tutorial


En este tutorial, usted:

• Cree una plantilla de configuración que defina las instancias EC2. Puede elegir la plantilla de
lanzamiento o las instrucciones de la configuración de lanzamiento. Aunque puede utilizar una
configuración de lanzamiento, le recomendamos una plantilla de lanzamiento para que pueda utilizar las
funcionalidades más recientes de Amazon EC2 y Amazon EC2 Auto Scaling.
• Cree un grupo de Auto Scaling con una instancia única.
• Finalice la instancia y compruebe que la instancia se quitó del servicio y se reemplazó. Para mantener
un número constante de instancias, Amazon EC2 Auto Scaling detecta y responde automáticamente a
las comprobaciones de estado y accesibilidad de Amazon EC2.

Si ha creado suAWShace menos de 12 meses, y aún no han superado elCapa gratuitaPara Amazon EC2,
no le supondrá ningún costo completar este tutorial, porque le ayudamos a seleccionar un tipo de instancia
que esté dentro de los beneficios de capa gratuita. De lo contrario, cuando se este tutorial, se aplicarán

14
Auto Scaling de Amazon EC2 Guía del usuario
Prepararse para el tutorial

cargos por uso de Amazon EC2 estándar desde el momento en que se lanza la instancia hasta que se
elimina el grupo de Auto Scaling (que es la última tarea de este tutorial) y el estado de la instancia cambia
a.terminated.

Prepararse para el tutorial


En este tutorial se presupone que está familiarizado con el lanzamiento de instancias EC2 y que ya ha
creado un key pair y un grupo de seguridad. Para obtener más información, consulteConfiguración de
Amazon EC2en laGuía del usuario de Amazon EC2 para instancias de Linux.

Si es nuevo en Amazon EC2 Auto Scaling y desea empezar a utilizar el servicio, puede utilizar
elpredeterminadaVPC deAWSaccount. La VPC predeterminada incluye una subred pública
predeterminada en cada zona de disponibilidad y una gateway de Internet asociada a la VPC. Puede ver
sus VPC en laPágina de VPCEn la consola de Amazon Virtual Private Cloud (Amazon VPC).

Tenga en cuenta que todos los procedimientos siguientes son para la nueva consola.

Paso 1: Crear una plantilla de lanzamiento


En este paso, usted inicia sesión en la consola de Amazon EC2 con suAWSCree una plantilla de
lanzamiento que especifique el tipo de instancia EC2 que crea Auto Scaling Amazon EC2. Incluya
información como el ID de la imagen de Amazon Machine (AMI) que se va a utilizar, el tipo de instancia, el
key pair y los grupos de seguridad.
Note

También puede utilizar una configuración de lanzamiento para crear un grupo de Auto Scaling en
lugar de utilizar una plantilla de lanzamiento. Para obtener las instrucciones de la configuración de
lanzamiento, consulte Create a launch configuration.

Para crear una plantilla de lanzamiento

1. Abra la consola de Amazon EC2.


2. En la barra de navegación de la parte superior de la pantalla, seleccione unaAWSRegión . Los
recursos de Auto Scaling de Amazon EC2 que crea se asocian a la región que especifique.
3. En el panel de navegación izquierdo, elijaPlantillas de lanzamientoHaga clic en y luego enCrear
plantilla de lanzamiento.
4. ParaNombre de plantillaintroduzcamy-template-for-auto-scaling.
5. UNDERGuía de Auto ScalingEn, seleccione la casilla de verificación.
6. ParaImagen de máquina de Amazon (AMI)Elija una versión de Amazon Linux 2 (HVM) en la listaQuick
Start (Inicio rápido)lista de. La AMI sirve de plantilla de configuración básica para sus instancias.
7. En Instance type (Tipo de instancia), elija una configuración de hardware que sea compatible con la
AMI que ha especificado.
Note

Si su cuenta tiene menos de 12 meses de antigüedad, puede utilizar una instancia t2.micro
de manera gratuita con determinados límites de uso. Para obtener más información,
consulteAWSCapa gratuita.
8. (Opcional) Para Key pair name (Nombre del par de claves), elija un par de claves existente. Los pares
de claves se utilizan durante la conexión SSH a una instancia de Amazon EC2. La conexión a una
instancia no se incluye como parte de este tutorial. Por lo tanto, no tiene que especificar un par de
claves a menos que tenga la intención de conectarse a su instancia.
9. LEAVEPlataforma deestablecido enVPC:.

15
Auto Scaling de Amazon EC2 Guía del usuario
Paso 1: Crear una plantilla de lanzamiento

10. ParaGrupos de seguridadSeleccione un grupo de seguridad en la misma VPC que piensa utilizar
como VPC para el grupo de Auto Scaling. Si no especifica ningún grupo de seguridad, la instancia se
asocia automáticamente al grupo de seguridad predeterminado de la VPC.
11. Puedes irteInterfaces de redVacío. Al dejar esta configuración vacía se crea una interfaz de red
principal con direcciones IP que seleccionamos para su instancia (en función de la subred a la que
está establecida la interfaz de red). Si en su lugar elige especificar una interfaz de red, el grupo de
seguridad debe formar parte de ella.
12. Elija Create launch template (Crear plantilla de lanzamiento).
13. En la página de confirmación, seleccioneGrupo de Auto Scaling.

Si actualmente no está utilizando plantillas de lanzamiento y prefiere no crear ninguna ahora, puede crear
una configuración de lanzamiento en su lugar.

Una configuración de lanzamiento es similar a una plantilla de lanzamiento, ya que especifica el tipo de
instancia EC2 que Amazon EC2 Auto Scaling crea automáticamente. Cree la configuración de lanzamiento
incluyendo información como, por ejemplo, el ID de la imagen de Amazon Machine (AMI) que se va a
utilizar, el tipo de instancia, el key pair y los grupos de seguridad.

Para crear una configuración de lanzamiento

1. Abra el iconoPágina Launchde la consola de Amazon EC2.


2. En la barra de navegación, seleccione unaAWSRegión . Los recursos de Auto Scaling de que crea se
asocian a la región que especifique.
3. SeleccionarCrear una configuración de lanzamientoY a continuación, introduzcamy-first-launch-
configurationen laNombre.
4. ParaImagen de máquina de Amazon (AMI)Elija una AMI. Para encontrar una AMI específica,
puedeencontrar una AMI adecuada, anote su ID e introduzca el ID como criterio de búsqueda.

Para obtener el ID de la AMI de Amazon Linux 2:

a. Abra la consola de Amazon EC2.


b. En el panel de navegación, enInstancias, elijaInstanciasHaga clic en y luego enLanzar instancias.
c. En la páginaQuick Start (Inicio rápido)delPágina Choose an Amazon Machine Image (Elegir una
Amazon Machine Image)Anote el ID de la AMI junto aAMI de Amazon Linux 2 (HVM). Observe
que esta AMI está marcada como «Free tier eligible» (Apta para la capa
5. ParaTipo de instanciaSeleccione una configuración de hardware para su instancia.
Note

Si su cuenta tiene menos de 12 meses de antigüedad, puede utilizar una instancia t2.micro
de manera gratuita con determinados límites de uso. Para obtener más información,
consulteAWSCapa gratuita.
6. UNDERConfiguración adicional, paraDetalles avanzados,Tipo de dirección IPHaga una selección
de. Para proporcionar conectividad a Internet a las instancias de una VPC, elija una opción que
asigne una dirección IP pública. Si una instancia se lanza en una VPC predeterminada, el valor
predeterminado es asignar una dirección IP pública. Si desea proporcionar conectividad a Internet a la
instancia pero no sabe con seguridad si dispone de una VPC predeterminada, elija Assign a public IP
address to every instance (Asignar una dirección IP pública a cada instancia).
7. ParaGrupos de seguridadSeleccione un grupo de seguridad existente. Si deja elCrear un nuevo grupo
de seguridadseleccionada, se configura una regla SSH predeterminada para las instancias de Amazon
EC2 que ejecutan Linux. Se configura una regla RDP predeterminada para instancias de Amazon EC2
que ejecutan Windows.
8. ParaPar de claves (inicio de sesión), elija una opción enOpciones de par de clavessegún las
instrucciones. La conexión a una instancia no se incluye como parte de este tutorial. Por tanto, puede
seleccionar Proceed without a key pair a menos que pretenda conectarse a la instancia.

16
Auto Scaling de Amazon EC2 Guía del usuario
Paso 2: Cree un grupo de Auto Scaling de instancia única

9. Elija Create launch configuration.


10. Seleccione la casilla de verificación junto al nombre de la nueva configuración de lanzamiento y
elijaActions,Grupo de Auto Scaling.

Paso 2: Cree un grupo de Auto Scaling de instancia


única
Ahora use Amazon EC2 Auto Scaling para crear un grupo de Auto Scaling y añadir la plantilla de
lanzamiento o la configuración de lanzamiento al grupo de. Incluya también información como las subredes
de VPC para las instancias.

Utilice el siguiente procedimiento para continuar donde lo dejó después de crear una plantilla de
lanzamiento o una configuración de lanzamiento.

Para crear un grupo de Auto Scaling

1. En la páginaElija la plantilla de lanzamiento o la configuración page, for Nombre de grupo de Auto


Scalingintroduzcamy-first-asg.
2. Seleccione Siguiente.

Aparece la página Configure settings (Configurar ajustes), que le permite configurar los ajustes de
red y le ofrece opciones para lanzar instancias bajo demanda e instancias de spot en varios tipos de
instancia (si elige una plantilla de lanzamiento).
3. [Solo plantilla de lanzamiento] MantenerOpciones de compra y tipos de instanciaestablecido
enAdherirse a la plantilla de lanzamiento.
4. ConservarRedConfigure la VPC predeterminada para suAWSEn la región o seleccione su propia VPC.
La VPC predeterminada se configura automáticamente para proporcionar conectividad a Internet a la
instancia. Esta VPC incluye una subred pública en cada zona de disponibilidad de la región.
5. En Subnet (Subred), elija una subred de cada zona de disponibilidad que desee incluir. Utilice
subredes en varias zonas de disponibilidad para lograr una alta disponibilidad.
6. Mantenga el resto de los valores predeterminados para este tutorial y elija Skip to review (Omitir para
revisar).
Note
El tamaño inicial del grupo está determinado por su capacidad deseada. El valor
predeterminado es instancia 1.
7. En la páginaReview (Revisar)En la página de, revise la información del grupo de y, a continuación,
elijaGrupo de Auto Scaling.

Paso 3: Compruebe el grupo de Auto Scaling


Ahora que ha creado un grupo de Auto Scaling, está listo para verificar si el grupo ha lanzado una instancia
EC2.

Para verificar si el grupo de Auto Scaling ha lanzado una instancia EC2

1. Abra el iconoPágina Grupos de Auto ScalingEn la consola de Amazon EC2.


2. Seleccione la casilla de verificación junto al grupo de Auto Scaling que acaba de crear.

Se abre un panel dividido en la parte inferior de la página Grupos de Auto Scaling, que muestra
información sobre el grupo. La primera pestaña disponible es laDetalles deEn ella se muestra
información sobre el grupo de Auto Scaling de.

17
Auto Scaling de Amazon EC2 Guía del usuario
Paso 4: Terminar una instancia en el grupo de Auto Scaling

3. Seleccione la segunda pestaña, Activity (Actividad). UNDERHistorial de actividadPuede ver el


progreso de las actividades que están asociadas al grupo de Auto Scaling. La columna Status
(Estado) muestra el estado actual de su instancia. Mientras se está lanzando la instancia, la columna
de estado muestra PreInService. El estado cambia a Successful cuando se lanza la instancia.
También puede utilizar el botón de actualización para ver el estado actual de la instancia.
4. En la pestaña Instance management (Administración de instancia), en Instances (Instancias), puede
ver el estado de la instancia.
5. Compruebe que la instancia se ha lanzado correctamente. La instancia tarda poco tiempo en lanzarse.

La columna Lifecycle (Ciclo de vida) muestra el estado de su instancia. Al principio, la instancia tiene
el estado Pending. Cuando una instancia está lista para recibir tráfico, su estado es InService.

La columna Health status (Estado) muestra el resultado de la comprobación de estado de instancias


EC2 correspondiente a su instancia.

Paso 4: Terminar una instancia en el grupo de Auto


Scaling
Siga estos pasos para obtener más información sobre el funcionamiento de Auto Scaling de Amazon EC2,
específicamente, cómo lanza nuevas instancias cuando sea necesario. El tamaño mínimo del grupo de
Auto Scaling de que creó en este aprendizaje es una instancia. Por lo tanto, si termina la instancia en
ejecución, Amazon EC2 Auto Scaling debe lanzar una instancia nueva para sustituirla.

1. Abra el iconoPágina Grupos de Auto ScalingEn la consola de Amazon EC2.


2. Seleccione la casilla de verificación junto a su grupo de Auto Scaling.
3. En la pestaña Instance management (Administración de instancias), en Instances (Instancias),
seleccione el ID de la instancia.

Esto le lleva aInstanciasEn la consola de Amazon EC2, donde puede terminar la instancia.
4. Elija Actions (Acciones), Instance State (Estado de la instancia), Terminate (Terminar). Cuando se le
pida confirmación, elija Yes, Terminate.
5. En el panel de navegación, elija AUTO SCALING y elija Auto Scaling Groups (Grupos de Auto
Scaling). Seleccione el grupo de Auto Scaling y elija laActividadPestaña.

El periodo de recuperación predeterminado del grupo de Auto Scaling es de 300 segundos (5


minutos), por lo que pasarán unos 5 minutos hasta que pueda ver la actividad de escaling. En el
historial de actividad, cuando comience la actividad de escalado, verá una entrada para la terminación
de la primera instancia y una entrada para el lanzamiento de una nueva instancia.
6. En la pestaña Instance management (Administración de instancias), la sección Instances (Instancias)
muestra solo la nueva instancia.
7. En el panel de navegación, en INSTANCES (Instancias), elija Instances (Instancias). Esta página
muestra la instancia terminada y la nueva instancia en ejecución.

Paso 5: Pasos siguientes


Vaya al siguiente paso si desea eliminar la infraestructura básica para el escalado automático que acaba
de crear. De lo contrario, puede utilizar esta infraestructura como punto de partida y realizar alguna de las
siguientes operaciones:

• Escale manualmente el grupo de Auto Scaling. Para obtener más información, consulte Escalado
manual (p. 126).

18
Auto Scaling de Amazon EC2 Guía del usuario
Paso 6: Eliminar recursos

• Aprenda a escalar automáticamente donde haya cambios en la utilización de recursos. Si la carga


aumenta, el grupo de Auto Scaling puede escalar (añadir instancias) para gestionar la demanda. Para
obtener más información, consulte Políticas de escalado de seguimiento de destino (p. 138).
• Configure una notificación de SNS para recibir una notificación cada vez que el grupo de Auto Scaling
inicie o termine instancias. Para obtener más información, consulte Supervisión con notificaciones de
Amazon SNS (p. 259).

Paso 6: Eliminar recursos


Puede eliminar la infraestructura de escalado o eliminar únicamente el grupo de Auto Scaling y conservar
la plantilla de lanzamiento o la configuración de lanzamiento para usarla en otro momento.

Si ha iniciado una instancia que no está dentro de laAWSCapa gratuitaPara evitar cargos adicionales, debe
terminar la instancia. Cuando termine la instancia, los datos asociados con ella también se eliminarán.

Para eliminar el grupo de Auto Scaling

1. Abra el iconoPágina Grupos de Auto ScalingEn la consola de Amazon EC2.


2. Seleccione el grupo de Auto Scaling (my-first-asg).
3. Seleccione Delete (Eliminar). Cuando se le pida confirmación, seleccione Delete (Eliminar).

Un icono de carga en el cuadro de diálogoNombreLa columna indica que el grupo de Auto


Scaling se ha eliminado. Cuando se ha producido la eliminación, elDeseado,Mín (Mínimo), yMax
(Máximo)SHOW0Para el grupo de Auto Scaling. Se tarda unos minutos en terminar la instancia y
eliminar el grupo. Actualice la lista para ver el estado actual.

Omita el procedimiento siguiente si desea mantener su plantilla de lanzamiento.

Para eliminar la plantilla de lanzamiento

1. Abra la consola de Amazon EC2.


2. En el panel de navegación, en INSTANCES (Instancias), elija Launch Templates (Plantillas de
lanzamiento).
3. Seleccione la plantilla de lanzamiento (my-template-for-auto-scaling).
4. Elija Actions, Delete template. Cuando se le pida confirmación, elija Delete launch template.

Omita el procedimiento siguiente si desea mantener su configuración de lanzamiento.

Para eliminar su configuración de lanzamiento

1. Abra el iconoPágina Launchde la consola de Amazon EC2.


2. Seleccione la configuración de lanzamiento (my-first-launch-configuration).
3. Seleccione Actions, Delete launch configuration. Cuando se le indique que confirme, seleccione Yes,
Delete.

19
Auto Scaling de Amazon EC2 Guía del usuario

Tutorial: Configurar una aplicación


con escalado y balanceo
Important

Antes de explorar este tutorial, le recomendamos que consulte el siguiente tutorial de introducción:
Cómo empezar a utilizar Amazon EC2 Auto Scaling (p. 14).

Registrar el grupo de Auto Scaling con un balanceador de carga Elastic Load Balancing, ayuda a
configurar una aplicación con balanceo de carga. Elastic Load Balancing funciona con Amazon EC2
Auto Scaling para distribuir el tráfico entrante entre las instancias de Amazon EC2 en buen estado. Esto
aumenta la escalabilidad y disponibilidad de la aplicación. Puede habilitar Elastic Load Balancing en varias
zonas de disponibilidad para aumentar la tolerancia a errores de sus aplicaciones.

En este tutorial, tratamos los pasos básicos para configurar una aplicación con balanceo de carga al
crear el grupo de Auto Scaling. Cuando haya finalizado, la arquitectura debe ser similar a la del diagrama
siguiente:

Elastic Load Balancing Le recomendamos utilizar un Application Load Balancer para este tutorial.

20
Auto Scaling de Amazon EC2 Guía del usuario
Prerequisites

Para obtener más información sobre cómo introducir un equilibrador de carga en la arquitectura,
consulteElastic Load Balancing y Amazon EC2 Auto Scaling (p. 90).

Tareas
• Prerequisites (p. 21)
• Paso 1: Configurar una plantilla de lanzamiento o una configuración de lanzamiento (p. 21)
• Paso 2: Creación de un grupo de Auto Scaling (p. 24)
• Paso 3: Compruebe que el balanceador de carga está adjunto (p. 25)
• Paso 4: Pasos siguientes (p. 25)
• Paso 5: Eliminar recursos (p. 25)

Prerequisites
• Un balanceador de carga y un grupo de destino. Asegúrese de elegir las mismas zonas de disponibilidad
para el balanceador de carga que tiene previsto utilizar para el grupo de Auto Scaling. Para obtener
más información, consulteIntroducción a Elastic Load Balancingen laGuía del usuario de Elastic Load
Balancing.
• Un grupo de seguridad para la plantilla de inicio o la configuración de inicio. El grupo de seguridad debe
permitir el acceso desde el balanceador de carga en el puerto de escucha (normalmente el puerto 80
para tráfico HTTP) y el puerto que desea que utilice Elastic Load Balancing para comprobaciones de
estado. Para obtener más información, consulte la documentación aplicable:
• Grupos de seguridad de destinoen laGuía del usuario para Application Load Balancers
• Grupos de seguridad de destinoen laGuía del usuario para Network Load Balancers

De forma opcional, si las instancias tendrán direcciones IP públicas, puede permitir que el tráfico SSH se
conecte a las instancias.
• (Opcional) Un rol de IAM que conceda acceso a la aplicación aAWS.
• (Opcional) Una imagen de Amazon Machine (AMI) definida como plantilla de origen de las instancias
de Amazon EC2. Para crear una, lance una instancia. Especifique el rol de IAM (si ha creado uno) y
todos los scripts de configuración que necesite como datos de los usuarios. Conéctese a la instancia y
personalícela. Por ejemplo, puede instalar software y aplicaciones, copiar datos y adjuntar volúmenes
EBS adicionales. Pruebe la aplicación en la instancia para asegurarse de que se ha configurado
correctamente. Guarde esta configuración actualizada como una AMI personalizada. Si no necesita la
instancia más tarde, puede terminarla. Las instancias que se lancen desde la nueva AMI personalizada
incluirán todas las configuraciones que definió al crearla.
• Una nube virtual privada (VPC). En este tutorial se hace referencia a la VPC predeterminada, pero
puede utilizar la suya propia. Si utiliza su propia VPC, asegúrese de que tiene una subred asignada
a cada zona de disponibilidad de la región en la que esté trabajando. Como mínimo, debe tener dos
subredes públicas disponibles para crear el balanceador de carga. Debe tener dos subredes privadas o
dos subredes públicas para crear el grupo de Auto Scaling y registrarlo en el balanceador de carga.

Tenga en cuenta que todos los procedimientos siguientes son para la nueva consola.

Paso 1: Configurar una plantilla de lanzamiento o


una configuración de lanzamiento
Utilice una plantilla de lanzamiento o una configuración de lanzamiento para este tutorial.

21
Auto Scaling de Amazon EC2 Guía del usuario
Paso 1: Configurar una plantilla de lanzamiento
o una configuración de lanzamiento

Si ya tiene una plantilla de lanzamiento que desea utilizar, selecciónela mediante el siguiente
procedimiento.
Note

También puede utilizar una configuración de lanzamiento en lugar de una plantilla de lanzamiento.
Para obtener las instrucciones de la configuración de lanzamiento, consulte Seleccione o cree una
configuración de lanzamiento (p. 23).

Para seleccionar una plantilla de lanzamiento existente

1. Abra el iconoPágina Lanzar Plantillasde la consola de Amazon EC2.


2. En la barra de navegación de la parte superior de la pantalla, elija la región donde se creó el
balanceador de carga.
3. Seleccione una plantilla de lanzamiento.
4. SeleccionarActions,Grupo de Auto Scaling.

También puede crear una nueva plantilla de lanzamiento mediante el siguiente procedimiento.

Para crear una plantilla de lanzamiento

1. Abra el iconoPágina Lanzar Plantillasde la consola de Amazon EC2.


2. En la barra de navegación de la parte superior de la pantalla, elija la región donde se creó el
balanceador de carga.
3. Elija Create launch template (Crear plantilla de lanzamiento).
4. Escriba un nombre y una descripción para la versión inicial de la plantilla de lanzamiento.
5. ParaImagen de máquina de Amazon (AMI)Escriba el ID de la AMI de sus instancias como criterio de
búsqueda.
6. En Instance type, seleccione una configuración de hardware de sus instancias que sea compatible con
la AMI que ha especificado.
7. (Opcional) ParaPar de claves (inicio de sesión)Elija el key pair que desea utilizar al conectarse a sus
instancias.
8. En Network interfaces, haga lo siguiente:

a. Elija Add network interface. En este tutorial, utilice la opción para especificar la interfaz de red.
b. (Opcional) En Auto-assign public IP (Asignar automáticamente IP pública), mantenga el valor
predeterminado Don't include in launch template (No incluir en la plantilla de lanzamiento). Al
crear el grupo de Auto Scaling, puede asignar una dirección IP pública a instancias del grupo
de Auto Scaling mediante subredes que tengan habilitado el atributo de direccionamiento de IP
públicas, como las subredes predeterminadas de la VPC predeterminada. Alternativamente, si
no necesita conectarse a sus instancias, puede elegirDeshabilitarpara evitar que las instancias
de su grupo reciban tráfico directamente de Internet. En este caso, recibirán tráfico solo desde el
balanceador de carga.
c. ParaID de grupo de seguridad, especifique un grupo de seguridad para las instancias de la misma
VPC que el equilibrador de carga.
d. ParaEliminar al terminar, elijaSí. De este modo, se elimina la interfaz de red cuando se reduce el
tamaño del grupo de Auto Scaling y se termina la instancia a la que está conectada la interfaz de
red.
9. (Opcional) Para distribuir de forma segura credenciales a las instancias, en Advanced details (Detalles
avanzados), IAM instance profile (Perfil de instancia de IAM), escriba el Nombre de recurso de
Amazon (ARN) de su rol de IAM.
10. (Opcional) Para especificar los datos de usuario o un script de configuración para las instancias,
pegue los datos o el script en Advanced details, User data.

22
Auto Scaling de Amazon EC2 Guía del usuario
Seleccione o cree una configuración de lanzamiento

11. Elija Create launch template (Crear plantilla de lanzamiento).


12. En la página de confirmación, seleccioneGrupo de Auto Scaling.

Seleccione o cree una configuración de lanzamiento


Si ya tiene una configuración de lanzamiento que desea utilizar, selecciónela mediante el siguiente
procedimiento.

Para seleccionar una configuración de lanzamiento existente

1. Abra el iconoPágina Launch Configuracionesde la consola de Amazon EC2.


2. En la barra de navegación de la parte superior de la pantalla, elija la región donde se creó el
balanceador de carga.
3. Seleccione una configuración de lanzamiento.
4. SeleccionarActions,Grupo de Auto Scaling.

También puede crear una nueva configuración de lanzamiento mediante el siguiente procedimiento.

Para crear una configuración de lanzamiento

1. Abra el iconoPágina Launch Configuracionesde la consola de Amazon EC2.


2. En la barra de navegación de la parte superior de la pantalla, elija la región donde se creó el
balanceador de carga.
3. SeleccionarCrear una configuración de lanzamientoe introduzca un nombre para la configuración de
lanzamiento.
4. ParaImagen de máquina de Amazon (AMI)Escriba el ID de la AMI de sus instancias como criterio de
búsqueda.
5. ParaTipo de instanciaSeleccione una configuración de hardware para su instancia.
6. UNDERConfiguración adicionalPreste atención a los campos siguientes:

a. (Opcional) Para distribuir de forma segura credenciales a la instancia EC2, paraPerfil de instancia
IAM, seleccione su rol de IAM. Para obtener más información, consulte Función de IAM para
aplicaciones que se ejecutan en instancias Amazon EC2 (p. 300).
b. (Opcional) Para especificar los datos de usuario o un script de configuración para su instancia,
pegue el script enDetalles avanzados,Datos de usuario.
c. (Opcional) ParaDetalles avanzados,Tipo de dirección IP, mantenga el valor predeterminado. Al
crear el grupo de Auto Scaling, puede asignar una dirección IP pública a instancias del grupo
de Auto Scaling mediante subredes que tengan habilitado el atributo de direccionamiento de IP
públicas, como las subredes predeterminadas de la VPC predeterminada. Alternativamente, si no
necesita conectarse a sus instancias, puede elegirNo asigne una dirección IP pública a ninguna
instanciapara evitar que las instancias de su grupo reciban tráfico directamente de Internet. En
este caso, recibirán tráfico solo desde el balanceador de carga.
7. ParaGrupos de seguridad, elija un grupo de seguridad existente de la misma VPC que el equilibrador
de carga. Si mantiene elCree un nuevo grupo de seguridadseleccionada, se configura una regla SSH
predeterminada para las instancias de Amazon EC2 que ejecutan Linux. Se configura una regla RDP
predeterminada para instancias de Amazon EC2 que ejecutan Windows.
8. ParaPar de claves (inicio de sesión), elija una opción enOpciones de par de claves.

Si ya ha configurado un key pair de la instancia Amazon EC2, puede elegirlo aquí.

Si aún no tiene un key pair de instancia de Amazon EC2, elijaCree un nuevo key pairY asígnele un
nombre reconocible. Seleccionarkey pairPara descargar el key pair en su equipo.

23
Auto Scaling de Amazon EC2 Guía del usuario
Paso 2: Creación de un grupo de Auto Scaling

Important

Si necesita conectarse a sus instancias, no elijaContinuar sin un key pair.


9. Seleccione la casilla de confirmación y, a continuación, elija Create launch configuration.
10. Active la casilla situada junto al nombre de la nueva configuración de lanzamiento y elijaActions,Grupo
de Auto Scaling.

Paso 2: Creación de un grupo de Auto Scaling


Utilice el siguiente procedimiento para continuar donde lo dejó después de crear o seleccionar la plantilla o
la configuración de lanzamiento.

Para crear un grupo de Auto Scaling

1. En la páginaElija la plantilla de lanzamiento o la configuración page, for Nombre de grupo de Auto


Scaling, escriba un nombre para el grupo de Auto Scaling.
2. [Solo plantilla de lanzamiento] ParaPlantilla de lanzamientoSeleccione si el grupo de Auto Scaling
utiliza la versión predeterminada, la última versión o una versión específica de la plantilla de
lanzamiento para escalado horizontal.
3. Seleccione Siguiente.

En la páginaConfigurar ajustesPuede configurar los ajustes de red y optar por diversificar entre
instancias bajo demanda e instancias de spot de varios tipos de instancia (si elige una plantilla de
lanzamiento).
4. [Solo plantilla de lanzamiento] Mantenga el ajuste Purchase options and instance types (Opciones de
compra y tipos de instancia) establecido en Adhere to the launch template (Adherirse a la plantilla de
lanzamiento) para utilizar el tipo de instancia EC2 y la opción de compra especificados en la plantilla
de lanzamiento.
5. En Network (Red), elija la VPC que haya utilizado para el balanceador de carga. Si elige la VPC
predeterminada, se configura automáticamente para proporcionar conectividad a Internet a las
instancias. Esta VPC incluye una subred pública en cada zona de disponibilidad de la región.
6. En Subnet (Subred), seleccione una o varias subredes de cada zona de disponibilidad que desee
incluir, en función de las zonas de disponibilidad en las que se encuentre el balanceador de carga.
7. Seleccione Siguiente.
8. En la páginaConfigure las opciones avanzadaspágina, enBalanceo de carga, elijaAsociar a un
equilibrador de carga existente.
9. SeleccionarElija entre los grupos de destino del equilibrador de cargaY elija el grupo de destino para el
balanceador de carga que creó.
10. (Opcional) Para utilizar las comprobaciones de estado de Elastic Load Balancing,
paraComprobaciones de estado, elijaELBUNDERTipo de comprobación de estado.
11. Cuando haya terminado de configurar el grupo de Auto Scaling, elijaIr a revisión.
12. En la páginaReview (Revisar)Revise los detalles del grupo de Auto Scaling. Si desea realizar cambios,
haga clic en Edit. Cuando haya terminado, seleccioneGrupo de Auto Scaling.

Después de crear el grupo de Auto Scaling con el balanceador de carga asociado, el balanceador de
carga registra automáticamente nuevas instancias a medida que se conectan. Solo tiene una instancia
en este punto, por lo que no hay mucho que registrar. Sin embargo, puede agregar más instancias
actualizando la capacidad deseada del grupo. Para obtener instrucciones paso a paso, consulte Escalado
manual (p. 126).

24
Auto Scaling de Amazon EC2 Guía del usuario
Paso 3: Compruebe que el
balanceador de carga está adjunto

Paso 3: Compruebe que el balanceador de carga


está adjunto
Para verificar que el balanceador de carga está adjunto

1. Desde elPágina Grupos de Auto ScalingEn la consola de Amazon EC2, seleccione la casilla situada
junto a su grupo de Auto Scaling.
2. En la páginaDetalles dePestaña,Balanceo de cargaMuestra todos los grupos de destino del
balanceador de carga asociado o balanceadores de carga clásicos.
3. En la páginaActividad, enHistorial de actividad, puede verificar que las instancias se hayan lanzado
correctamente. LaEstadoLa columna muestra si su grupo de Auto Scaling ha lanzado instancias
correctamente. Si las instancias no se inician, puede encontrar ideas de solución de problemas para
problemas de lanzamiento de instancias comunes enSolución de problemas de Auto Scaling de
Amazon EC2 (p. 309).
4. En la páginaAdministración de instancias, enInstancias, puede verificar que las instancias están listas
para recibir tráfico. Inicialmente, las instancias están en estado Pending. Cuando una instancia está
lista para recibir tráfico, su estado es InService. LaEstadoLa columna muestra el resultado de las
comprobaciones de estado de Auto Scaling de Amazon EC2 en sus instancias. Aunque una instancia
pueda estar marcada en buen estado, el balanceador de carga solo enviará tráfico a instancias que
pasen las comprobaciones de estado del balanceador de carga.
5. Verifique que las instancias estén registradas en el balanceador de carga. Abra el iconoPágina Grupos
de destinode la consola de Amazon EC2. Seleccione el grupo de destino y elija la pestaña Targets
(Destinos). Si el estado de las instancias esinitial, es probable que se deba a que todavía están en
proceso de registrarse, o que todavía están siendo sometidos a controles de salud. Cuando el estado
de las instancias sea healthy, están listas para utilizarse.

Paso 4: Pasos siguientes


Ahora que ha completado este tutorial, puede obtener más información:

• Puede configurar el grupo de Auto Scaling para utilizar las comprobaciones de estado de Elastic Load
Balancing. Si habilita las comprobaciones de estado del balanceador de carga y una instancia no supera
las comprobaciones de estado, el grupo de Auto Scaling considera que la instancia no está en buen
estado y la sustituye. Para obtener más información, consulte Agregar comprobaciones de estado de
ELB (p. 95).
• Puede ampliar la aplicación a una zona de disponibilidad adicional de la misma región para aumentar
la tolerancia a errores si hay interrupción del servicio. Para obtener más información, consulte Agregar
zonas de disponibilidad de (p. 96).
• Puede configurar el grupo de Auto Scaling para utilizar una política de escalado de seguimiento de
destino. Esto aumenta o disminuye automáticamente el número de instancias a medida que cambia la
demanda de las instancias. Esta permite que el grupo controle los cambios en la cantidad de tráfico que
recibe la aplicación. Para obtener más información, consulte Políticas de escalado de seguimiento de
destino (p. 138).

Paso 5: Eliminar recursos


Cuando haya acabado con los recursos que creó para este tutorial, debería considerar la posibilidad de
eliminarlos para evitar incurrir en gastos innecesarios.

25
Auto Scaling de Amazon EC2 Guía del usuario
Paso 5: Eliminar recursos

Para eliminar el grupo de Auto Scaling

1. Abra el iconoPágina Grupos de Auto Scalingen la consola de Amazon EC2.


2. Seleccione el grupo de Auto Scaling.
3. Seleccione Delete (Eliminar). Cuando se le pida confirmación, seleccione Delete (Eliminar).

Un icono de carga en el cuadro de diálogoNombreLa columna indica que el grupo de Auto Scaling se
ha eliminado. Cuando se ha producido la eliminación, elDeseado,Mín (Mínimo), yMax (Máximo)Las
columnas muestran0del grupo de Auto Scaling de. Se tarda unos minutos en terminar la instancia y
eliminar el grupo. Actualice la lista para ver el estado actual.

Omita el procedimiento siguiente si desea mantener su plantilla de lanzamiento.

Para eliminar la plantilla de lanzamiento

1. Abra el iconoPágina Lanzar Plantillasde la consola de Amazon EC2.


2. Seleccione la plantilla de lanzamiento.
3. Elija Actions, Delete template. Cuando se le pida confirmación, elija Delete launch template.

Omita el procedimiento siguiente si desea mantener su configuración de lanzamiento.

Para eliminar su configuración de lanzamiento

1. Abra el iconoPágina Launch Configuracionesde la consola de Amazon EC2.


2. Seleccione la configuración de lanzamiento.
3. Seleccione Actions, Delete launch configuration. Cuando se le indique que confirme, seleccione Yes,
Delete.

Omita el siguiente procedimiento si desea conservar el balanceador de carga para usarlo en el futuro.

Para eliminar el balanceador de carga

1. Abra el iconoPágina Balanceadores de cargade la consola de Amazon EC2.


2. Seleccione el balanceador de carga y elija Actions (Acciones), Delete (Eliminar).
3. Cuando se le indique que confirme, seleccione Yes, Delete.

Para eliminar el grupo de destino

1. Abra el iconoPágina Grupos de destinode la consola de Amazon EC2.


2. Elija el grupo de destino y elija Actions (Acciones), Delete (Eliminar).
3. Cuando se le pida confirmación, elija Yes (Sí).

26
Auto Scaling de Amazon EC2 Guía del usuario

Plantillas de lanzamiento
Una plantilla de lanzamiento es similar a una configuración de lanzamiento (p. 42), ya que sirve para
especificar la información de configuración de las instancias. Por ejemplo, incluye el ID de la imagen
de máquina de Amazon (AMI), el tipo de instancia, un par de claves, los grupos de seguridad y el resto
de los parámetros que se utilizan para lanzar instancias EC2. No obstante, la definición de una plantilla
de lanzamiento en lugar de una configuración de lanzamiento le permite tener varias versiones de una
plantilla. Con el control de versiones, puede crear un subconjunto del conjunto completo de parámetros
y, después, reutilizarlo para crear otras plantillas o versiones de plantilla. Por ejemplo, puede crear una
plantilla predeterminada que defina parámetros de configuración comunes, , y permitir que los demás
parámetros se especifiquen como parte de otra versión de la misma plantilla.

Le recomendamos que cree grupos de Auto Scaling a partir de plantillas de lanzamiento para asegurarse
de que tiene acceso a las características y mejoras más recientes. Si tiene previsto seguir utilizando
configuraciones de lanzamiento con Amazon EC2 Auto Scaling, tenga en cuenta que no todas las
características de los grupos de Auto Scaling están disponibles. Por ejemplo, no puede crear un grupo
de Auto Scaling que lance instancias de spot y bajo demanda o que especifique varios tipos de instancia
o varias plantillas de lanzamiento. Debe utilizar una plantilla de lanzamiento para configurar estas
características. Para obtener más información, consulte Grupos de Auto Scaling con varios tipos de
instancias y opciones de compra (p. 56).

Además de las características de Amazon EC2 Auto Scaling que puede configurar mediante plantillas de
lanzamiento, las plantillas de lanzamiento le permiten utilizar características más recientes de Amazon
EC2. Esto incluye la generación actual de volúmenes de IOPS aprovisionadas de EBS (io2), etiquetado de
volúmenes de EBS,T2 Instancias ilimitadas, inferencia elástica, yHosts dedicados, por nombrar algunos.
Los hosts dedicados son servidores físicos con capacidad para instancias EC2 dedicados completamente
a su uso. Mientras Amazon EC2Instancias dedicadastambién se ejecutan en hardware dedicado, la ventaja
de usar hosts dedicados sobre instancias dedicadas es que puede traer licencias de software elegibles de
proveedores externos y usarlas en instancias EC2.

Si actualmente utiliza configuraciones de lanzamiento, puede especificar una plantilla de lanzamiento al


actualizar un grupo de Auto Scaling creado mediante una configuración de lanzamiento.

Para crear una plantilla de lanzamiento para usarla con un grupo de Auto Scaling, cree la plantilla desde
cero, cree una nueva versión de una plantilla existente o copie los parámetros de una configuración de
lanzamiento, una instancia en ejecución u otra plantilla.

Cuando cree o actualice un grupo de Auto Scaling con una plantilla de lanzamiento, debe tener suficientes
permisos. Para obtener más información, consulte Soporte para plantillas de lanzamiento de (p. 295).

En los siguientes temas se describen los procedimientos más comunes para crear y trabajar con
plantillas de lanzamiento para usar con sus grupos de Auto Scaling. Para obtener más información
acerca de las plantillas de lanzamiento, consulte laLanzamiento de una instancia desde una plantilla de
lanzamientoSección sobre de laGuía del usuario de Amazon EC2 para instancias de Linux.

Contenido
• Creación de una plantilla de lanzamiento para un grupo de Auto Scaling (p. 28)
• Copiar una configuración de lanzamiento en una plantilla de lanzamiento (p. 34)
• Sustituir una configuración de lanzamiento por una plantilla de lanzamiento (p. 35)
• Ejemplos de creación y administración de plantillas de lanzamiento con elAWS Command Line
Interface(AWS CLI) (p. 36)

27
Auto Scaling de Amazon EC2 Guía del usuario
Creación de una plantilla de lanzamiento
para un grupo de Auto Scaling

Creación de una plantilla de lanzamiento para un


grupo de Auto Scaling
Para poder crear un grupo de Auto Scaling con una plantilla de lanzamiento, debe crear una plantilla que
incluya los parámetros necesarios para lanzar una instancia EC2, como el ID de la imagen de máquina de
Amazon (AMI) y un tipo de instancia.

Una plantilla de lanzamiento proporciona funcionalidad completa para Amazon EC2 Auto Scaling y
también funciones más recientes de Amazon EC2, como la generación actual de volúmenes de IOPS
aprovisionadas de EBS (io2), etiquetado de volúmenes de EBS, instancias de T2 Unlimited, inferencia
elástica y hosts dedicados.

El procedimiento siguiente sirve para crear una plantilla de lanzamiento nueva. Después de crear la
plantilla de lanzamiento, puede crear el grupo de Auto Scaling siguiendo las instrucciones deCrear un
grupo de Auto Scaling mediante una plantilla de lanzamiento (p. 79).

Contenido
• Creación de una plantilla de lanzamiento (consola) (p. 28)
• Para crear una plantilla de lanzamiento a partir de una instancia existente (consola) (p. 33)
• Creación de una plantilla de lanzamiento (AWS CLI) (p. 34)
• Limitations (p. 34)

Creación de una plantilla de lanzamiento (consola)


Siga estos pasos para configurar la plantilla de inicio para lo siguiente:

• Especifique la imagen de máquina de Amazon (AMI) desde la que desea lanzar las instancias.
• Elija un tipo de instancia que sea compatible con la AMI especificada.
• Especifique el key pair que se usará al conectarse a instancias, por ejemplo, mediante SSH.
• Agregue uno o más grupos de seguridad para permitir el acceso relevante a las instancias de una red
externa.
• Especifique si desea asociar volúmenes de EBS o volúmenes de almacén de instancias adicionales a
cada instancia.
• Agregue etiquetas personalizadas (pares clave-valor) a las instancias y los volúmenes.

Para crear una plantilla de lanzamiento

1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.


2. En el panel de navegación, en INSTANCES (Instancias), elija Launch Templates (Plantillas de
lanzamiento).
3. Elija Create launch template (Crear plantilla de lanzamiento). Escriba un nombre y una descripción
para la versión inicial de la plantilla de lanzamiento.
4. UNDERGuía de Auto ScalingPara que Amazon EC2 proporcione orientación que le ayude a crear una
plantilla para usarla con Amazon EC2 Auto Scaling.
5. En Launch template contents (Contenido de la plantilla de lanzamiento), rellene todos los campos
obligatorios y los campos opcionales que desee utilizar como especificación de lanzamiento de la
instancia.

a. Imagen de máquina de Amazon (AMI): Elija el ID de la AMI desde la que desea lanzar las
instancias. Puede buscar todas las AMI disponibles o, en la lista Quick Start (Inicio rápido),

28
Auto Scaling de Amazon EC2 Guía del usuario
Creación de una plantilla de lanzamiento (consola)

seleccionar una de las AMI de uso común de la lista. Si no ve la AMI que necesita, puede buscar
una AMI adecuada, tomar nota de su ID y especificarla como un valor personalizado.
b. Tipo de instancia: Elija el iconotipo de instancia.
c. (Opcional)Par de claves (inicio de sesión): Especifique unpar de claves.
6. (Opcional) EnNetwork settings (Configuración de red), realice una de las siguientes opciones:

a. Plataforma de red: Elija si desea lanzar las instancias en una VPC o EC2-Classic, si procede.
No obstante, los ajustes de tipo de red y zona de disponibilidad de la plantilla de lanzamiento se
ignoran para Amazon EC2 Auto Scaling en favor de la configuración del grupo de Auto Scaling.
b. Grupos de seguridad: Elija uno o variosGrupos de seguridad deO déjelo en blanco para configurar
uno o varios grupos de seguridad como parte de la interfaz de red. Cada grupo de seguridad
debe configurarse para la VPC en la que el grupo de Auto Scaling lanzará las instancias. Si está
utilizando EC2-Classic, debe utilizar grupos de seguridad creados específicamente para EC2-
Classic.

Si no especifica ningún grupo de seguridad en la plantilla de lanzamiento, Amazon EC2 utiliza


lagrupo de seguridad predeterminado. De forma predeterminada, este grupo de seguridad no
permite el tráfico entrante de redes externas.
7. (Opcional) ParaAlmacenamiento (Volúmenes), especifique los volúmenes que desea adjuntar a las
instancias además de los volúmenes especificados por la AMI (Volumen 1 (raíz AMI)). Para agregar
un nuevo volumen, elija Add new volume (Agregar nuevo volumen).

a. Tipo de volumen: El tipo de volumen depende del tipo de instancia que haya elegido. Cada tipo de
instancia tiene un volumen de dispositivo raíz asociado, ya sea un volumen de Amazon EBS o un
volumen de almacén de instancias. Para obtener más información, consulteAlmacén de instancias
Amazon EC2yVolúmenes de Amazon EBSen laGuía del usuario de Amazon EC2 para instancias
de Linux.
b. Nombre del dispositivo: Especifique un nombre de dispositivo para el volumen.
c. Snapshot: Introduzca el ID de la instantánea desde la que desea crear el volumen.
d. Tamaño (GiB): Especifique un tamaño de almacenamiento para los volúmenes respaldados
por Amazon EBS. Si está creando el volumen a partir de una instantánea y no se especifica un
tamaño de volumen, el valor predeterminado es el de la instantánea.
e. Tipo de volumen: En los volúmenes de Amazon EBS, elija la opciónTipo de volumen.
f. IOPS: Con un volumen SSD de IOPS provisionadas, escriba el número máximo de operaciones
de entrada/salida por segundo (IOPS) que debe admitir.
g. Eliminar al terminar: En los volúmenes de Amazon EBS, decida si eliminar el volumen cuando se
termine la instancia asociada.
h. Encrypted: SeleccionarSíPara cambiar el estado de cifrado de un volumen de Amazon EBS.
El efecto predeterminado de configurar este parámetro varía según la elección de volumen de
origen, tal y como se describe en la tabla que se muestra a continuación. En todos los casos,
debe tener permiso para utilizar la CMK especificada. Para obtener más información acerca de
cómo especificar volúmenes cifrados, consulteAmazon EBS encryptionen laGuía del usuario de
Amazon EC2 para instancias de Linux.

Resultados del cifrado

Si el parámetro Y si el origen del volumen es… El estado Notas


Encrypted se predeterminado del
establece en… cifrado es…

No Nuevo volumen (vacío) Sin cifrar* N/A

Instantánea no cifrada que Sin cifrar*


posea

29
Auto Scaling de Amazon EC2 Guía del usuario
Creación de una plantilla de lanzamiento (consola)

Si el parámetro Y si el origen del volumen es… El estado Notas


Encrypted se predeterminado del
establece en… cifrado es…

Instantánea cifrada que posea Cifrada con la misma


clave

Instantánea no cifrada Sin cifrar*


compartida con usted

Instantánea cifrada compartida Cifrada con la CMK


con usted predeterminada

Sí Nuevo volumen Cifrada con la CMK Para utilizar


predeterminada una CMK
que no sea la
Instantánea no cifrada que Cifrada con la CMK predeterminada,
posea predeterminada especifique un
valor para el
Instantánea cifrada que posea Cifrada con la misma
parámetro Key
clave
(Clave).
Instantánea no cifrada Cifrada con la CMK
compartida con usted predeterminada

Instantánea cifrada compartida Cifrada con la CMK


con usted predeterminada

* Si el cifrado predeterminado está habilitado, todos los volúmenes que acaba de crear (tanto si
el parámetro de Encrypted (Cifrado) está establecido en Yes (Sí) como si no lo está) se cifran
mediante la CMK predeterminada. El establecimiento de los parámetros Encrypted (Cifrado) y Key
(Clave) le permite especificar una CMK no predeterminada.
i. Clave de: Si eligióSíEn el paso anterior, opcionalmente escriba la clave maestra de cliente (CMK)
que desee utilizar al cifrar los volúmenes. Especifique un CMK que haya creado anteriormente
utilizando AWS Key Management Service. Puede pegar el ARN completo de cualquier clave
a la que tenga acceso. Para obtener más información, consulte laAWS Key Management
ServiceGuía para desarrolladoresy laPolítica de claves CMK necesarias para su uso con
volúmenes cifrados (p. 301)en esta guía. Nota: Amazon EBS no admite CMK asimétricas.
Note

Proporcionar una CMK sin establecer también el parámetro Encrypted (Cifrado) da como
resultado un error.
8. En Instance tags (Etiquetas de instancia), especifique etiquetas proporcionando combinaciones de
clave y valor. Puede etiquetar las instancias, los volúmenes o ambos.
9. Para cambiar la interfaz de red predeterminada, consulteCambio de la interfaz de red
predeterminada (p. 31). Omita este paso si desea mantener la interfaz de red predeterminada (la
interfaz de red principal).
10. Para configurar opciones avanzadas, consulte Configuración de opciones avanzadas para la plantilla
de lanzamiento (p. 32). De lo contrario, elijaCrear plantilla de lanzamiento.
11. Para crear un grupo de Auto Scaling, elijaGrupo de Auto ScalingEn la página de confirmación.

30
Auto Scaling de Amazon EC2 Guía del usuario
Creación de una plantilla de lanzamiento (consola)

Cambio de la interfaz de red predeterminada


En esta sección se muestra cómo cambiar la interfaz de red predeterminada. Esto le permite definir, por
ejemplo, si desea asignar una dirección IP pública a cada instancia en lugar de establecer por defecto la
configuración de IP pública de asignación automática en la subred.

Condiciones y limitaciones

Al especificar una interfaz de red, tenga en cuenta las siguientes consideraciones y limitaciones:

• Debe configurar el grupo de seguridad como parte de la interfaz de red, y no en laGrupos de


seguridadde la plantilla de. No pueden especificar grupos de seguridad en ambos lugares.
• No puede asignar direcciones IP privadas específicas a sus instancias de Auto Scaling. Cuando se lanza
una instancia, se asigna una dirección privada desde el intervalo de CIDR de la subred en la que se
lanza la instancia. Para obtener más información sobre cómo especificar intervalos de CIDR para su
VPC o subred, consulte laAmazon VPC User Guide.
• Sólo puede iniciar una instancia si especifica un ID de interfaz de red existente. Para que esto funcione,
debe utilizar la herramientaAWS CLIo un SDK para crear el grupo de Auto Scaling. Al crear el grupo,
debe especificar la zona de disponibilidad, pero no el identificador de subred. Además, puede especificar
una interfaz de red existente solo si tiene un índice de dispositivo de 0.
• No puede asignar automáticamente una dirección IP pública si especifica más de una interfaz de red.
Tampoco puede especificar índices de dispositivos duplicados en las interfaces de red. Tenga en cuenta
que las interfaces de red primaria y secundaria residirán en la misma subred.

Para cambiar la interfaz de red predeterminada

1. UNDERInterfaces de red, elijaAgregar interfaz de red.


2. Especifique la interfaz de red principal prestando atención a los campos siguientes:

a. Índice de dispositivos: Especifique el índice del dispositivo. Escriba0Para la interfaz de red


principal (eth0).
b. Interfaz de red: Deje en blanco para crear una nueva interfaz de red cuando se lance una
instancia o escriba el ID de una interfaz de red existente. Si especifica un ID, esto limita el grupo
de Auto Scaling a una instancia.
c. Descripción: Escriba un nombre descriptivo.
d. Subred: Si bien puede especificar una subred, los ajustes del grupo de Auto Scaling de Amazon
EC2 prevalecen sobre los de Amazon EC2 Auto Scaling.
e. Asignar automáticamente IP pública: Elija si desea asignar automáticamente undirección IP
públicaEn la interfaz de red con el índice de dispositivo de 0. Esta configuración tiene prioridad
sobre la configuración configurada en las subredes. Si no establece ningún valor, el valor
predeterminado es utilizar la configuración de IP pública de asignación automática de las
subredes en las que se inician las instancias.
f. Grupos de seguridad: Elija uno o variosGrupos de seguridad de. Cada grupo de seguridad debe
configurarse para la VPC en la que el grupo de Auto Scaling lanzará las instancias.
g. Eliminar al terminar: Elija si la interfaz de red se elimina cuando se reduce el tamaño del grupo de
Auto Scaling y se termina la instancia a la que está conectada la interfaz de red.
h. Elastic Fabric Adapter: Elastic Fabric Adapter (interfaz de red). Para obtener más información,
consulteElastic Fabric Adapteren laGuía del usuario de Amazon EC2 para instancias de Linux.
i. Índice de tarjetas de red: Conecta la interfaz de red a una tarjeta de red específica cuando se
utiliza un tipo de instancia que admite varias tarjetas de red. La interfaz de red principal (eth0)
debe asignarse al índice 0 de la tarjeta de red. Toma 0 como valor predeterminado si no se
especifica. Para obtener más información, consulteTarjetas de reden laGuía del usuario de
Amazon EC2 para instancias de Linux.

31
Auto Scaling de Amazon EC2 Guía del usuario
Creación de una plantilla de lanzamiento (consola)

3. Para añadir una interfaz de red secundaria, elijaAgregar interfaz de red.

Configuración de opciones avanzadas para la plantilla de


lanzamiento
Puede definir las capacidades adicionales que necesiten sus instancias de Auto Scaling. Por ejemplo,
puede elegir un rol de IAM que la aplicación puede utilizar al acceder a otrosAWSDespués de iniciar una
instancia, puede especificar los datos de usuario de instancia que se pueden utilizar para realizar tareas de
configuración automatizadas comunes después de que se inicie una instancia.

En los siguientes pasos se analizan los ajustes más útiles a los que se debe prestar atención. Para obtener
más información acerca de cualquiera de las opciones de enDetalles avanzados, consulteCreación de una
plantilla de lanzamientoen laGuía del usuario de Amazon EC2 para instancias de Linux.

Para configurar opciones avanzadas

1. ParaDetalles avanzados, amplíe la sección para ver los campos.


2. ParaOpción de compra, puede elegirSolicitar instancias de subastaPara solicitar instancias de spot
al precio de spot, limitado al precio bajo demanda, y elijaPersonalizarpara cambiar la configuración
predeterminada de instancia puntual. Para un grupo de Auto Scaling, debe especificar una solicitud
puntual sin fecha de finalización (la predeterminada). Para obtener más información, consulte Solicitud
de instancias puntuales para aplicaciones flexibles y tolerantes a errores (p. 51).
Note

Si te vasOpción de compraSin especificar, puede solicitar instancias de spot más adelante en


el grupo de Auto Scaling. Esto también le da la opción de especificar varios tipos de instancia.
De esta forma, si el servicio Spot de Amazon EC2 necesita recuperar sus instancias
puntuales, podemos lanzar instancias de reemplazo desde otro grupo de subasta. Para
obtener más información, consulte Grupos de Auto Scaling con varios tipos de instancias y
opciones de compra (p. 56).
3. ParaPerfil de instancia IAM, puede especificar unAWS Identity and Access Management(IAM) para
asociarlo a las instancias. Cuando elige un perfil de instancia, asocia el rol de IAM correspondiente a
las instancias EC2. Para obtener más información, consulte Función de IAM para aplicaciones que se
ejecutan en instancias Amazon EC2 (p. 300).
4. ParaTermination protection, elija si desea proteger las instancias de la terminación accidental. Cuando
habilita la protección de terminación, proporciona protección de terminación adicional, pero no
protege de la terminación iniciada por Amazon EC2 Auto Scaling. Para controlar si un grupo de Auto
Scaling puede terminar una instancia concreta, useUsar la protección de escalado ascendente de
instancias (p. 225).
5. Paramonitorización detallada de CloudWatch, elija si desea habilitar las instancias para publicar
datos de métrica a intervalos de 1 minuto en Amazon CloudWatch. Se aplican cargos adicionales.
Para obtener más información, consulte Configuración de la supervisión para instancias de Auto
Scaling (p. 256).
6. ParaT2/T3 ilimitados, elija si desea permitir ráfagas por encima de la base de referencia en las
aplicaciones por el tiempo que sea necesario. Este campo solo es válido para instancias T2, T3 y T3a.
Podrían aplicarse cargos adicionales. Para obtener más información, consulteUso de un grupo de
Auto Scaling para lanzar una instancia de rendimiento ampliable como Unlimiteden laGuía del usuario
de Amazon EC2 para instancias de Linux.
7. ParaNombre del grupo de ubicación, puede especificar un grupo de ubicación en el que lanzar las
instancias. No todos los tipos de instancias se pueden lanzar en grupos de ubicación. Si configura un
grupo de Auto Scaling con un comando de la CLI que especifique un grupo de ubicación diferente, se
ignora el valor especificado para el grupo de Auto Scaling.
8. ParaCapacity Reservation, puede especificar si desea lanzar las instancias en capacidad compartida,
cualquieropenReserva de capacidad, una Reserva de capacidad específica o un grupo de Reserva de

32
Auto Scaling de Amazon EC2 Guía del usuario
Para crear una plantilla de lanzamiento a
partir de una instancia existente (consola)

capacidad. Para obtener más información, consulteLanzar instancias en una Reserva de capacidad
existenteen laGuía del usuario de Amazon EC2 para instancias de Linux.
9. ParaPropiedad, puede elegir ejecutar sus instancias en hardware compartido (Compartido), en
hardware dedicado (Dedicado), o cuando se utiliza un grupo de recursos de host, en Hosts Dedicados
(host dedicado). Podrían aplicarse cargos adicionales.

Si eligióHosts dedicadosRellene los datos siguientes:

• ParaGrupo de recursos de host de arrendamiento, puede especificar un grupo de recursos


de host para que se use una AMI BYOL en hosts dedicados. No tiene que tener asignados
hosts dedicados en su cuenta antes de utilizar esta función. Sus instancias se iniciarán
automáticamente en hosts dedicados independientemente. Tenga en cuenta que una AMI basada
en una asociación de configuración de licencias solo se puede asignar a un grupo de recursos
de host a la vez. Para obtener más información, consulteGrupos de recursos de hosten laAWS
License ManagerGuía del usuario de.
10. ParaConfiguraciones de licencias, especifique la configuración de la licencia que desee utilizar. Puede
lanzar instancias con la configuración de licencia especificada para realizar un seguimiento del uso
de la licencia. Para obtener más información, consulteCreación de una configuración de licenciasen
laGuía del usuario de License Manager.
11. Para configurar las opciones de metadatos de instancia para todas las instancias asociadas a esta
versión de la plantilla de inicio, haga lo siguiente:

a. ParaMetadatos accesibles, decida si habilitar o deshabilitar el acceso al extremo HTTP del


servicio de metadatos de instancia. De forma predeterminada, el punto de enlace HTTP está
habilitado. Si decide desactivar el endpoint, el acceso a los metadatos de la instancia está
desactivado. Puede especificar la condición para requerir IMDSv2 sólo cuando el extremo HTTP
está habilitado.
b. ParaVersión de metadatosPara poder optar por requerir el uso de Servicio de metadatos de
instancia versión 2 (IMDSv2) al solicitar metadatos de instancia. Si no especifica un valor, el valor
predeterminado es admitir IMDSV1 e IMDSv2.
c. ParaLímite de saltos de respuesta de tokens, puede establecer el número permitido de saltos de
red para el token de metadatos. Si no especifica un valor, el valor predeterminado es 1.

Para obtener más información, consulteConfiguración del servicio de metadatos de instanciaen laGuía
del usuario de Amazon EC2 para instancias de Linux.
12. ParaDatos de usuarioDespués de iniciar la instancia, puede especificar los datos de usuario para
configurar una instancia o para ejecutar un script de configuración después de que se inicie la
instancia.
13. Elija Create launch template (Crear plantilla de lanzamiento).
14. Para crear un grupo de Auto Scaling, elijaGrupo de Auto ScalingEn la página de confirmación.

Para crear una plantilla de lanzamiento a partir de una


instancia existente (consola)
Para crear una plantilla de lanzamiento a partir de una instancia disponible

1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.


2. En el panel de navegación, en INSTANCES (Instancias), elija Instances (Instancias).
3. Seleccione la instancia y elijaActions,Imagen y plantillas,Crear plantilla a partir de instancia.
4. Proporcione un nombre y una descripción.
5. UNDERGuía de Auto Scaling, seleccione la casilla de verificación.

33
Auto Scaling de Amazon EC2 Guía del usuario
Creación de una plantilla de lanzamiento (AWS CLI)

6. Ajuste los ajustes según sea necesario y elijaCrear plantilla de lanzamiento.


7. Para crear un grupo de Auto Scaling, elijaGrupo de Auto ScalingEn la página de confirmación.

Creación de una plantilla de lanzamiento (AWS CLI)


Para crear una plantilla de lanzamiento mediante la línea de comandos
Puede utilizar uno de los siguientes comandos:

• create-launch-template (AWS CLI)


• New-EC2LaunchTemplate (AWS Tools for Windows PowerShell)

Limitations
• Una plantilla de lanzamiento le permite configurar un tipo de red (VPC o EC2-Classic), una subred y una
zona de disponibilidad. Sin embargo, estos parámetros se ignoran a favor de lo que se especifica en el
grupo Auto Scaling.
• Dado que la configuración de subred de la plantilla de inicio se ignora a favor de lo que se especifica
en el grupo Auto Scaling, todas las interfaces de red que se crean para una instancia determinada se
conectarán a la misma subred que la instancia. Para ver otras limitaciones en las interfaces de red
definidas por el usuario, consulteCambio de la interfaz de red predeterminada (p. 31).
• Una plantilla de lanzamiento le permite configurar ajustes adicionales en el grupo de Auto Scaling para
lanzar varios tipos de instancia y combinar opciones de compra bajo demanda y spot, como se describe
enGrupos de Auto Scaling con varios tipos de instancias y opciones de compra (p. 56). No se admite
el lanzamiento de instancias con esa combinación:
• Si especifica una solicitud de instancia de spot en la plantilla de lanzamiento
• En EC2-Classic
• La compatibilidad con hosts dedicados (tenencia de host) solo está disponible si especifica un grupo de
recursos de host. No puede dirigirse a un ID de host específico ni utilizar afinidad de ubicación de host.

Copiar una configuración de lanzamiento en una


plantilla de lanzamiento
Utilice el siguiente procedimiento para copiar las opciones de una configuración de lanzamiento existente
para crear una nueva plantilla de lanzamiento. Esta acción solo se puede realizar desde la consola.

Puede crear plantillas de lanzamiento a partir de configuraciones de lanzamiento existentes para poder
actualizar fácilmente los grupos de Auto Scaling de forma que utilicen plantillas de lanzamiento. Al igual
que las configuraciones de lanzamiento, las plantillas de lanzamiento pueden contener algunos o todos los
parámetros necesarios para lanzar una instancia. Con las plantillas de lanzamiento, también puede crear
varias versiones de una plantilla para que le resulte más rápido y sencillo lanzar nuevas instancias.

Para crear una plantilla de lanzamiento a partir de una configuración de lanzamiento (consola)

1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.


2. En el panel de navegación, en AUTO SCALING, elija Launch Configurations (Configuraciones de
lanzamiento).
3. Elija la configuración de lanzamiento que desea copiar y elijaAcciones, Copiar para iniciar la plantilla.
Se creará una nueva plantilla de lanzamiento con el mismo nombre y opciones que la configuración de
lanzamiento que ha seleccionado.

34
Auto Scaling de Amazon EC2 Guía del usuario
Sustituir una configuración de lanzamiento
por una plantilla de lanzamiento

4. En New launch template name (Nombre de la nueva plantilla de lanzamiento), puede utilizar el
nombre de la configuración de lanzamiento (el valor predeterminado) o escribir un nuevo nombre. Los
nombres de las plantillas de lanzamiento deben ser únicos.
5. (Opcional) Para crear un grupo de Auto Scaling que utilice la nueva plantilla de lanzamiento,
seleccione Crear un grupo de Auto Scaling mediante la nueva plantilla. Para obtener más información,
consulte Crear un grupo de Auto Scaling mediante una plantilla de lanzamiento (p. 79).
6. Elija Copy.

Después de crear la plantilla de lanzamiento, puede actualizar sus grupos de Auto Scaling, según sea
necesario, con la plantilla de lanzamiento que ha creado. Para obtener más información, consulte Sustituir
una configuración de lanzamiento por una plantilla de lanzamiento (p. 35).

Sustituir una configuración de lanzamiento por una


plantilla de lanzamiento
Cuando edita un grupo de Auto Scaling que ya tiene una configuración de lanzamiento, tiene la opción
de reemplazar la configuración de lanzamiento por una plantilla de lanzamiento. Esto le permite utilizar
plantillas de lanzamiento con cualquier grupo de Auto Scaling que use actualmente. De este modo, podrá
aprovechar el control de versiones y otras características de las plantillas de lanzamiento.

Después de reemplazar la configuración de lanzamiento de un grupo de Auto Scaling, las nuevas


instancias se lanzan con la nueva plantilla de lanzamiento, pero las instancias existentes no resultan
afectadas. Para actualizar las instancias existentes, termínelas de forma que se sustituyan por el grupo de
Auto Scaling o permita que el escalado automático reemplace gradualmente las instancias más antiguas
por instancias más recientes en función de suPolíticas de terminación (p. 215).
Note

Con la duración máxima de la instancia y las características de actualización de instancias,


también puede reemplazar todas las instancias del grupo de Auto Scaling para lanzar nuevas
instancias que utilicen la plantilla de lanzamiento. Para obtener más información, consulte
Reemplazo de instancias de Auto Scaling en función de la duración máxima (p. 108) y
Reemplazo de instancias de Auto Scaling basadas en una actualización de instancia (p. 110).

Prerequisites

Para poder reemplazar una configuración de lanzamiento en un grupo de Auto Scaling, primero debe
crear la plantilla de lanzamiento. La forma más sencilla de crear una plantilla de lanzamiento es copiarla
de la configuración de lanzamiento. Para obtener más información, consulte Copiar una configuración de
lanzamiento en una plantilla de lanzamiento (p. 34).

Cuando reemplaza una configuración de lanzamiento por una plantilla de lanzamiento, se comprueban
los permisos ec2:RunInstances. Si está intentando utilizar una plantilla de lanzamiento y no
tiene suficientes permisos, recibirá un error que indica que no está autorizado a utilizar la plantilla
de lanzamiento. Para obtener más información acerca de los permisos de IAM necesarios, consulte,
consulteSoporte para plantillas de lanzamiento de (p. 295).

Para reemplazar la configuración de lanzamiento de un grupo de Auto Scaling(consola)

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto a su grupo de Auto Scaling.

Se abre un panel dividido en la parte inferior de la página, que muestra información sobre el grupo
seleccionado.

35
Auto Scaling de Amazon EC2 Guía del usuario
AWS CLIEjemplos de uso de plantillas de lanzamiento

3. En la páginaDetalles de, elijaConfiguración de lanzamiento,Editar.


4. SeleccionarCambiar a Plantilla de lanzamiento.
5. ParaPlantilla de lanzamiento, seleccione la plantilla de lanzamiento.
6. ParaVersion, seleccione la versión de la plantilla de lanzamiento, según sea necesario. Después de
crear versiones de una plantilla de lanzamiento, puede decidir si el grupo de Auto Scaling utilizará
la versión predeterminada o la última versión de la plantilla de lanzamiento cuando se realice el
escalado.
7. Cuando haya terminado, seleccioneActualización.

Para sustituir una configuración de lanzamiento mediante la línea de comandos

Puede utilizar uno de los siguientes comandos:

• update-auto-scaling-group(AWS CLI)
• Update asAutoScalingGroup(AWS Tools for Windows PowerShell)

Para obtener ejemplos de uso de un comando CLI para actualizar un grupo de Auto Scaling para utilizar
una plantilla de inicio, consulteActualización de un grupo de Auto Scaling para utilizar una plantilla de
lanzamiento (p. 41).

Ejemplos de creación y administración de plantillas


de lanzamiento con elAWS Command Line
Interface(AWS CLI)
Puede crear y administrar plantillas de lanzamiento a través delAWS Management Console,AWS CLI,
o SDK. En esta sección se muestran ejemplos de creación y gestión de plantillas de lanzamiento para
Amazon EC2 Auto Scaling desde elAWS CLI.

Contenido
• Creación de una plantilla de lanzamiento simple (p. 36)
• Especificación de etiquetas que etiquetan instancias en la creación (p. 37)
• Especificación de una interfaz de red existente (p. 37)
• Asignación de direcciones IP públicas (p. 38)
• Añadir una interfaz de red secundaria (p. 38)
• Creación de múltiples interfaces de red habilitadas para EFA (p. 38)
• Especificación de una asignación de dispositivos de bloques (p. 39)
• Administrar las plantillas de lanzamiento (p. 39)
• Actualización de un grupo de Auto Scaling para utilizar una plantilla de lanzamiento (p. 41)

Creación de una plantilla de lanzamiento simple


Para crear una plantilla de inicio simple, utilice la herramientacreate-launch-templatede la siguiente
manera, con estas modificaciones:

• Reemplazarami-04d5cc9b88exampleCon el ID de la AMI desde la que lanzar las instancias.


• Reemplazart2.microCon un tipo de instancia que es compatible con la AMI que ha especificado.

36
Auto Scaling de Amazon EC2 Guía del usuario
Especificación de etiquetas que
etiquetan instancias en la creación

• Reemplazarsg-903004f88exampleCon un grupo de seguridad para la VPC en la que el grupo de Auto


Scaling lanzará las instancias.

En este ejemplo se crea una plantilla de lanzamiento con el nombremy-template-for-auto-scaling.


Si las instancias creadas por esta plantilla de inicio se inician en una VPC predeterminada, recibirán una
dirección IP pública de forma predeterminada. Si las instancias se lanzan en una VPC no predeterminada,
no reciben una dirección IP pública de forma predeterminada.

aws ec2 create-launch-template --launch-template-name my-template-for-auto-scaling --


version-description version1 \
--launch-template-data
'{"ImageId":"ami-04d5cc9b88example","InstanceType":"t2.micro","SecurityGroupIds":
["sg-903004f88example"]}'

Para obtener más información acerca de cómo citar parámetros formateados en JSON,
consulteEntrecomillado de cadenas en laAWS CLIen laAWS Command Line InterfaceGuía del usuario de.

Si lo desea, también puede especificar los parámetros formateados en JSON en un archivo de


configuración.

En el ejemplo siguiente se crea una plantilla de inicio simple, que hace referencia a un archivo de
configuración para los valores de parámetros de plantilla de inicio.

aws ec2 create-launch-template --launch-template-name my-template-for-auto-scaling --


version-description version1 \
--launch-template-data file://config.json

Contenido deconfig.json:

{
"ImageId":"ami-04d5cc9b88example",
"InstanceType":"t2.micro",
"SecurityGroupIds":["sg-903004f88example"]
}

Especificación de etiquetas que etiquetan instancias


en la creación
En el siguiente ejemplo se agrega una etiqueta (por ejemplo,purpose=webserver) a instancias en el
lanzamiento.

aws ec2 create-launch-template --launch-template-name my-template-for-auto-scaling --


version-description version1 \
--launch-template-data
'{"ImageId":"ami-04d5cc9b88example","InstanceType":"t2.micro","SecurityGroupIds":
["sg-903004f88example"],"TagSpecifications":[{"ResourceType":"instance","Tags":
[{"Key":"purpose","Value":"webserver"}]}]}'

Especificación de una interfaz de red existente


En el ejemplo siguiente se configura la interfaz de red principal para que utilice una interfaz de red
existente.

aws ec2 create-launch-template --launch-template-name my-template-for-auto-scaling --


version-description version1 \

37
Auto Scaling de Amazon EC2 Guía del usuario
Asignación de direcciones IP públicas

--launch-template-data '{"NetworkInterfaces":[{"DeviceIndex":0,"NetworkInterfaceId":"eni-
b9a5ac93","DeleteOnTermination":false}],"ImageId":"ami-04d5cc9b88example","InstanceType":"t2.micro"}'

Asignación de direcciones IP públicas


Los siguientes ejemplos decreate-launch-templateEn el ejemplo, se configura la plantilla de lanzamiento
para asignar direcciones públicas a las instancias lanzadas en una VPC no predeterminada. Tenga
en cuenta que cuando especifique una interfaz de red, especifique un valor paraGroupsPara que
corresponda a los grupos de seguridad de la VPC en la que el grupo de Auto Scaling lanzará las
instancias, pero especifique las subredes de VPC como propiedades del grupo de Auto Scaling.

aws ec2 create-launch-template --launch-template-name my-template-for-auto-scaling --


version-description version1 \
--launch-template-data '{"NetworkInterfaces":
[{"DeviceIndex":0,"AssociatePublicIpAddress":true,"Groups":
["sg-903004f88example"],"DeleteOnTermination":true}],"ImageId":"ami-04d5cc9b88example","InstanceType":"

Añadir una interfaz de red secundaria


Los siguientes ejemplos decreate-launch-templateEl ejemplo agrega una interfaz de red secundaria. La
interfaz de red principal tiene un índice de dispositivo de 0 y la interfaz de red secundaria tiene un índice de
dispositivo de 1.

aws ec2 create-launch-template --launch-template-name my-template-for-auto-scaling --


version-description version1 \
--launch-template-data '{"NetworkInterfaces":[{"DeviceIndex":0,"Groups":
["sg-903004f88example"],"DeleteOnTermination":true},{"DeviceIndex":1,"Groups":
["sg-903004f88example"],"DeleteOnTermination":true}],"ImageId":"ami-04d5cc9b88example","InstanceType":"

Note

Si se conectan varias interfaces de red de la misma subred a una instancia, se puede introducir
un direccionamiento asimétrico, especialmente en instancias que utilicen una variante de Linux
que no sea de Amazon. Si necesita este tipo de configuración, debe configurar la interfaz de red
secundaria dentro del sistema operativo. Para ver un ejemplo, consulte .¿Cómo puedo hacer
que mi interfaz de red secundaria funcione en mi instancia de Ubuntu EC2?en laAWSCentro de
conocimiento de.

Creación de múltiples interfaces de red habilitadas


para EFA
Si utiliza un tipo de instancia que admita varias tarjetas de red y Elastic Fabric Adapters (EFA),
puede agregar una interfaz secundaria a una tarjeta de red secundaria y habilitar EFA mediante la
siguientecreate-launch-templatecomando. Para obtener más información, consulteAñadir un EFA a una
plantilla de lanzamientoen laGuía del usuario de Amazon EC2 para instancias de Linux.

aws ec2 create-launch-template --launch-template-name my-template-for-auto-scaling --


version-description version1 \
--launch-template-data
'{"ImageId":"ami-09d95fab7fexample","InstanceType":"p4d.24xlarge","NetworkInterfaces":
[{"NetworkCardIndex":0,"DeviceIndex":0,"Groups":
["sg-7c2270198example"],"InterfaceType":"efa","DeleteOnTermination":true},
{"NetworkCardIndex":1,"DeviceIndex":1,"Groups":
["sg-7c2270198example"],"InterfaceType":"efa","DeleteOnTermination":true}]}'

38
Auto Scaling de Amazon EC2 Guía del usuario
Especificación de una asignación de dispositivos de bloques

Warning

El tipo de instancia p4d.24xlarge incurre en costos más altos que los otros ejemplos de
esta sección. Para obtener más información acerca de los precios de las instancias de P4d,
consultePrecios de las Amazon EC2 instancias P4d.

Especificación de una asignación de dispositivos de


bloques
Los siguientes ejemplos decreate-launch-templateEn el ejemplo se crea una plantilla de lanzamiento con
una asignación de dispositivo de bloque: un volumen EBS de 22 gigabytes asignado a /dev/xvdcz. El
volumen /dev/xvdcz utiliza el tipo de volumen SSD de uso general (gp2) y se elimina al finalizar la instancia
a la que está adjunta.

aws ec2 create-launch-template --launch-template-name my-template-for-auto-scaling --


version-description version1 \
--launch-template-data
'{"ImageId":"ami-04d5cc9b88example","InstanceType":"t2.micro","SecurityGroupIds":
["sg-903004f88example"],"BlockDeviceMappings":[{"DeviceName":"/dev/xvdcz","Ebs":
{"VolumeSize":22,"VolumeType":"gp2","DeleteOnTermination":true}}]}'

Administrar las plantillas de lanzamiento


LaAWS CLILa incluye otros comandos que le ayudan a administrar sus plantillas de lanzamiento.

Contenido
• Listado y descripción de las plantillas de lanzamiento (p. 39)
• Creación de una versión de una plantilla de lanzamiento (p. 40)
• Eliminación de una versión de una plantilla de lanzamiento (p. 41)
• Eliminación de una plantilla de lanzamiento (p. 41)

Listado y descripción de las plantillas de lanzamiento


Puede utilizar dosAWS CLIPara obtener información sobre las plantillas de lanzamiento:describe-launch-
templatesyDescribe-launch-template-versions.

Ladescribe-launch-templatesEl comando le permite obtener una lista de cualquiera de las plantillas de


lanzamiento que ha creado. Puede utilizar una opción para filtrar los resultados en un nombre de plantilla
de inicio, crear tiempo, clave de etiqueta o combinación clave/valor de etiqueta. Este comando devuelve
información resumida sobre cualquiera de las plantillas de lanzamiento, incluido el identificador de plantilla
de lanzamiento, la última versión y la versión predeterminada.

En el ejemplo siguiente se proporciona un resumen de la plantilla de lanzamiento especificada.

aws ec2 describe-launch-templates --launch-template-names my-template-for-auto-scaling

A continuación se muestra un ejemplo de respuesta.

{
"LaunchTemplates": [
{
"LaunchTemplateId": "lt-068f72b729example",
"LaunchTemplateName": "my-template-for-auto-scaling",
"CreateTime": "2020-02-28T19:52:27.000Z",

39
Auto Scaling de Amazon EC2 Guía del usuario
Administrar las plantillas de lanzamiento

"CreatedBy": "arn:aws:iam::123456789012:user/Bob",
"DefaultVersionNumber": 1,
"LatestVersionNumber": 1
}
]
}

Si no utiliza el--launch-template-namespara limitar la salida a una plantilla de inicio, se devuelve


información sobre todas las plantillas de inicio.

Los siguientes ejemplos deDescribe-launch-template-versionsproporciona información que describe las


versiones de la plantilla de inicio especificadamy-template-for-auto-scaling.

aws ec2 describe-launch-template-versions --launch-template-id lt-068f72b729example

A continuación se muestra un ejemplo de respuesta.

{
"LaunchTemplateVersions": [
{
"VersionDescription": "version1",
"LaunchTemplateId": "lt-068f72b729example",
"LaunchTemplateName": "my-template-for-auto-scaling",
"VersionNumber": 1,
"CreatedBy": "arn:aws:iam::123456789012:user/Bob",
"LaunchTemplateData": {
"TagSpecifications": [
{
"ResourceType": "instance",
"Tags": [
{
"Key": "purpose",
"Value": "webserver"
}
]
}
],
"ImageId": "ami-04d5cc9b88example",
"InstanceType": "t2.micro",
"NetworkInterfaces": [
{
"DeviceIndex": 0,
"DeleteOnTermination": true,
"Groups": [
"sg-903004f88example"
],
"AssociatePublicIpAddress": true
}
]
},
"DefaultVersion": true,
"CreateTime": "2020-02-28T19:52:27.000Z"
}
]
}

Creación de una versión de una plantilla de lanzamiento


Los siguientes ejemplos decreate-launch-template-versionEl comando crea una nueva versión de la
plantilla de lanzamiento basada en la versión 1 de la plantilla de lanzamiento y especifica un ID de AMI
diferente.

40
Auto Scaling de Amazon EC2 Guía del usuario
Actualización de un grupo de Auto Scaling
para utilizar una plantilla de lanzamiento

aws ec2 create-launch-template-version --launch-template-id lt-068f72b729example --version-


description version2 \
--source-version 1 --launch-template-data '{"ImageId":"ami-c998b6b2example"}'

Para establecer la versión predeterminada de la plantilla de lanzamiento, use lamodificy-launch-


templatecomando.

Eliminación de una versión de una plantilla de lanzamiento


Los siguientes ejemplos dedelete-launch-template-versionscomando elimina la versión especificada de la
plantilla de lanzamiento.

aws ec2 delete-launch-template-versions --launch-template-id lt-068f72b729example --


versions 1

Eliminación de una plantilla de lanzamiento


Si ya no necesita una plantilla de lanzamiento, puede eliminarla mediante la siguientedelete launch-
templatecomando. Al eliminar una plantilla de lanzamiento, también se eliminan todas sus versiones.

aws ec2 delete-launch-template --launch-template-id lt-068f72b729example

Actualización de un grupo de Auto Scaling para utilizar


una plantilla de lanzamiento
Puede utilizar elupdate-auto-scaling-groupPara agregar una plantilla de lanzamiento a un grupo de Auto
Scaling existente.
Note

Si cambia su grupo de Auto Scaling de usar una configuración de inicio, asegúrese de que sus
permisos estén actualizados. Para usar una plantilla de inicio, necesita permisos específicos. Para
obtener más información, consulte Soporte para plantillas de lanzamiento de (p. 295).

Actualización de un grupo de Auto Scaling para utilizar la versión


más reciente de una plantilla de inicio
Los siguientes ejemplos deupdate-auto-scaling-groupactualiza el grupo de Auto Scaling especificado para
utilizar la versión más reciente de la plantilla de inicio especificada.

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


--launch-template LaunchTemplateId=lt-068f72b729example,Version='$Latest'

Actualice un grupo de Auto Scaling para utilizar una versión


específica de una plantilla de lanzamiento
Los siguientes ejemplos deupdate-auto-scaling-groupEl comando actualiza el grupo de Auto Scaling
especificado para utilizar una versión específica de la plantilla de lanzamiento especificada.

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


--launch-template LaunchTemplateName=my-template-for-auto-scaling,Version='2'

41
Auto Scaling de Amazon EC2 Guía del usuario
Creación de una configuración de lanzamiento

Configuraciones de lanzamiento
Important

Recomendamos encarecidamente que no utilice configuraciones de lanzamiento. No proporcionan


funcionalidad completa para Amazon EC2 Auto Scaling o Amazon EC2. Proporcionamos
información sobre las configuraciones de lanzamiento para los clientes que aún no han migrado
las configuraciones de lanzamiento a plantillas de lanzamiento.

Aconfiguración de lanzamientoEs una plantilla de configuración de instancias que usa un grupo de Auto
Scaling para lanzar instancias EC2. Cuando se crea una configuración de lanzamiento, se especifica
información sobre las instancias. Incluya el ID de la imagen de máquina de Amazon (AMI), el tipo de
instancia, un par de claves, uno o varios grupos de seguridad y un mapeo de dispositivos de bloques. Si
ha lanzado una instancia EC2 con anterioridad, habrá especificado la misma información para lanzar la
instancia.

Puede especificar la configuración de lanzamiento con varios grupos de Auto Scaling. Sin embargo, solo
puede especificar una configuración de lanzamiento para un grupo de Auto Scaling cada vez y no puede
modificar una configuración de lanzamiento una vez creada. Para cambiar la configuración de lanzamiento
de un grupo de Auto Scaling, debe crear una configuración de lanzamiento y, a continuación, actualizar el
grupo de Auto Scaling con ella.

Tenga en cuenta que cuando crea un grupo de Auto Scaling, debe especificar una configuración de
lanzamiento, una plantilla de lanzamiento o una instancia EC2. Al crear un grupo de Auto Scaling con una
instancia EC2, Amazon EC2 Auto Scaling crea automáticamente una configuración de lanzamiento y la
asocia al grupo de Auto Scaling. Para obtener más información, consulte Creación de un grupo de Auto
Scaling mediante una instancia de EC2 (p. 83). Además, si está utilizando plantillas de lanzamiento,
puede especificar una plantilla de lanzamiento en lugar de una configuración de lanzamiento o una
instancia EC2. Para obtener más información, consulte Plantillas de lanzamiento (p. 27).

Contenido
• Creación de una configuración de lanzamiento (p. 42)
• Creación de una configuración de lanzamiento mediante una instancia EC2 (p. 46)
• Cambiar la configuración de lanzamiento de un grupo de Auto Scaling (p. 50)
• Solicitud de instancias puntuales para aplicaciones flexibles y tolerantes a errores (p. 51)
• Configuración del arrendamiento de instancias con una configuración de inicio (p. 52)

Creación de una configuración de lanzamiento


Important

Le recomendamos encarecidamente que cree grupos de Auto Scaling a partir de plantillas de


lanzamiento para asegurarse de que obtiene las características más recientes de Amazon EC2.
Para obtener más información, consulte Creación de una plantilla de lanzamiento para un grupo
de Auto Scaling (p. 28). Proporcionamos información sobre las configuraciones de lanzamiento
para los clientes que aún no han migrado las configuraciones de lanzamiento a plantillas de
lanzamiento.

42
Auto Scaling de Amazon EC2 Guía del usuario
Creación de la configuración de lanzamiento (consola)

Cuando cree una configuración de lanzamiento, debe especificar información sobre las instancias EC2 que
se deben lanzar. Incluya la imagen de máquina de Amazon (AMI), el tipo de instancia, el par de claves,
los grupos de seguridad y el mapeo de dispositivos de bloques. Otra opción es crear una configuración de
lanzamiento usando atributos de una instancia EC2 en ejecución. Para obtener más información, consulte
Creación de una configuración de lanzamiento mediante una instancia EC2 (p. 46).

Después de crear una configuración de lanzamiento, puede crear un grupo de Auto Scaling. Para
obtener más información, consulte Crear un grupo de Auto Scaling mediante una configuración de
lanzamiento (p. 81).

Un grupo de Auto Scaling se asocia con una configuración de lanzamiento cada vez y no puede modificar
una configuración de lanzamiento una vez creada. Por lo tanto, si desea cambiar la configuración de
lanzamiento para un grupo de Auto Scaling, debe actualizarla con la nueva configuración de lanzamiento.
Para obtener más información, consulte Cambiar la configuración de lanzamiento de un grupo de Auto
Scaling (p. 50).

Contenido
• Creación de la configuración de lanzamiento (consola) (p. 43)
• Creación de una configuración de lanzamiento (AWS CLI) (p. 44)
• Configuración de las opciones de metadatos de instancia (p. 44)

Creación de la configuración de lanzamiento (consola)


Para crear una configuración de lanzamiento(consola)

1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.


2. En el panel de navegación, en AUTO SCALING, elija Launch Configurations (Configuraciones de
lanzamiento).
3. En la barra de navegación, seleccione suAWSRegión .
4. SeleccionarCrear una configuración de lanzamientoe introduzca un nombre para la configuración de
lanzamiento.
5. ParaImagen de máquina de Amazon (AMI), elija una AMI. Para encontrar una AMI específica,
puedeencontrar una AMI adecuada, anote su ID e ingrese el ID como criterio de búsqueda.

Para obtener el ID de la AMI de Amazon Linux 2:

a. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.


b. En el panel de navegación, enInstancias, elijaInstanciasy luego elijaLanzar instancias.
c. En la páginaQuick Start (Inicio rápido)de la pestañaPágina Choose an Amazon Machine Image
(Elegir una Amazon Machine Image), observe el ID de la AMI junto aAMI de Amazon Linux 2
(HVM).
6. ParaTipo de instancia, seleccione la configuración de hardware de las instancias.
7. UNDERConfiguración adicional, preste atención a los campos siguientes:

a. (Opcional) ParaOpción de compraPuede elegirSolicitar instancias de subastaPara solicitar


instancias de spot al precio de spot, limitado al precio bajo demanda. Si lo prefiere, puede
especificar un precio máximo por hora de instancia para las instancias de spot.
Note

Las instancias de spot son una opción rentable en comparación con las instancias
bajo demanda, si es flexible con respecto a cuándo es necesario ejecutar sus
aplicaciones y si sus aplicaciones se pueden interrumpir. Para obtener más información,
consulte Solicitud de instancias puntuales para aplicaciones flexibles y tolerantes a
errores (p. 51).

43
Auto Scaling de Amazon EC2 Guía del usuario
Creación de una configuración de lanzamiento (AWS CLI)

b. (Opcional) ParaPerfil de instancia IAM, seleccione el rol que desea asociar a las instancias.
Para obtener más información, consulte Función de IAM para aplicaciones que se ejecutan en
instancias Amazon EC2 (p. 300).
c. (Opcional) ParaMonitoreo, elija si desea habilitar las instancias para publicar datos de métricas a
intervalos de 1 minuto en Amazon CloudWatch habilitando una supervisión detallada. Se aplican
cargos adicionales. Para obtener más información, consulte Configuración de la supervisión para
instancias de Auto Scaling (p. 256).
d. (Opcional) ParaDetalles avanzados,Datos de usuarioSi lo prefiere, puede especificar los datos
de usuario para configurar una instancia durante el lanzamiento o para ejecutar un script de
configuración después de que se inicie la instancia.
e. (Opcional) ParaDetalles avanzados,Tipo de dirección IP, elija si desea asignar undirección IP
públicaa las instancias del grupo. Si no establece ningún valor, el valor predeterminado es utilizar
la configuración de IP pública de asignación automática de las subredes en las que se inician las
instancias.
8. (Opcional) ParaAlmacenamiento (volúmenes)Si no necesita almacenamiento adicional, puede omitir
esta sección. De lo contrario, para especificar los volúmenes que desea adjuntar a las instancias
además de los volúmenes especificados por la AMI, elijaAdd New Volume. A continuación, elija
las opciones deseadas y los valores asociados paraDispositivos,Snapshot,Size (Tamaño),Tipo de
volumen,IOPS,Rendimiento,Eliminar al terminar, yEncrypted.
9. ParaGrupos de seguridad, cree o seleccione el grupo de seguridad que se va a asociar con las
instancias del grupo. Si deja elCreación de un nuevo grupo de seguridadSi se selecciona, se configura
una regla SSH predeterminada para instancias Amazon EC2 que ejecutan Linux. Se configura una
regla de RDP predeterminada para instancias Amazon EC2 que ejecutan Windows.
10. ParaPar de claves (inicio de sesión), elija una opción enOpciones de par de claves.

Si ya ha configurado un key pair de instancia Amazon EC2, puede elegirlo aquí.

Si aún no tiene un key pair de instancia Amazon EC2, elijaCree un nuevo key pairY asígnele un
nombre reconocible. Seleccionarkey pairPara descargar el key pair en su equipo.
Important

Si necesita conectarse a sus instancias, no elijaProceed without a key pair.


11. Seleccione la casilla de confirmación y, a continuación, elija Create launch configuration.

Creación de una configuración de lanzamiento (AWS


CLI)
Para crear una configuración de lanzamiento mediante la línea de comandos

Puede utilizar uno de los siguientes comandos:

• create-launch-configuration (AWS CLI)


• New-ASLaunchConfiguration (AWS Tools for Windows PowerShell)

Configuración de las opciones de metadatos de


instancia
Amazon EC2 Auto Scaling permite configurar Instance Metadata Service (IMDS) en configuraciones de
lanzamiento. Esto le ofrece la opción de utilizar configuraciones de inicio para configurar las instancias
de Amazon EC2 en sus grupos de Auto Scaling para que requieran el servicio de metadatos de instancia

44
Auto Scaling de Amazon EC2 Guía del usuario
Configuración de IMDS

versión 2 (IMDSv2), que es un método orientado a la sesión para solicitar metadatos de instancia. Para
obtener más información sobre las ventajas de IMDSv2, consulte este artículo en laAWSBlog sobrePara
agregar defensa en profundidad al servicio de metadatos de instancia EC2.

Puede configurar IMDS para admitir IMDSv2 e IMDSv2 (el valor predeterminado), o para requerir el uso de
IMDSv2. Si está usando elAWS CLISi usa uno de los SDK para configurar IMDS, debe utilizar la versión
más reciente de laAWS CLIo el SDK para exigir el uso de IMDSv2.

Puede configurar su configuración de lanzamiento para lo siguiente:

• Requerir el uso de IMDSv2 al solicitar metadatos de instancia


• Especificar el límite de saltos de respuesta de PUT
• Desactivar el acceso a los metadatos de instancia

Puede encontrar más información sobre la configuración del servicio de metadatos de instancia en el
siguiente tema: Configuración del servicio de metadatos de instanciaen laGuía del usuario de Amazon EC2
para instancias de Linux.

Utilice el siguiente procedimiento para configurar las opciones IMDS en una configuración de lanzamiento.
Después de crear la configuración de lanzamiento, puede asociarla a su grupo de Auto Scaling. Si asocia
la configuración de inicio con un grupo de Auto Scaling existente, la configuración de inicio existente
se desasocia del grupo Auto Scaling y las instancias existentes requerirán reemplazo para utilizar las
opciones IMDS especificadas en la nueva configuración de inicio. Para obtener más información, consulte
Cambiar la configuración de lanzamiento de un grupo de Auto Scaling (p. 50).

Para configurar IMDS en una configuración de inicio(consola)

1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.


2. En el panel de navegación, en AUTO SCALING, elija Launch Configurations (Configuraciones de
lanzamiento).
3. En la barra de navegación, seleccione suAWSRegión .
4. SeleccionarCrear una configuración de lanzamientoy cree la configuración de lanzamiento de la
forma habitual. Incluya el ID de la imagen de máquina de Amazon (AMI), el tipo de instancia y, de
forma opcional, un key pair, uno o varios grupos de seguridad y un volumen de instancias de EBS
adicionales para sus instancias.
5. Para configurar las opciones de metadatos de instancia para todas las instancias asociadas a esta
configuración de lanzamiento, enConfiguración adicional, enDetalles avanzados, realice una de las
siguientes opciones:

a. ParaAccesible a metadatos, elija si habilitar o deshabilitar el acceso al punto de enlace HTTP


del servicio de metadatos de instancia. De forma predeterminada, el punto de enlace HTTP
está habilitado. Si decide desactivar el endpoint, el acceso a los metadatos de la instancia está
desactivado. Puede especificar la condición para requerir IMDSv2 sólo cuando el extremo HTTP
está habilitado.
b. ParaVersión de metadatosSi lo prefiere, puede optar por requerir el uso de Servicio de metadatos
de instancia versión 2 (IMDSv2) al solicitar metadatos de instancia. Si no especifica ningún valor,
el valor predeterminado es admitir IMDSv2 e IMDSv2.
c. ParaLímite de saltos de respuesta de tokens, puede establecer el número permitido de saltos de
red para el token de metadatos. Si no especifica un valor, el valor predeterminado es 1.
6. Cuando haya terminado, seleccioneCrear una configuración de lanzamiento.

Para exigir el uso de IMDSv2 en una configuración de lanzamiento mediante la herramientaAWS CLI

Utilice el siguientecreate-launch-configurationcomando con--metadata-optionsSe establece


enHttpTokens=required. Cuando se especifica un valor deHttpTokens, también debe

45
Auto Scaling de Amazon EC2 Guía del usuario
Creación de una configuración de
lanzamiento mediante una instancia EC2

establecerHttpEndpointPara habilitado. Como el encabezado de token seguro está establecido en


required para las solicitudes de recuperación de metadatos, esta opción indica a la instancia que exija el
uso de IMDSv2 al solicitar metadatos de instancia.

aws autoscaling create-launch-configuration \


--launch-configuration-name my-lc-with-imdsv2 \
--image-id ami-01e24be29428c15b2 \
--instance-type t2.micro \
...
--metadata-options "HttpEndpoint=enabled,HttpTokens=required"

Para desactivar el acceso a los metadatos de instancia

Utilice el siguientecreate-launch-configurationPara desactivar el acceso a los metadatos de instancia.


Puede volver a activar el acceso más adelante mediante el comandomodify-instance-metadata-
optionscomando.

aws autoscaling create-launch-configuration \


--launch-configuration-name my-lc-with-imds-disabled \
--image-id ami-01e24be29428c15b2 \
--instance-type t2.micro \
...
--metadata-options "HttpEndpoint=disabled"

Creación de una configuración de lanzamiento


mediante una instancia EC2
Amazon EC2 Auto Scaling le ofrece la opción de crear una configuración de lanzamiento mediante los
atributos de una instancia EC2 en ejecución.

Si la instancia especificada tiene propiedades que no admiten actualmente las configuraciones de


lanzamiento, las instancias lanzadas por el grupo de Auto Scaling puede que no sean idénticas a la
instancia EC2 original.

Existen diferencias entre crear una configuración de lanzamiento desde cero y crear una configuración
de lanzamiento desde una instancia EC2 existente. Cuando crea una configuración de lanzamiento
desde cero, debe especificar el ID de la imagen, el tipo de instancia, los recursos opcionales (como
dispositivos de almacenamiento) y ajustes opcionales (como la monitorización). Al crear una configuración
de lanzamiento desde una instancia en ejecución, Amazon EC2 Auto Scaling obtiene los atributos de la
configuración de lanzamiento de la instancia especificada. Los atributos también se derivan del mapeo de
dispositivos de bloques de la AMI desde la que se lanzó la instancia, omitiendo los dispositivos de bloques
adicionales que se añadieron tras el lanzamiento.

Al crear una configuración de inicio mediante una instancia en ejecución, puede anular los siguientes
atributos especificándolos como parte de la misma solicitud: AMI, dispositivos de bloques, key pair, perfil
de instancia, tipo de instancia, kernel, monitorización de instancias, tenencia de ubicación, disco RAM,
grupos de seguridad, precio de spot (máximo), datos del usuario, si la instancia tiene una dirección IP
pública y si la instancia está optimizada para EBS.
Tip

PuedeCree un grupo de Auto Scaling directamente desde una instancia EC2 (p. 83). Cuando
se utiliza esta característica, Amazon EC2 Auto Scaling crea automáticamente una configuración
de lanzamiento por usted.

46
Auto Scaling de Amazon EC2 Guía del usuario
Creación de una configuración de
lanzamiento mediante una instancia EC2

En los siguientes ejemplos se muestra cómo crear una configuración de lanzamiento desde una instancia
EC2.

Ejemplos
• Creación de una configuración de lanzamiento mediante una instancia EC2 (p. 47)
• Cree una configuración de inicio a partir de una instancia y anule los dispositivos de bloque (AWS
CLI) (p. 48)
• Cree una configuración de lanzamiento y anule el tipo de instancia (AWS CLI) (p. 49)

Creación de una configuración de lanzamiento


mediante una instancia EC2
Para crear una configuración de lanzamiento mediante los atributos de una instancia EC2 existente,
especifique el ID de la instancia.
Important

La AMI que se utiliza para lanzar la instancia especificada debe existir.

Creación de una configuración de lanzamiento desde una


instancia EC2 (consola)
Puede utilizar la consola para crear una configuración de lanzamiento y un grupo de Auto Scaling desde
una instancia EC2 en ejecución y añadir la instancia al nuevo grupo de Auto Scaling. Para obtener más
información, consulte Adjunte instancias de EC2 al grupo de Auto Scaling (p. 128).

Cree una configuración de lanzamiento desde una instancia EC2


(AWS CLI)
Utilice el siguientecreate-launch-configurationPara crear una configuración de lanzamiento desde una
instancia con los mismos atributos que la instancia. Todos los dispositivos de bloques añadidos después
del lanzamiento se omiten.

aws autoscaling create-launch-configuration --launch-configuration-name my-lc-from-instance


--instance-id i-a8e09d9c

Puede utilizar el siguientedescribe-launch-configurationPara describir la configuración de lanzamiento y


verificar que sus atributos coinciden con los de la instancia.

aws autoscaling describe-launch-configurations --launch-configuration-names my-lc-from-


instance

A continuación se muestra un ejemplo de respuesta.

{
"LaunchConfigurations": [
{
"UserData": null,
"EbsOptimized": false,
"LaunchConfigurationARN": "arn",
"InstanceMonitoring": {
"Enabled": false
},
"ImageId": "ami-05355a6c",

47
Auto Scaling de Amazon EC2 Guía del usuario
Cree una configuración de inicio a partir de una
instancia y anule los dispositivos de bloque (AWS CLI)

"CreatedTime": "2014-12-29T16:14:50.382Z",
"BlockDeviceMappings": [],
"KeyName": "my-key-pair",
"SecurityGroups": [
"sg-8422d1eb"
],
"LaunchConfigurationName": "my-lc-from-instance",
"KernelId": "null",
"RamdiskId": null,
"InstanceType": "t1.micro",
"AssociatePublicIpAddress": true
}
]
}

Cree una configuración de inicio a partir de una


instancia y anule los dispositivos de bloque (AWS CLI)
De forma predeterminada, Amazon EC2 Auto Scaling utiliza los atributos de la instancia EC2 que
especifica para crear la configuración de lanzamiento. Sin embargo, los dispositivos de bloques proceden
de la AMI usada para lanzar la instancia, no de la instancia. Para añadir dispositivos de bloques a la
configuración de lanzamiento, invalide el mapeo de dispositivos de bloques para la configuración de
lanzamiento.
Important

La AMI que se utiliza para lanzar la instancia especificada debe existir.

Crear una configuración de inicio y anular los dispositivos de


bloque
Utilice el siguientecreate-launch-configurationPara crear una configuración de lanzamiento mediante una
instancia EC2, pero con un mapeo de dispositivos de bloques personalizado.

aws autoscaling create-launch-configuration --launch-configuration-name my-lc-from-


instance-bdm --instance-id i-a8e09d9c \
--block-device-mappings "[{\"DeviceName\":\"/dev/sda1\",\"Ebs\":{\"SnapshotId\":
\"snap-3decf207\"}},{\"DeviceName\":\"/dev/sdf\",\"Ebs\":{\"SnapshotId\":\"snap-
eed6ac86\"}}]"

Utilice el siguientedescribe-launch-configurationPara describir la configuración de lanzamiento y verificar


que utiliza la asignación de dispositivos de bloques personalizada.

aws autoscaling describe-launch-configurations --launch-configuration-names my-lc-from-


instance-bdm

En la siguiente respuesta de ejemplo se describe la configuración de lanzamiento.

{
"LaunchConfigurations": [
{
"UserData": null,
"EbsOptimized": false,
"LaunchConfigurationARN": "arn",
"InstanceMonitoring": {
"Enabled": false
},
"ImageId": "ami-c49c0dac",

48
Auto Scaling de Amazon EC2 Guía del usuario
Cree una configuración de lanzamiento
y anule el tipo de instancia (AWS CLI)

"CreatedTime": "2015-01-07T14:51:26.065Z",
"BlockDeviceMappings": [
{
"DeviceName": "/dev/sda1",
"Ebs": {
"SnapshotId": "snap-3decf207"
}
},
{
"DeviceName": "/dev/sdf",
"Ebs": {
"SnapshotId": "snap-eed6ac86"
}
}
],
"KeyName": "my-key-pair",
"SecurityGroups": [
"sg-8637d3e3"
],
"LaunchConfigurationName": "my-lc-from-instance-bdm",
"KernelId": null,
"RamdiskId": null,
"InstanceType": "t1.micro",
"AssociatePublicIpAddress": true
}
]
}

Cree una configuración de lanzamiento y anule el tipo


de instancia (AWS CLI)
De forma predeterminada, Amazon EC2 Auto Scaling utiliza los atributos de la instancia EC2 que
especifica para crear la configuración de lanzamiento. En función de sus requisitos, tal vez desee invalidar
los atributos de la instancia y utilizar los valores que necesite. Por ejemplo, puede invalidar el tipo de
instancia.
Important
La AMI que se utiliza para lanzar la instancia especificada debe existir.

Crear una configuración de inicio y anular el tipo de instancia


Utilice el siguientecreate-launch-configurationPara crear una configuración de lanzamiento mediante
una instancia EC2, pero con un tipo de instancia (por ejemplo,t2.medium) que la instancia (por
ejemplot2.micro).

aws autoscaling create-launch-configuration --launch-configuration-name my-lc-from-


instance-changetype \
--instance-id i-a8e09d9c --instance-type t2.medium

Utilice el siguientedescribe-launch-configurationPara describir la configuración de lanzamiento y verificar


que el tipo de instancia se ha sustituido.

aws autoscaling describe-launch-configurations --launch-configuration-names my-lc-from-


instance-changetype

En la siguiente respuesta de ejemplo se describe la configuración de lanzamiento.

49
Auto Scaling de Amazon EC2 Guía del usuario
Cambiar una configuración de lanzamiento

"LaunchConfigurations": [
{
"UserData": null,
"EbsOptimized": false,
"LaunchConfigurationARN": "arn",
"InstanceMonitoring": {
"Enabled": false
},
"ImageId": "ami-05355a6c",
"CreatedTime": "2014-12-29T16:14:50.382Z",
"BlockDeviceMappings": [],
"KeyName": "my-key-pair",
"SecurityGroups": [
"sg-8422d1eb"
],
"LaunchConfigurationName": "my-lc-from-instance-changetype",
"KernelId": "null",
"RamdiskId": null,
"InstanceType": "t2.medium",
"AssociatePublicIpAddress": true
}
]
}

Cambiar la configuración de lanzamiento de un


grupo de Auto Scaling
Un grupo de Auto Scaling se asocia con una configuración de lanzamiento cada vez y no puede modificar
una configuración de lanzamiento una vez creada. Para cambiar la configuración de lanzamiento de un
grupo de Auto Scaling, utilice una configuración de lanzamiento existente como punto de partida para una
nueva configuración de lanzamiento. A continuación, actualice el grupo de Auto Scaling para utilizar la
nueva configuración de lanzamiento.

Después de cambiar la configuración de lanzamiento para un grupo de Auto Scaling, las nuevas instancias
se lanzan con las nuevas opciones de configuración, pero las instancias existentes no resultan afectadas.
Para actualizar las instancias existentes, termine las instancias de forma que se sustituyan por el grupo de
Auto Scaling o permita que el escalado automático reemplace gradualmente las instancias más antiguas
por instancias más recientes en función de suPolíticas de terminación (p. 215).
Note

Con la duración máxima de la instancia y las características de actualización de instancias,


también puede reemplazar todas las instancias del grupo de Auto Scaling para lanzar nuevas
instancias que utilicen la nueva configuración de lanzamiento. Para obtener más información,
consulte Reemplazo de instancias de Auto Scaling en función de la duración máxima (p. 108) y
Reemplazo de instancias de Auto Scaling basadas en una actualización de instancia (p. 110).

Para cambiar la configuración de lanzamiento de un grupo de Auto Scaling(consola)

1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.


2. En el panel de navegación, en AUTO SCALING, elija Launch Configurations (Configuraciones de
lanzamiento).
3. Seleccione la configuración de lanzamiento y elija Actions, Copy launch configuration. Se definirá una
nueva configuración de lanzamiento con las mismas opciones que la original, pero con el texto "Copy"
añadido al nombre.
4. En la página Copy Launch Configuration, modifique las opciones de configuración según sea
necesario y seleccione Create launch configuration.

50
Auto Scaling de Amazon EC2 Guía del usuario
Solicitar instancias de subasta

5. En el panel de navegación, elija AUTO SCALING y elija Auto Scaling Groups (Grupos de Auto
Scaling).
6. Seleccione la casilla de verificación situada junto al grupo de Auto Scaling.

Se abre un panel dividido en la parte inferior de la página, que muestra información sobre el grupo
seleccionado.
7. En la páginaDetalles de, elijaConfiguración de lanzamiento,Editar.
8. ParaConfiguración de lanzamiento, seleccione la nueva configuración de lanzamiento.
9. Cuando haya terminado, seleccioneActualización.

Para cambiar la configuración de lanzamiento de un grupo de Auto Scaling (AWS CLI)

1. Describa la configuración de lanzamiento actual utilizando el comando launch-configurations.


2. Cree una nueva configuración de lanzamiento utilizando el comando create-launch-configuration.
3. Actualice la configuración de lanzamiento del grupo de Auto Scaling mediante la herramienta
deupdate-auto-scaling-groupcon el comando--launch-configuration-namesParámetro de.

Para cambiar la configuración de lanzamiento de para un grupo de Auto Scaling (Herramientas


para Windows PowerShell)

1. Describa la configuración de lanzamiento actual mediante el comando Get-ASLaunchConfiguration.


2. Cree una nueva configuración de lanzamiento utilizando el comando New-ASLaunchConfiguration.
3. Actualice la configuración de lanzamiento del grupo de Auto Scaling mediante la herramienta
deUpdate-asAutoscalingGroupcon el comando-LaunchConfigurationNameParámetro de.

Solicitud de instancias puntuales para aplicaciones


flexibles y tolerantes a errores
Las instancias puntuales de Amazon EC2 son capacidad disponible con grandes descuentos en
comparación con el precio bajo demanda de EC2. Puede utilizar instancias puntuales para diversas
aplicaciones flexibles y tolerantes a errores.

En este tema se describe cómo lanzar únicamente instancias de spot en un grupo de Auto Scaling
especificando los ajustes en la configuración de lanzamiento, en lugar de en el propio grupo de Auto
Scaling. La información de este tema también se aplica a los grupos de Auto Scaling que solicitan
instancias puntuales con una plantilla de inicio.
Important

Normalmente, las instancias de spot se utilizan para complementar instancias bajo demanda.
Para este escenario, puede especificar la misma configuración que se utiliza para lanzar
instancias de spot durante la configuración de un grupo de Auto Scaling. Cuando especifique la
configuración como parte del grupo Auto Scaling, puede solicitar el inicio de instancias puntuales
solo después de iniciar un determinado número de instancias bajo demanda y, a continuación,
continuar iniciando alguna combinación de instancias bajo demanda e instancias puntuales a
medida que se escala el grupo. Para obtener más información, consulte Grupos de Auto Scaling
con varios tipos de instancias y opciones de compra (p. 56).

Antes de lanzar instancias de spot a través de Amazon EC2 Auto Scaling, le recomendamos que se
familiarice con el lanzamiento y la administración de instancias de spot. Para obtener más información,
consulteInstancias de spoten laGuía del usuario de Amazon EC2 para instancias de Linux.

51
Auto Scaling de Amazon EC2 Guía del usuario
Configuración de la tenencia de instancia

Cuando cree una configuración o una plantilla de lanzamiento para lanzar instancias de spot en lugar de
instancias bajo demanda, tenga en cuenta las siguientes consideraciones:

• Definición del precio máximo. Debe definir el precio máximo que está dispuesto a pagar en la
configuración o la plantilla de lanzamiento. Si el precio de las instancias de spot no supera el precio
máximo, la solicitud se atenderá en función de la capacidad de instancias de spot. Solo pagará el precio
de spot de las instancias de spot que lance. Si el precio de las instancias de spot supera el precio
máximo para una instancia en ejecución de su grupo de Auto Scaling, el servicio de spot de Amazon
EC2 termina la instancia. Para obtener más información, consultePrecios y ahorroen laGuía del usuario
de Amazon EC2 para instancias de Linux.
• Cambio del precio máximo. Debe crear una versión de la configuración o la plantilla de lanzamiento
con el precio nuevo. Si usa una nueva configuración de lanzamiento, debe asociarla a su grupo
de Auto Scaling. Con una plantilla de lanzamiento, puede configurar el grupo de Auto Scaling para
que utilice la plantilla predeterminada o la versión más reciente de la plantilla. De esta forma, se
asocia automáticamente al grupo de Auto Scaling. Las instancias existentes seguirán ejecutándose
siempre y cuando el precio máximo especificado en la configuración de lanzamiento o en la plantilla de
lanzamiento utilizada para estas instancias sea mayor que el precio de spot actual.
• Mantener las instancias de spot. Al terminar la instancia de spot, el grupo de Auto Scaling intenta lanzar
una instancia de sustitución para mantener la capacidad deseada para el grupo. Si el precio máximo
supera el precio de spot, se lanza una instancia de spot. De lo contrario (o si la solicitud no se satisface
correctamente), sigue intentándolo.
• Equilibrio entre zonas de disponibilidad. Si especifica varias zonas de disponibilidad, Amazon EC2
Auto Scaling distribuye las solicitudes de spot entre las zonas especificadas. Si el precio máximo es
demasiado bajo en una zona de disponibilidad para se atiendan las solicitudes, Amazon EC2 Auto
Scaling comprueba si se han atendido solicitudes en otras zonas. En tal caso, Amazon EC2 Auto Scaling
cancela las solicitudes que no se han atendido y las redistribuye entre las zonas de disponibilidad
que tienen solicitudes atendidas. Si el precio en una zona de disponibilidad sin solicitudes atendidas
se reduce lo suficiente como para poder atender solicitudes futuras, Amazon EC2 Auto Scaling
reequilibra todas las zonas de disponibilidad. Para obtener más información, consulte Actividades de
reequilibrio (p. 7).
• Terminación de instancias de spot. Amazon EC2 Auto Scaling puede terminar o sustituir las instancias
de spot de la misma forma que puede terminar o sustituir instancias bajo demanda. Para obtener más
información, consulte Controlar qué instancias de Auto Scaling terminan durante la escala en (p. 215).

Configuración del arrendamiento de instancias con


una configuración de inicio
La tenencia define cómo se distribuyen las instancias EC2 en el hardware físico y afecta a los precios. Hay
tres opciones de tenencia disponibles:

• Compartido (default): varios Cuentas de AWS Puede compartir el mismo hardware físico.
• instancia dedicada (dedicated): la instancia se ejecuta en hardware de un solo inquilino.
• Host dedicado (host): la instancia se ejecuta en un servidor físico con capacidad de instancia EC2
totalmente dedicada a su uso, un servidor aislado con configuraciones que puede controlar.

En este tema se describe cómo lanzar instancias dedicadas en el grupo de Auto Scaling especificando la
configuración de lanzamiento. Para obtener información sobre precios y obtener más información sobre
las instancias dedicadas, consulte laInstancias dedicadas de Amazon EC2Página del producto yInstancias
dedicadasen laGuía del usuario de Amazon EC2 para instancias de Linux.

Puede configurar la tenencia para instancias EC2 mediante una configuración de lanzamiento o una
plantilla de lanzamiento. Sin embargo, el valor de tenencia host no se puede utilizar con una configuración
de lanzamiento. Utilice solo los valores de tenencia dedicated o default.

52
Auto Scaling de Amazon EC2 Guía del usuario
Configuración de la tenencia de instancia

Important

Para utilizar un valor de tenencia de host, debe utilizar una plantilla de lanzamiento. Para obtener
más información, consulte Creación de una plantilla de lanzamiento para un grupo de Auto
Scaling (p. 28). Antes de lanzar hosts dedicados, le recomendamos que se familiarice con el
lanzamiento y la administración de hosts dedicados a través deAWS License Manager. Para
obtener más información, consulte laGuía del usuario de License Manager.

Las instancias dedicadas están físicamente aisladas en el nivel de hardware de host de las instancias
que no están dedicadas y de las instancias que pertenecen a otros grupos de Cuentas de AWS . Cuando
crea una VPC, su atributo de tenencia está establecido de forma predeterminada en default. En esa
VPC, puede lanzar instancias con un valor de tenencia de dedicated de forma que se ejecuten como
instancias de un solo propietario. De lo contrario, se ejecutarán como instancias de tenencia compartida
de forma predeterminada. Si establece el atributo de tenencia de una VPC en dedicated, todas las
instancias lanzadas en la VPC se ejecutan como instancias de un solo propietario.

Cuando crea una configuración de lanzamiento, el valor predeterminado de tenencia de ubicación de


la instancia es null y la tenencia de la instancia se controla mediante el atributo de tenencia de la
VPC. Puede especificar la tenencia de ubicación de las instancias para la configuración de lanzamiento
comodefaultordedicatedUtilice elcreate-launch-configurationCon el comando de la CLI con el--
placement-tenancyopción.

En la siguiente tabla se ofrece un resumen de la tenencia de ubicación de las instancias de Auto Scaling
lanzadas en una VPC.

Tenencia de configuración de Arrendamiento de VPC Arrendamiento de VPC


lanzamiento =default =dedicated

no especificada instancias de tenencia Instancias dedicadas


compartida

default instancias de tenencia Instancias dedicadas


compartida

dedicated Instancias dedicadas Instancias dedicadas

Para crear una configuración de lanzamiento que crea instancias dedicadas (AWS CLI)

Utilice el siguientecreate-launch-configurationPara crear una configuración de lanzamiento que establece


la tenencia de configuración de lanzamiento endedicated.

aws autoscaling create-launch-configuration --launch-configuration-name my-launch-config --


placement-tenancy dedicated --image-id ...

Puede utilizar el siguientedescribe-launch-configurationPara verificar la tenencia de ubicación de las


instancias de la configuración de lanzamiento.

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


config

A continuación se incluye un resultado de ejemplo de una configuración de lanzamiento que crea


instancias dedicadas. El parámetro PlacementTenancy solo forma parte del resultado de este comando
cuando se establece explícitamente la tenencia de ubicación de las instancias.

{
"LaunchConfigurations": [

53
Auto Scaling de Amazon EC2 Guía del usuario
Configuración de la tenencia de instancia

{
"UserData": null,
"EbsOptimized": false,
"PlacementTenancy": "dedicated",
"LaunchConfigurationARN": "arn",
"InstanceMonitoring": {
"Enabled": true
},
"ImageId": "ami-b5a7ea85",
"CreatedTime": "2020-03-08T23:39:49.011Z",
"BlockDeviceMappings": [],
"KeyName": null,
"SecurityGroups": [],
"LaunchConfigurationName": "my-launch-config",
"KernelId": null,
"RamdiskId": null,
"InstanceType": "m3.medium"
}
]
}

54
Auto Scaling de Amazon EC2 Guía del usuario

Grupos de Auto Scaling


Un registroGrupo de Auto ScalingContiene una colección de instancias Amazon EC2 que se tratan como
grupos lógicos para el escalado automático y la administración. Un grupo de Auto Scaling también le
permite utilizar funciones de Auto Scaling de Amazon EC2, como sustituciones de comprobaciones de
estado y políticas de escalado. El mantenimiento del número de instancias en un grupo de Auto Scaling y
el escalado automático son las funciones básicas del servicio de Auto Scaling de Amazon EC2.

El tamaño de un grupo de Auto Scaling depende del número de instancias que establezca como capacidad
deseada. Puede ajustar su tamaño para satisfacer la demanda, ya sea de forma manual o mediante el uso
de escalado automático.

Un grupo de Auto Scaling comienza lanzando suficientes instancias para satisfacer su capacidad deseada.
Mantiene este número de instancias realizando comprobaciones de estado periódicas en las instancias
del grupo. El grupo de Auto Scaling sigue manteniendo un número fijo de instancias aunque una de ellas
deje de estar en buen estado. Si una instancia pasa a tener un estado incorrecto, el grupo termina la
instancia en mal estado y lanza otra instancia para sustituirla. Para obtener más información, consulte
Comprobaciones de Health para instancias de Auto Scaling (p. 239).

Puede utilizar políticas de escalado para aumentar o disminuir dinámicamente el número de instancias
de su grupo para satisfacer las condiciones cambiantes. Cuando la política de escalado está en vigor, el
grupo de Auto Scaling ajusta la capacidad deseada del grupo de, entre los valores de capacidad mínima
y máxima, y lanza o termina las instancias según sea necesario. También puede efectuar el escalado
mediante una programación. Para obtener más información, consulte Escale el tamaño del grupo de Auto
Scaling (p. 123).

Un grupo de Auto Scaling puede lanzar Instancias bajo demanda, Instancias de spot o ambas. Puede
especificar varias opciones de compra para el grupo de Auto Scaling solo cuando configure el grupo para
que utilice una plantilla de lanzamiento. (Recomendamos que utilice plantillas de lanzamiento en lugar
de configuraciones de lanzamiento para asegurarse de que puede utilizar las últimas características de
Amazon EC2).

Las instancias de spot le brindan acceso a capacidad de Amazon EC2 sin uso con importantes descuentos
en comparación con los precios bajo demanda. Para obtener más información, consulte Amazon EC2
Instancias de spot. Existen diferencias clave entre las instancias de spot y las instancias a petición:

• El precio de las instancias de spot varía según la demanda


• Amazon EC2 puede terminar una instancia de spot individual a medida que cambie la disponibilidad o el
precio de las instancias de spot

Cuando se termina una instancia de spot, el grupo de Auto Scaling intenta lanzar una instancia de
sustitución para mantener la capacidad deseada para el grupo.

Cuando las instancias se lancen, si especifica varias zonas de disponibilidad, la capacidad deseada
se distribuye entre ellas. Si se produce una acción de escalado, Amazon EC2 Auto Scaling mantiene
automáticamente el equilibrio en todas las zonas de disponibilidad especificadas.

Si es nuevo en los grupos de Auto Scaling, comience creando una plantilla de inicio o una configuración de
inicio y, a continuación, utilícela para crear un grupo de Auto Scaling en el que todas las instancias tengan
los mismos atributos de instancia. Puede establecer los siguientes atributos de instancia especificándolos
como parte de la plantilla de inicio o de la configuración de inicio: AMI, dispositivos de bloque, key pair,
tipo de instancia, grupos de seguridad, datos de usuario, supervisión de instancias EC2, perfil de instancia,
kernel, ramdisk, tenencia de la instancia, si la instancia tiene una dirección IP pública y si la instancia

55
Auto Scaling de Amazon EC2 Guía del usuario
Uso de varios tipos de instancias y opciones de compra

está optimizada para EBS. LaCómo empezar a utilizar Amazon EC2 Auto Scaling (p. 14)proporciona una
introducción rápida a los distintos bloques de creación que se utilizan en Amazon EC2 Auto Scaling.

Contenido
• Grupos de Auto Scaling con varios tipos de instancias y opciones de compra (p. 56)
• Crear un grupo de Auto Scaling mediante una plantilla de lanzamiento (p. 79)
• Crear un grupo de Auto Scaling mediante una configuración de lanzamiento (p. 81)
• Creación de un grupo de Auto Scaling mediante una instancia de EC2 (p. 83)
• Etiquetado de grupos e instancias de Auto Scaling (p. 86)
• Elastic Load Balancing y Amazon EC2 Auto Scaling (p. 90)
• Iniciar instancias de Auto Scaling en una VPC (p. 103)
• Obtención de recomendaciones para un tipo de instanciaAWS Compute Optimizer (p. 105)
• Reemplazo de instancias de Auto Scaling en función de la duración máxima (p. 108)
• Reemplazo de instancias de Auto Scaling basadas en una actualización de instancia (p. 110)
• Combine los grupos de Auto Scaling en un solo grupo multizona (p. 117)
• Eliminación de la infraestructura de Auto Scaling (p. 119)

Grupos de Auto Scaling con varios tipos de


instancias y opciones de compra
Puede lanzar y escalar automáticamente una flota de instancias bajo demanda y de spot en un solo
grupo de Auto Scaling. Además de los descuentos relacionados con las instancias de spot, puede utilizar
instancias reservadas o un Savings Plan para conseguir mejores tarifas de las habituales en las instancias
a petición. Todos estos factores combinados le ayudan a optimizar el ahorro de costos en las instancias de
EC2, a la vez que se asegura de obtener la escala y el rendimiento deseados para su aplicación.

Primero especifique los parámetros de configuración comunes en una plantilla de lanzamiento y


selecciónela al crear un grupo de Auto Scaling. Al configurar el grupo de Auto Scaling, puede:

• Elija uno o varios tipos de instancia de instancias para el grupo (si lo desea, puede anular el tipo de
instancia especificado en la plantilla de lanzamiento).
• Defina varias plantillas de inicio para permitir que las instancias con diferentes arquitecturas de CPU (por
ejemplo, Arm y x86) se inicien en el mismo grupo Auto Scaling.
• Asigne una ponderación específica a cada tipo de instancia. Esto podría resultar útil si, por ejemplo, los
tipos de instancia ofrecen diferentes funcionalidades de vCPU, memoria, almacenamiento o ancho de
banda de red.
• Dé prioridad los tipos de instancia que pueden beneficiarse de los descuentos de Savings Plan de
Savings o de instancias reservadas.
• Especifique cuánta capacidad a petición y de spot se lanzará y, si lo desea, una parte básica a petición.
• Defina cómo debe Amazon EC2 Auto Scaling distribuir la capacidad de spot entre los tipos de instancia.
• Habilite el reequilibrio de la capacidad. Cuando activa el reequilibrio de capacidad, Amazon EC2
Auto Scaling intenta lanzar una instancia de spot siempre que el servicio de spot de Amazon EC2
notifique que una instancia de spot tiene un riesgo elevado de interrupción. Después de iniciar una
nueva instancia, finaliza una instancia antigua. Para obtener más información, consulte Reequilibrio de
capacidad de Amazon EC2 Auto Scaling de Amazon EC2 (p. 242).

Se mejora la disponibilidad si se implementa la aplicación en varios tipos de instancia que se ejecutan


en varias zonas de disponibilidad. Puede utilizar un solo tipo de instancia, pero es conveniente utilizar

56
Auto Scaling de Amazon EC2 Guía del usuario
Estrategias de asignación

varios para que Amazon EC2 Auto Scaling lance otro tipo de instancia en caso de que no haya suficiente
capacidad en las zonas de disponibilidad elegidas. Con las instancias de spot, si no hay suficiente
capacidad de una instancia, Amazon EC2 Auto Scaling seguirá intentándolo con otros grupos de instancias
de spot (en función de los tipos de instancias y la estrategia de distribución que haya elegido) en lugar de
iniciar instancias a petición, para que así pueda aprovechar el ahorro que brindan las instancias de spot.

Contenido
• Estrategias de asignación (p. 57)
• Control de la proporción de instancias bajo demanda (p. 59)
• Prácticas recomendadas para Instancias de spot (p. 60)
• Prerequisites (p. 61)
• Crear un grupo de Auto Scaling con instancias de spot y bajo demanda (consola) (p. 61)
• Configuración de estrategias de asignación de puntos (AWS CLI) (p. 63)
• Verificando si el grupo Auto Scaling está configurado correctamente y si el grupo ha iniciado instancias
(AWS CLI) (p. 69)
• Configuración de anulaciones (p. 69)

Estrategias de asignación
Las siguientes estrategias de asignación determinan cómo el grupo Auto Scaling cumple con
suCapacidades de spot y bajo demandade los posibles tipos de instancia.

Primero intenta garantizar que las instancias de Amazon EC2 Auto Scaling estén equilibradas
uniformemente entre las zonas de disponibilidad que ha especificado. A continuación, lanza tipos de
instancias de acuerdo con la estrategia de asignación especificada.

On-Demand Instances
La estrategia de asignación de las instancias bajo demanda es prioritized. Amazon EC2 Auto Scaling
utiliza el orden de los tipos de instancia en la lista de invalidaciones de plantilla de lanzamiento para
determinar qué tipo de instancia se utilizará en primer lugar al cumplir con la capacidad bajo demanda.
Por ejemplo, supongamos que ha especificado tres anulaciones de plantilla de lanzamiento en el siguiente
orden: c5.large, c4.large y c3.large. Cuando se lanzan las instancias bajo demanda, el grupo
de Auto Scaling satisface la capacidad bajo demanda comenzando conc5.large, luegoc4.largey, a
continuación,c3.large.

Tenga en cuenta lo siguiente cuando administre el orden de prioridad de las instancias a petición:

Puede pagar el uso por adelantado para conseguir importantes descuentos en las instancias bajo
demanda mediante Savings Plans o instancias reservadas. Para obtener más información acerca de
Savings Plans o Instancias reservadas, consulte laPrecios de Amazon EC2(Se ha creado el certificado).

• Con las instancias reservadas, se aplicará un descuento sobre los precios normales de las instancias a
petición si Amazon EC2 Auto Scaling lanza tipos de instancias coincidentes. Esto significa que, si tiene
instancias reservadas de c4.large sin utilizar, puede establecer la prioridad del tipo de instancia para
asignar la prioridad más alta de las instancias reservadas a un tipo de instancia c4.large. Cuando se
lanza una instancia c4.large, obtendrá el precio de instancia reservada.
• Con Savings Plans, se aplicará un descuento sobre los precios normales de las instancias a petición
cuando se utilicen los planes de ahorro de instancias de Amazon EC2 o los planes de Compute Savings
Plans. Debido a la naturaleza flexible de Savings Plans, dispondrá de una mayor flexibilidad para
priorizar los tipos de instancia. Siempre que utilice tipos de instancia que estén incluidos en su Savings
Plan, podrá asignarles cualquier orden de prioridad e incluso, ocasionalmente, cambiar su pedido por

57
Auto Scaling de Amazon EC2 Guía del usuario
Estrategias de asignación

completo y seguir disfrutando del descuento proporcionado por su plan de ahorros. Para obtener más
información sobre Savings Plans, consulte laGuía de usuario de Planes de ahorro.

Spot Instances
Amazon EC2 Auto Scaling proporciona las siguientes estrategias de asignación que se pueden utilizar para
las instancias de spot:

capacity-optimized

Amazon EC2 Auto Scaling asigna las instancias desde el grupo de instancias de spot con capacidad
óptima para el número de instancias que va a lanzar. Esta forma de implementación ayuda a utilizar la
capacidad sobrante de EC2 de la forma más eficaz posible.

Con las instancias de spot, los precios cambian lentamente en función de tendencias a largo plazo
registradas en la oferta y la demanda, pero la capacidad fluctúa en tiempo real. La estrategia
capacity-optimized lanza automáticamente Instancias de spot en los grupos con mayor
disponibilidad analizando los datos de capacidad en tiempo real y prediciendo cuáles son los que
tienen una mayor disponibilidad. Este comportamiento funciona bien con cargas de trabajo de big
data, análisis, representación de imágenes y medios, y aprendizaje automático. También funciona
bien a la hora realizar procesos de alto rendimiento que puedan tener un costo mayor de interrupción
asociado al reinicio del trabajo y la comprobación de puntos. Al ofrecer la posibilidad de experimentar
menos interrupciones, la estrategia capacity-optimized puede reducir el costo total de la carga de
trabajo.

También puede utilizar lacapacity-optimized-prioritizedA continuación, establezca el orden


de los tipos de instancia en la lista de invalidaciones de plantilla de lanzamiento de mayor a menor
prioridad (de la primera a la última de la lista). Amazon EC2 Auto Scaling respeta las prioridades de
tipo de instancia sobre la base del mejor esfuerzo, pero optimiza primero la capacidad. Esta es una
buena opción para cargas de trabajo en las que se debe minimizar la posibilidad de interrupción, pero
también importa la preferencia por ciertos tipos de instancia.
lowest-price

Amazon EC2 Auto Scaling asigna las instancias de spot a partir del número (N) de grupos por zona de
disponibilidad que especifique y desde los grupos de instancias de spot que tienen el precio más bajo
en cada zona de disponibilidad.

Por ejemplo, si especifica cuatro tipos de instancia y cuatro zonas de disponibilidad, su grupo de Auto
Scaling tiene acceso a hasta 16 grupos de spot (cuatro en cada zona de disponibilidad). Si especifica
dos grupos de spot (N = 2) para la estrategia de asignación, su grupo de Auto Scaling puede recurrir a
los dos grupos más baratos por zona de disponibilidad para cubrir la capacidad de spot.

Tenga en cuenta que Amazon EC2 Auto Scaling intenta dibujar instancias puntuales a partir del
número de grupos que especifique con el mejor esfuerzo. Si un grupo se queda sin capacidad puntual
antes de cumplir con la capacidad deseada, Amazon EC2 Auto Scaling seguirá cumpliendo su
solicitud utilizando el siguiente grupo más barato. Para asegurarse de que se cumple la capacidad
deseada, puede recibir instancias puntuales de más del número de grupos que especificó. Del mismo
modo, si la mayoría de los grupos no tienen capacidad puntual, es posible que reciba la capacidad
total deseada de menos que el número de grupos que especificó.

Para comenzar, le recomendamos elegir la estrategia de asignación capacity-optimized y especificar


unos tipos de instancias que sean adecuados para su aplicación. Además, puede definir una serie de
zonas de disponibilidad para que Amazon EC2 Auto Scaling pueda elegir al lanzar instancias.

Si lo prefiere, puede especificar un precio máximo para las instancias de spot. Si no especifica un precio
máximo, el precio máximo predeterminado es el precio bajo demanda, pero seguirá recibiendo los
importantes descuentos que ofrecen las instancias de spot. Estos descuentos son posibles debido a los
precios de spot estables disponibles mediante el nuevo modelo de precios de las instancias de spot.

58
Auto Scaling de Amazon EC2 Guía del usuario
Control de la proporción de instancias bajo demanda

Para obtener más información acerca de las estrategias de asignación de instancias de spot,
consultePresentamos la estrategia de asignación de capacidad optimizada para las instancias de spot de
Amazon EC2en laAWSBlog.

Control de la proporción de instancias bajo demanda


Tiene control total sobre la proporción de instancias en el grupo de Auto Scaling que se lanzan como
instancias bajo demanda. Para asegurarse de que siempre tiene capacidad de instancias, puede designar
un porcentaje del grupo para lanzarse como instancias bajo demanda y, también, un número base de
instancias bajo demanda con el que comenzar. Si decide especificar una capacidad base de instancias
bajo demanda, el grupo de Auto Scaling garantiza que esta capacidad base de instancias bajo demanda
se lance en primer lugar cuando el grupo aumente de tamaño. Lo que esté más allá de la capacidad base
utiliza porcentajes bajo demanda para determinar cuántas instancias bajo demanda y de spot se deben
lanzar. Puede especificar cualquier número del 0 al 100 para el porcentaje bajo demanda.

El comportamiento del grupo de Auto Scaling a medida que aumenta de tamaño es el siguiente:

Ejemplo: Comportamiento de escalado

Distribución de Número total de instancias en ejecución en las opciones de compra


instancias

10 20 30 40

Ejemplo 1

On-Demand base: 10 10 10 10
10

On-Demand 0 5 10 15
percentage above
base: 50%

Spot percentage: 0 5 10 15
50%

Ejemplo 2

On-Demand base: 0 0 0 0
0

On-Demand 0 0 0 0
percentage above
base: 0%

Spot percentage: 10 20 30 40
100%

Ejemplo 3

On-Demand base: 0 0 0 0
0

On-Demand 6 12 18 24
percentage above
base: 60%

Spot percentage: 4 8 12 16
40%

Ejemplo 4

59
Auto Scaling de Amazon EC2 Guía del usuario
Prácticas recomendadas para Instancias de spot

Distribución de Número total de instancias en ejecución en las opciones de compra


instancias

On-Demand base: 0 0 0 0
0

On-Demand 10 20 30 40
percentage above
base: 100%

Spot percentage: 0 0 0 0
0%

Ejemplo 5

On-Demand base: 10 12 12 12
12

On-Demand 0 0 0 0
percentage above
base: 0%

Spot percentage: 0 8 18 28
100%

Prácticas recomendadas para Instancias de spot


Antes de crear su grupo de Auto Scaling para solicitar instancias de spot, consultePrácticas recomendadas
para instancias de spot EC2en laGuía del usuario de Amazon EC2 para instancias de Linux. Siga estas
prácticas recomendadas cuando planifique la solicitud para que pueda aprovisionar el tipo de instancias
que desee al menor precio posible. También le recomendamos que realice las siguientes acciones:

• Use el precio máximo predeterminado, que es el precio bajo demanda. Solo pagará el precio de spot
de las instancias de spot que lance. Si el precio de sport no supera el precio máximo, la solicitud se
atenderá en función de la disponibilidad. Para obtener más información, consultePrecios y ahorroen
laGuía del usuario de Amazon EC2 para instancias de Linux.
• Cree su grupo de Auto Scaling con varios tipos de instancias. Dado que la capacidad fluctúa
independientemente para cada tipo de instancia en una zona de disponibilidad, a menudo puede obtener
más capacidad de cómputos cuando tiene flexibilidad en los tipos de instancias.
• Del mismo modo, no se limita únicamente a los tipos de instancias más populares. Dado que los precios
se ajustan en función de la demanda a largo plazo, los tipos de instancia más populares (como las
familias de instancias lanzadas recientemente) tienden a tener más ajustes de precios. Elegir tipos de
instancia de generaciones más antiguas, que resultan menos populares, tiende a reducir los costos y
ocasionar menos interrupciones.
• Le recomendamos que utilice lacapacity-optimizedorcapacity-optimized-
prioritizedEstrategia de asignación de recursos. Esto significa que Amazon EC2 Auto Scaling
lanza instancias mediante el uso de grupos de spot que se seleccionan de manera óptima en función
de la capacidad de spot disponible, lo que le ayuda a reducir la posibilidad de que se produzca una
interrupción de spot.
• Si elige lalowest-pricey ejecute un servicio web, especifique un número elevado de grupos de spot,
por ejemplo, N = 10. La especificación de un número elevado de grupos de spot reduce el impacto
de las interrupciones de instancias de spot si un grupo de una de las zonas de disponibilidad deja de
estar disponible temporalmente. Si ejecuta el procesamiento por lotes u otras aplicaciones que no son
esenciales, puede especificar un número menor de grupos de spot, por ejemplo, N=2. Esto ayuda a
garantizar que aprovisiona instancias de spot solo de los grupos de spot más económicos disponibles
para cada zona de disponibilidad.

60
Auto Scaling de Amazon EC2 Guía del usuario
Prerequisites

Si desea especificar un precio máximo, puede usar laAWS CLIo un SDK para crear el grupo de Auto
Scaling, pero tenga cuidado. Las Instancias de spot no se lanzarán si el precio máximo es inferior al precio
de spot de los tipos de instancias seleccionados.

Prerequisites
Su plantilla de lanzamiento está configurada para usarse con un grupo de Auto Scaling. Para obtener más
información, consulte Creación de una plantilla de lanzamiento para un grupo de Auto Scaling (p. 28).

Puede crear un grupo de Auto Scaling mediante una plantilla de lanzamiento solo si tiene permisos para
llamar a laec2:RunInstancesaction. Para obtener más información, consulte Soporte para plantillas de
lanzamiento de (p. 295).

Crear un grupo de Auto Scaling con instancias de spot


y bajo demanda (consola)
Siga estos pasos para crear una flota de instancias de spot y bajo demanda que puede escalar.

Para crear un grupo de Auto Scaling con instancias de spot y bajo demanda

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. En la barra de navegación de la parte superior de la pantalla, elija la mismaAWSRegión que utilizó
cuando creó la plantilla de lanzamiento.
3. Elija Create an Auto Scaling group (Crear un grupo de Auto Scaling).
4. En la página Choose launch template or configuration (Elegir plantilla o configuración de lanzamiento)
haga lo siguiente:

a. ParaNombre de grupo de Auto Scaling, escriba un nombre para el grupo de Auto Scaling.
b. En launch template (Plantilla de lanzamiento), elija una plantilla de lanzamiento existente.
c. ParaLanzar la versión de plantillaPara escalado ascendente, decida si el grupo de Auto Scaling
utiliza la versión predeterminada, la última versión o una versión específica de la plantilla de
lanzamiento.
d. Compruebe que la plantilla de lanzamiento admita todas las opciones que tiene previsto utilizar y,
a continuación, elija Next (Siguiente).
5. En la páginaConfigurar ajustes(En inglés), paraOpciones de compra de instancias, elijaCombinación
entre opciones de compra y tipos de instancia.
6. En Instances distribution (Distribución de instancias), haga lo siguiente:

Puede omitir estos pasos si desea mantener la configuración predeterminada.

a. ParaCapacidad base bajo demanda, especifique el número mínimo de instancias de la capacidad


inicial del grupo de Auto Scaling que deben satisfacer las instancias bajo demanda.
b. En On-Demand percentage above base (Porcentaje bajo demanda por encima de la base),
especifique los porcentajes de instancias bajo demanda e instancias de spot para su capacidad
adicional más allá de la cantidad base bajo demanda opcional.
c. Para la Spot allocation strategy per Availability Zone (Estrategia de asignación de spot por
zona de disponibilidad), se recomienda mantener la configuración predeterminada de Capacity
optimized (Capacidad optimizada). Si prefiere no mantener el valor predeterminado, elija Lowest
price (Precio más bajo), y, a continuación, especifique el número de grupos de instancias de spot
de precio más bajo para diversificar.
d. (Opcional) ParaPriorizar los tipos de instancia, marque la casilla y, a continuación, coloque los
tipos de instancia en elTipos de instanciasen el orden de prioridad deseado.

61
Auto Scaling de Amazon EC2 Guía del usuario
Crear un grupo de Auto Scaling con
instancias de spot y bajo demanda (consola)

e. ParaReequilibrio de la capacidad, elija si desea habilitar o deshabilitar el reequilibrio de


capacidad. Para obtener más información, consulte Reequilibrio de capacidad de Amazon EC2
Auto Scaling de Amazon EC2 (p. 242).
7. Para Instance types (Tipos de instancia), elija qué tipos de instancias se pueden iniciar, utilizando
nuestras recomendaciones como punto de partida. De lo contrario, puede eliminar los tipos de
instancia y agregarlos más tarde, según sea necesario.
8. (Opcional) Para cambiar el orden de los tipos de instancia, utilice las flechas. El orden en el que
establezca los tipos de instancia establece su prioridad para las instancias bajo demanda. Se
prioriza al máximo el tipo de instancia al principio de la lista cuando el grupo de Auto Scaling lanza la
capacidad bajo demanda.
9. (Opcional) Para usarPonderación de instancias de (p. 73)asigne a cada tipo de instancia una
ponderación relativa que se corresponda con lo que debe contar en la capacidad del grupo de Auto
Scaling.
10. En Network (Red), para VPC, elija la VPC para los grupos de seguridad especificados en la plantilla
de lanzamiento. En EC2-Classic, no se pueden lanzar instancias utilizando varios tipos de instancia y
opciones de compra.
11. En Subnet (Subred), elija una o varias subredes de la VPC especificada. Utilice subredes en varias
zonas de disponibilidad para lograr una alta disponibilidad. Para obtener más información acerca de la
alta disponibilidad con Amazon EC2 Auto Scaling, consulteDistribución de instancias entre zonas de
disponibilidad (p. 6).
12. Elija Next (Siguiente).

O puede aceptar el resto de las opciones predeterminadas y elegir Skip to review (Omitir para revisar).
13. En la páginaConfigure las opciones avanzadas, configure las siguientes opciones y, a continuación,
elijaSiguiente:

a. (Opcional) Para registrar sus instancias EC2 con Elastic Load Balancing (ELB), elija un
balanceador de carga existente o cree uno nuevo. Para obtener más información, consulte Elastic
Load Balancing y Amazon EC2 Auto Scaling (p. 90). Para crear un nuevo balanceador de
carga, siga el procedimiento deConfigurar un Application Load Balancer o un Network Load
Balancer utilizando la consola Auto Scaling de Amazon EC2 (p. 94).
b. (Opcional) Para habilitar laELBComprobaciones de estado de laComprobaciones de estado,
elijaELBUNDERTipo de comprobación de estado.
c. (Opcional) EnPerHealth odo de gracia de la, introduzca la cantidad de tiempo hasta que
Amazon EC2 Auto Scaling compruebe el estado de las instancias después de su puesta en
servicio. La intención es evitar que Amazon EC2 Auto Scaling marque instancias como en mal
estado y terminen antes de que tengan tiempo para aparecer. El valor predeterminado es de
300 segundos.
14. En la página Configure group size and scaling policies (Configurar directivas de tamaño de grupo y
escala) configure las siguientes opciones y, a continuación, elija Next (Siguiente):

a. (Opcional) En Desired capacity (Capacidad deseada), introduzca el número inicial de instancias


que desea iniciar. Al cambiar este número a un valor fuera de los límites de capacidad mínima
o máxima, debe actualizar los valores de Minimum capacity (Capacidad mínima) o Maximum
capacity (Capacidad máxima). Para obtener más información, consulte Determina los límites de
capacidad para el grupo de Auto Scaling (p. 124).
b. (Opcional) Para escalar automáticamente el tamaño del grupo de Auto Scaling, elijaPolítica de
escalado de seguimiento de destinoy siga las instrucciones. Para obtener más información,
consulte Políticas de escalado de seguimiento de destino (p. 141).
c. (Opcional) en Instance scale-in protection (Protección de escalado descendente de instancias),
elija si desea habilitar la protección de escalado descendente de instancias. Para obtener más
información, consulte Usar la protección de escalado ascendente de instancias (p. 225).

62
Auto Scaling de Amazon EC2 Guía del usuario
Configuración de estrategias de
asignación de puntos (AWS CLI)

15. (Opcional) Para recibir notificaciones, en Add notification (Añadir notificación), configure la
notificación y, a continuación, elija Next (Siguiente). Para obtener más información, consulte Obtener
notificaciones de Amazon SNS cuando su grupo de Auto Scaling se escala (p. 259).
16. (Opcional) Para añadir etiquetas, elija Add Tags (Añadir etiquetas), facilite un valor y una clave de
etiqueta, y luego elija Next (Siguiente). Para obtener más información, consulte Etiquetado de grupos
e instancias de Auto Scaling (p. 86).
17. En la página Review (Revisar), elija Create Auto Scaling group (Crear grupo de Auto Scaling).

Configuración de estrategias de asignación de puntos


(AWS CLI)
En las siguientes configuraciones de ejemplo se muestra cómo iniciar instancias puntuales mediante las
diferentes estrategias de asignación de puntos.
Note

Estos ejemplos muestran cómo utilizar un archivo de configuración con formato JSON o YAML.
Si utilizaAWS CLIversión 1, debe especificar un archivo de configuración con formato JSON. Si
utilizaAWS CLIversión 2, puede especificar un archivo de configuración con formato YAML o
JSON.

Ejemplos
• Ejemplo 1: Lanzamiento de Instancias de spot con lacapacity-optimizedEstrategia de
asignación (p. 63)
• Ejemplo 2: Lanzamiento de Instancias de spot con lacapacity-optimized-prioritizedEstrategia de
asignación (p. 65)
• Ejemplo 3: Lanzamiento de Instancias de spot con lalowest-priceEstrategia de asignación diversificada
en dos grupos (p. 67)

Ejemplo 1: Lanzamiento de Instancias de spot con lacapacity-


optimizedEstrategia de asignación
Los siguientes ejemplos decreate-auto-scaling-groupcrea un grupo de Auto Scaling que especifica lo
siguiente:

• El porcentaje del grupo que se va a lanzar como instancias bajo demanda (0) y un número base de
instancias bajo demanda con el que se va a comenzar (1)
• Los tipos de instancia que se lanzarán en orden de prioridad
(c5.large,c5a.large,m5.large,m5a.large,c4.large,m4.large,c3.large,m3.large)
• Las subredes en las que lanzar las instancias (subnet-5ea0c127, subnet-
c934b782)subnet-6194ea3b, cada una de ellas correspondiente a una zona de disponibilidad
diferente
• La plantilla de lanzamiento (my-launch-template) y la versión de la plantilla de lanzamiento
($Default)

Cuando Amazon EC2 Auto Scaling intenta cubrir la capacidad bajo demanda, lanza lac5.largeprimer
tipo de instancia. Las instancias de spot proceden del grupo de spot óptimo en cada zona de disponibilidad
en función de la capacidad de la instancia de spot.

63
Auto Scaling de Amazon EC2 Guía del usuario
Configuración de estrategias de
asignación de puntos (AWS CLI)

JSON

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

A continuación se muestra un ejemplo de un archivo config.json.

{
"AutoScalingGroupName": "my-asg",
"MixedInstancesPolicy": {
"LaunchTemplate": {
"LaunchTemplateSpecification": {
"LaunchTemplateName": "my-launch-template",
"Version": "$Default"
},
"Overrides": [
{
"InstanceType": "c5.large"
},
{
"InstanceType": "c5a.large"
},
{
"InstanceType": "m5.large"
},
{
"InstanceType": "m5a.large"
},
{
"InstanceType": "c4.large"
},
{
"InstanceType": "m4.large"
},
{
"InstanceType": "c3.large"
},
{
"InstanceType": "m3.large"
}
]
},
"InstancesDistribution": {
"OnDemandBaseCapacity": 1,
"OnDemandPercentageAboveBaseCapacity": 0,
"SpotAllocationStrategy": "capacity-optimized"
}
},
"MinSize": 1,
"MaxSize": 5,
"DesiredCapacity": 3,
"VPCZoneIdentifier": "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782"
}

YAML
También puede utilizar el siguientecreate-auto-scaling-grouppara crear el grupo Auto Scaling, haciendo
referencia a un archivo YAML como único parámetro para el grupo Auto Scaling en lugar de un archivo
JSON.

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

A continuación se muestra un ejemplo de un archivo config.yaml.

64
Auto Scaling de Amazon EC2 Guía del usuario
Configuración de estrategias de
asignación de puntos (AWS CLI)

---
AutoScalingGroupName: my-asg
MixedInstancesPolicy:
LaunchTemplate:
LaunchTemplateSpecification:
LaunchTemplateName: my-launch-template
Version: $Default
Overrides:
- InstanceType: c5.large
- InstanceType: c5a.large
- InstanceType: m5.large
- InstanceType: m5a.large
- InstanceType: c4.large
- InstanceType: m4.large
- InstanceType: c3.large
- InstanceType: m3.large
InstancesDistribution:
OnDemandBaseCapacity: 1
OnDemandPercentageAboveBaseCapacity: 0
SpotAllocationStrategy: capacity-optimized
MinSize: 1
MaxSize: 5
DesiredCapacity: 3
VPCZoneIdentifier: subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782

Ejemplo 2: Lanzamiento de Instancias de spot con lacapacity-


optimized-prioritizedEstrategia de asignación
Los siguientes ejemplos decreate-auto-scaling-groupcrea un grupo de Auto Scaling que especifica lo
siguiente:

• El porcentaje del grupo que se va a lanzar como instancias bajo demanda (0) y un número base de
instancias bajo demanda con el que se va a comenzar (1)
• Los tipos de instancia que se lanzarán en orden de prioridad
(c5.large,c5a.large,m5.large,m5a.large,c4.large,m4.large,c3.large,m3.large)
• Las subredes en las que lanzar las instancias (subnet-5ea0c127, subnet-
c934b782)subnet-6194ea3b, cada una de ellas correspondiente a una zona de disponibilidad
diferente
• La plantilla de lanzamiento (my-launch-template) y la versión de la plantilla de lanzamiento
($Latest)

Cuando Amazon EC2 Auto Scaling intenta cubrir la capacidad bajo demanda, lanza lac5.largeprimer
tipo de instancia. Cuando Amazon EC2 Auto Scaling intenta cumplir con su capacidad de spot, respeta las
prioridades de tipo de instancia sobre la base del mejor esfuerzo, pero optimiza primero la capacidad.

JSON

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

A continuación se muestra un ejemplo de un archivo config.json.

{
"AutoScalingGroupName": "my-asg",
"MixedInstancesPolicy": {
"LaunchTemplate": {
"LaunchTemplateSpecification": {

65
Auto Scaling de Amazon EC2 Guía del usuario
Configuración de estrategias de
asignación de puntos (AWS CLI)

"LaunchTemplateName": "my-launch-template",
"Version": "$Latest"
},
"Overrides": [
{
"InstanceType": "c5.large"
},
{
"InstanceType": "c5a.large"
},
{
"InstanceType": "m5.large"
},
{
"InstanceType": "m5a.large"
},
{
"InstanceType": "c4.large"
},
{
"InstanceType": "m4.large"
},
{
"InstanceType": "c3.large"
},
{
"InstanceType": "m3.large"
}
]
},
"InstancesDistribution": {
"OnDemandBaseCapacity": 1,
"OnDemandPercentageAboveBaseCapacity": 0,
"SpotAllocationStrategy": "capacity-optimized-prioritized"
}
},
"MinSize": 1,
"MaxSize": 5,
"DesiredCapacity": 3,
"VPCZoneIdentifier": "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782"
}

YAML

También puede utilizar el siguientecreate-auto-scaling-grouppara crear el grupo Auto Scaling, haciendo


referencia a un archivo YAML como único parámetro para el grupo Auto Scaling en lugar de un archivo
JSON.

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

A continuación se muestra un ejemplo de un archivo config.yaml.

---
AutoScalingGroupName: my-asg
MixedInstancesPolicy:
LaunchTemplate:
LaunchTemplateSpecification:
LaunchTemplateName: my-launch-template
Version: $Default
Overrides:
- InstanceType: c5.large
- InstanceType: c5a.large
- InstanceType: m5.large

66
Auto Scaling de Amazon EC2 Guía del usuario
Configuración de estrategias de
asignación de puntos (AWS CLI)

- InstanceType: m5a.large
- InstanceType: c4.large
- InstanceType: m4.large
- InstanceType: c3.large
- InstanceType: m3.large
InstancesDistribution:
OnDemandBaseCapacity: 1
OnDemandPercentageAboveBaseCapacity: 0
SpotAllocationStrategy: capacity-optimized-prioritized
MinSize: 1
MaxSize: 5
DesiredCapacity: 3
VPCZoneIdentifier: subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782

Ejemplo 3: Lanzamiento de Instancias de spot con lalowest-


priceEstrategia de asignación diversificada en dos grupos
Los siguientes ejemplos decreate-auto-scaling-groupcrea un grupo de Auto Scaling que especifica lo
siguiente:

• El porcentaje del grupo de que lanzar como instancias bajo demanda (50) sin especificar también un
número base de instancias bajo demanda con las que comenzar
• Los tipos de instancia que se lanzarán en orden de prioridad
(c5.large,c5a.large,m5.large,m5a.large,c4.large,m4.large,c3.large,m3.large)
• Las subredes en las que lanzar las instancias (subnet-5ea0c127, subnet-
c934b782)subnet-6194ea3b, cada una de ellas correspondiente a una zona de disponibilidad
diferente
• La plantilla de lanzamiento (my-launch-template) y la versión de la plantilla de lanzamiento
($Latest)

Cuando Amazon EC2 Auto Scaling intenta cubrir la capacidad bajo demanda, lanza lac5.largeprimer
tipo de instancia. Para su capacidad de spot, Amazon EC2 Auto Scaling intenta lanzar las instancias de
spot de manera uniforme en los dos grupos de precio más bajo de cada zona de disponibilidad.

JSON

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

A continuación se muestra un ejemplo de un archivo config.json.

{
"AutoScalingGroupName": "my-asg",
"MixedInstancesPolicy": {
"LaunchTemplate": {
"LaunchTemplateSpecification": {
"LaunchTemplateName": "my-launch-template",
"Version": "$Latest"
},
"Overrides": [
{
"InstanceType": "c5.large"
},
{
"InstanceType": "c5a.large"
},
{
"InstanceType": "m5.large"

67
Auto Scaling de Amazon EC2 Guía del usuario
Configuración de estrategias de
asignación de puntos (AWS CLI)

},
{
"InstanceType": "m5a.large"
},
{
"InstanceType": "c4.large"
},
{
"InstanceType": "m4.large"
},
{
"InstanceType": "c3.large"
},
{
"InstanceType": "m3.large"
}
]
},
"InstancesDistribution": {
"OnDemandPercentageAboveBaseCapacity": 50,
"SpotAllocationStrategy": "lowest-price",
"SpotInstancePools": 2
}
},
"MinSize": 1,
"MaxSize": 5,
"DesiredCapacity": 3,
"VPCZoneIdentifier": "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782"
}

YAML

También puede utilizar el siguientecreate-auto-scaling-grouppara crear el grupo Auto Scaling, haciendo


referencia a un archivo YAML como único parámetro para el grupo Auto Scaling en lugar de un archivo
JSON.

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

A continuación se muestra un ejemplo de un archivo config.yaml.

---
AutoScalingGroupName: my-asg
MixedInstancesPolicy:
LaunchTemplate:
LaunchTemplateSpecification:
LaunchTemplateName: my-launch-template
Version: $Default
Overrides:
- InstanceType: c5.large
- InstanceType: c5a.large
- InstanceType: m5.large
- InstanceType: m5a.large
- InstanceType: c4.large
- InstanceType: m4.large
- InstanceType: c3.large
- InstanceType: m3.large
InstancesDistribution:
OnDemandPercentageAboveBaseCapacity: 50
SpotAllocationStrategy: lowest-price
SpotInstancePools: 2
MinSize: 1
MaxSize: 5
DesiredCapacity: 3

68
Auto Scaling de Amazon EC2 Guía del usuario
Verificando si el grupo Auto Scaling está configurado
correctamente y si el grupo ha iniciado instancias (AWS CLI)

VPCZoneIdentifier: subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782

Note

Para ver otros ejemplos, consulteEspecificación de una plantilla de inicio diferente para un
tipo de instancia (p. 69),Configuración de ponderación de instancias para Amazon EC2
Auto Scaling (p. 73), yReequilibrio de capacidad de Amazon EC2 Auto Scaling de Amazon
EC2 (p. 242).

Verificando si el grupo Auto Scaling está configurado


correctamente y si el grupo ha iniciado instancias
(AWS CLI)
Para comprobar si el grupo de Auto Scaling está configurado correctamente y si ha iniciado instancias,
utilice la herramientadescribe-auto-scaling-groupscomando. Compruebe que la directiva de instancias
mixtas y la lista de subredes existen y que están configuradas correctamente. Si las instancias se han
lanzado, verá una lista de las instancias y sus estados. Para ver las actividades de escalado que resultan
del lanzamiento de instancias, utilice la herramientadescribe-scaling-activitiescomando. Puede supervisar
las actividades de escalado que están en curso y que se han completado recientemente.

Configuración de anulaciones
Dependiendo de sus requisitos, debe reemplazar algunos atributos de la plantilla de inicio actual cuando
utilice varios tipos de instancias. Por ejemplo, algunos tipos de instancia pueden requerir una plantilla de
lanzamiento con una AMI diferente. Para ello, configure laOverridespropiedad.

LaOverridesle permite definir un conjunto de propiedades que Amazon EC2 Auto Scaling puede utilizar
para iniciar instancias, entre las que se incluyen:

• InstanceType— El tipo de instancia. Para obtener más información sobre los tipos de instancia
disponibles, consulteTipos de instanciasen laGuía del usuario de Amazon EC2 para instancias de Linux.
• LaunchTemplateSpecification— (Opcional) Plantilla de inicio para un tipo de instancia individual.
Esta propiedad está limitada actualmente a laAWS CLIo un SDK, y no está disponible desde la consola.
• WeightedCapacity— (Opcional) El número de unidades que una instancia aprovisionada de este tipo
proporciona hacia el cumplimiento de la capacidad deseada del grupo de Auto Scaling.

Contenido
• Especificación de una plantilla de inicio diferente para un tipo de instancia (p. 69)
• Configuración de ponderación de instancias para Amazon EC2 Auto Scaling (p. 73)

Especificación de una plantilla de inicio diferente para un tipo de


instancia
LaOverridesle permite definir una nueva plantilla de inicio para tipos de instancia individuales para un
grupo de Auto Scaling nuevo o existente. Por ejemplo, si la arquitectura de un tipo de instancia requiere
una AMI diferente del resto del grupo, debe especificar una plantilla de inicio con una AMI compatible.

Supongamos que configura un grupo de Auto Scaling para aplicaciones de uso intensivo de procesos y
desea incluir una combinación de tipos de instancias C5, C5a y C6g. Sin embargo, las instancias C6g

69
Auto Scaling de Amazon EC2 Guía del usuario
Configuración de anulaciones

cuentan con unAWSProcesador Graviton basado en la arquitectura Arm de 64 bits, mientras que las
instancias C5 y C5a se ejecutan en procesadores Intel x86 de 64 bits. La AMI para instancias C5 funciona
en instancias C5a y viceversa, pero no en instancias C6g. LaOverridesle permite incluir una plantilla de
lanzamiento diferente para las instancias C6g, mientras sigue utilizando la misma plantilla de inicio para las
instancias C5 y C5a.
Note

En este momento, esta característica solo está disponible si utiliza laAWS CLIo un SDK, y no está
disponible desde la consola.

Agregar o cambiar una plantilla de inicio para un tipo de instancia (AWS CLI)
En el siguiente procedimiento se muestra cómo usar laAWS CLIpara configurar un grupo de Auto Scaling
para que uno o más de los tipos de instancia utilicen una plantilla de inicio distinta del resto del grupo.

Para crear y configurar un nuevo grupo de Auto Scaling

1. Cree un archivo de configuración donde especifique una estructura de directivas de instancias mixtas
e incluya elOverridesParámetro de.

A continuación se muestra el contenido de un archivo de configuración de ejemplo con formato


JSON. Especifica elc5.large,c5a.large, yc6g.largey define una nueva plantilla de inicio para
elc6g.largepara asegurarse de que se utiliza una AMI adecuada para iniciar instancias de Arm.
Amazon EC2 Auto Scaling utiliza el orden de los tipos de instancia para determinar qué tipo de
instancia debe utilizar primero al cumplir con la capacidad bajo demanda.

{
"AutoScalingGroupName":"my-asg",
"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":{
"OnDemandBaseCapacity": 1,
"OnDemandPercentageAboveBaseCapacity": 50,
"SpotAllocationStrategy": "capacity-optimized"
}
},
"MinSize":1,
"MaxSize":5,
"DesiredCapacity":3,
"VPCZoneIdentifier":"subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782",
"Tags":[ ]

70
Auto Scaling de Amazon EC2 Guía del usuario
Configuración de anulaciones

2. Utilice el siguientecreate-auto-scaling-groupPara hacer referencia al archivo JSON como único


parámetro de su grupo de Auto Scaling.

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

Para cambiar la plantilla de inicio de un tipo de instancia en un grupo de Auto Scaling existente

• Utilice el siguienteupdate-auto-scaling-grouppara especificar una plantilla de inicio diferente para un


tipo de instancia pasando el comandoOverridesParámetro de.

Cuando se realiza este cambio, las nuevas instancias que se lanzan se basan en la nueva
configuración, pero las instancias existentes no resultan afectadas. Para asegurarse de que el grupo
Auto Scaling utiliza la nueva configuración, puede reemplazar todas las instancias del grupo iniciando
una actualización de instancia o utilizando la función de duración máxima de la instancia.

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

A continuación se muestra un ejemplo de un archivo config.json.

{
"AutoScalingGroupName":"my-asg",
"MixedInstancesPolicy":{
"LaunchTemplate":{
"Overrides":[
{
"InstanceType":"c6g.large",
"LaunchTemplateSpecification": {
"LaunchTemplateName": "my-launch-template-for-arm",
"Version": "$Latest"
}
},
{
"InstanceType":"c5.large"
},
{
"InstanceType":"c5a.large"
}
]
}
}
}

Para comprobar las plantillas de lanzamiento de un grupo de Auto Scaling

• Utilice el siguientedescribe-auto-scaling-groupspara verificar y ver las plantillas de inicio especificadas


actualmente.

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

A continuación se muestra un ejemplo de respuesta.

{
"AutoScalingGroups":[
{

71
Auto Scaling de Amazon EC2 Guía del usuario
Configuración de anulaciones

"AutoScalingGroupName":"my-asg",
"AutoScalingGroupARN":"arn",
"MixedInstancesPolicy":{
"LaunchTemplate":{
"LaunchTemplateSpecification":{
"LaunchTemplateId":"lt-0fb0e487336917fb2",
"LaunchTemplateName":"my-launch-template-for-x86",
"Version":"$Latest"
},
"Overrides":[
{
"InstanceType":"c6g.large",
"LaunchTemplateSpecification": {
"LaunchTemplateId": "lt-09d958b8fb2ba5bcc",
"LaunchTemplateName": "my-launch-template-for-arm",
"Version": "$Latest"
}
},
{
"InstanceType":"c5.large"
},
{
"InstanceType":"c5a.large"
}
]
},
"InstancesDistribution":{
"OnDemandAllocationStrategy":"prioritized",
"OnDemandBaseCapacity":1,
"OnDemandPercentageAboveBaseCapacity":50,
"SpotAllocationStrategy":"capacity-optimized"
}
},
"MinSize":1,
"MaxSize":5,
"DesiredCapacity":3,
"Instances":[
{
"InstanceId":"i-07c63168522c0f620",
"InstanceType":"c5.large",
"AvailabilityZone":"us-west-2c",
"LifecycleState":"InService",
"HealthStatus":"Healthy",
"LaunchTemplate":{
"LaunchTemplateId":"lt-0fb0e487336917fb2",
"LaunchTemplateName":"my-launch-template-for-x86",
"Version":"1"
},
"ProtectedFromScaleIn":false
},
{
"InstanceId":"i-0b7ff78be9896a2c2",
"InstanceType":"c5.large",
"AvailabilityZone":"us-west-2a",
"LifecycleState":"InService",
"HealthStatus":"Healthy",
"LaunchTemplate":{
"LaunchTemplateId":"lt-0fb0e487336917fb2",
"LaunchTemplateName":"my-launch-template-for-x86",
"Version":"1"
},
"ProtectedFromScaleIn":false
},
{
"InstanceId":"i-0c682c2ceae918bc0",
"InstanceType":"c6g.large",

72
Auto Scaling de Amazon EC2 Guía del usuario
Configuración de anulaciones

"AvailabilityZone":"us-west-2b",
"LifecycleState":"InService",
"HealthStatus":"Healthy",
"LaunchTemplate":{
"LaunchTemplateId":"lt-09d958b8fb2ba5bcc",
"LaunchTemplateName":"my-launch-template-for-arm",
"Version":"1"
},
...
}
]
}

Configuración de ponderación de instancias para Amazon EC2


Auto Scaling
Cuando configura un grupo de Auto Scaling para lanzar varios tipos de instancia, tiene la opción de
definir el número de unidades de capacidad que cada instancia aporta a la capacidad deseada del grupo,
utilizandoPonderación de instancias de. Esto le permite especificar la ponderación relativa de cada tipo de
instancia y establecer una correspondencia directa con el rendimiento de la aplicación. Puede ponderar las
instancias para que se adapten a las necesidades específicas de la aplicación, por ejemplo, con arreglo a
los núcleos (vCPU) o a la memoria (GiB).

Supongamos, por ejemplo, que ejecuta una aplicación que requiere muchos recursos de computación y
que funciona mejor con al menos 8 vCPU y 15 GiB de RAM. Si utiliza c5.2xlarge como unidad base,
cualquiera de los siguientes tipos de instancias EC2 satisfaría las necesidades de la aplicación.

Ejemplo de tipos de instancias

Tipo de instancia vCPU Memoria (GiB)

c5.2xlarge 8 16

c5.4xlarge 16 32

c5.12xlarge 48 96

c5.18xlarge 72 144

c5.24xlarge 96 192

De forma predeterminada, a todos los tipos de instancia se les asigna la misma ponderación. En otras
palabras, tanto si Amazon EC2 Auto Scaling lanza un tipo de instancia grande como si tiene pequeño,
todas las instancias cuentan en la capacidad deseada del grupo.

Sin embargo, con la ponderación de instancias, se asigna un valor numérico que especifica cuántas
unidades de capacidad se van a asociar a cada tipo de instancia. Por ejemplo, si las instancias tienen
diferentes tamaños, una instancia c5.2xlarge podría tener una ponderación de 2, mientras que una
instancia c5.4xlarge (que es dos veces mayor) podría tener una ponderación de 4, etc. Luego, cuando
Amazon EC2 Auto Scaling lanza instancias, sus ponderaciones se tendrán en cuenta para calcular la
capacidad deseada.

Precio por hora de unidad


En la siguiente tabla, se compara el precio por hora de las instancias de spot en diferentes zonas de
disponibilidad de EE. UU. Este (Norte de Virginia, Ohio) con el precio de las instancias bajo demanda de la

73
Auto Scaling de Amazon EC2 Guía del usuario
Configuración de anulaciones

misma región. Los precios mostrados son solo ejemplos; no son los precios actuales. Estos son sus costos
por hora de instancia.

Ejemplo: Precios de spot por hora de instancia

Tipo de us-east-1a us-east-1b us-east-1c Precios bajo demanda


instancia

c5.2xlarge 0,180 USD 0,191 USD 0,170 USD 0,34 USD

c5.4xlarge 0,341 USD 0,361 USD 0,318 USD 0,68 USD

c5.12xlarge 0,779 USD 0,777 USD 0,777 USD 2,04 USD

c5.18xlarge 1,207 USD 1,475 USD 1,357 USD 3,06 USD

c5.24xlarge 1,555 USD 1,555 USD 1,555 USD 4,08 USD

Con la ponderación de instancias, puede evaluar los costos en función del uso por hora de unidad. Puede
calcular el precio por hora de unidad dividiendo el precio de un tipo de instancia por el número de unidades
que representa. En las instancias bajo demanda, el precio por hora de unidad es el mismo cuando se
implementa un solo tipo de instancia y cuando se implementa un tamaño diferente del mismo tipo de
instancia. Sin embargo, el precio de spot por hora de unidad varía en función del grupo de spot.

La forma más fácil de entender cómo funciona el cálculo del precio por unidad de hora con instancias
ponderadas es con un ejemplo. Para facilitar el cálculo, supongamos que desea lanzar instancias de spot
solo en us-east-1a. El precio por hora de unidad se indica a continuación.

Ejemplo: Ejemplo de Precio spot por hora de unidad

Tipo de instancia us-east-1a Ponderación de Precio por hora de unidad


instancia

c5.2xlarge 0,180 USD 2 0,090 USD

c5.4xlarge 0,341 USD 4 0,085 USD

c5.12xlarge 0,779 USD 12 0,065 USD

c5.18xlarge 1,207 USD 18 0,067 USD

c5.24xlarge 1,555 USD 24 0,065 USD

Considerations
En esta sección, se analizan las consideraciones clave para implementar la ponderación de instancias de
manera eficaz.

• Comience eligiendo algunos tipos de instancia que reflejen los requisitos reales de rendimiento de la
aplicación. A continuación, decida cuánto debe contar cada tipo de instancia en la capacidad deseada
del grupo de Auto Scaling especificando sus ponderaciones. Las ponderaciones se aplican a las
instancias actuales y futuras del grupo.
• Tenga cuidado si elige rangos muy grandes para las ponderaciones. Por ejemplo, no es recomendable
que especifique una ponderación de 1 para un tipo de instancia si el siguiente tipo de instancia mayor
tiene una ponderación de 200. La diferencia entre la ponderación más baja y más alta tampoco debe ser
exagerada. Si alguno de los tipos de instancia tiene una diferencia de ponderación demasiado grande,
esto puede tener un efecto negativo a la hora de optimizar continuamente la relación costo-rendimiento.

74
Auto Scaling de Amazon EC2 Guía del usuario
Configuración de anulaciones

• El tamaño del grupo de Auto Scaling se mide en unidades de capacidad, y no en instancias. Por
ejemplo, si las ponderaciones se basan en la vCPU, debe especificar el número mínimo, máximo y
deseado de núcleos que quiere utilizar.
• Establezca las ponderaciones y la capacidad deseada para que esta sea al menos dos o tres veces
mayor que su ponderación más alta.
• Si decide establecer su propio precio máximo para Spot, debe especificar un precioPor hora de
instanciaque es lo suficientemente alto para su tipo de instancia más caro. Amazon EC2 Auto Scaling
aprovisiona instancias de spot si el precio de spot actual en una zona de disponibilidad está por
debajo de su precio máximo y la capacidad está disponible. Si la solicitud de instancias de spot no se
puede satisfacer en un grupo de instancias de spot, se sigue intentando en otros grupos de spot para
aprovechar el ahorro de costos de las instancias de spot.

Con la ponderación de instancias. se introducen los siguientes comportamientos nuevos:

• La capacidad actual será igual o superior a la capacidad deseada. Como Amazon EC2 Auto Scaling
quiere aprovisionar instancias hasta que se satisfaga totalmente la capacidad deseada, puede
sobrepasarse el límite. Por ejemplo, supongamos que especifica dos tipos de instancias: c5.2xlarge
y c5.12xlarge, y que asigna la ponderación 2 a c5.2xlarge y la ponderación 12 a c5.12xlarge.
Si faltan 5 unidades para cubrir la capacidad deseada y Amazon EC2 Auto Scaling aprovisiona
unc5.12xlarge, la capacidad deseada se excede en 7 unidades.
• Cuando Amazon EC2 Auto Scaling aprovisiona instancias para alcanzar la capacidad deseada, da más
prioridad a distribuir instancias entre diferentes zonas de disponibilidad respetando las estrategias de
asignación de instancias de spot y bajo demanda que a evitar que se superen los límites.
• Amazon EC2 Auto Scaling puede sobrepasar el límite máximo de capacidad para mantener el equilibrio
entre las zonas de disponibilidad aplicando las estrategias de asignación que desee. El límite máximo
exigido por Amazon EC2 Auto Scaling es un valor igual a la capacidad deseada más la ponderación más
alta.

Tenga en cuenta lo siguiente al agregar o modificar ponderaciones en un grupo existente:

• Al agregar ponderaciones de instancia a un grupo de Auto Scaling existente, debe incluir todos los tipos
de instancia que ya se estén ejecutando en el grupo.
• Al modificar los ponderaciones de instancia existentes, Amazon EC2 Auto Scaling lanzará o terminará
instancias para alcanzar la capacidad deseada en función de los nuevos pesos.
• Si quita un tipo de instancia, las instancias en ejecución de ese tipo seguirán teniendo los valores de
ponderación de la última actualización, incluso aunque se haya eliminado ese tipo de instancia.

Añadir o modificar ponderaciones para el grupo de Auto Scaling


Puede añadir ponderaciones a un grupo de Auto Scaling o a un nuevo grupo de Auto Scaling a medida
que lo crea. También puede actualizar un grupo de Auto Scaling existente para definir nuevas opciones de
configuración (uso de spot/bajo demanda, estrategia de asignación de spot, tipos de instancia). Si cambia
el número de instancias de spot o bajo demanda que desea tener, Amazon EC2 Auto Scaling reemplazará
gradualmente las instancias existentes para ajustarse a las nuevas opciones de compra.

Para poder crear grupos de Auto Scaling utilizando la ponderación de instancias, debe saber cómo se
lanzan grupos con distintos tipos de instancias. Para obtener más información y ver otros ejemplos,
consulte Grupos de Auto Scaling con varios tipos de instancias y opciones de compra (p. 56).

Los siguientes ejemplos muestran cómo usar laAWS CLIPara añadir ponderaciones al crear grupos de
Auto Scaling y para añadir o modificar ponderaciones de los grupos de Auto Scaling existentes. Puede
configurar una serie de parámetros en un archivo JSON y hacer referencia a ese archivo como único
parámetro de su grupo de Auto Scaling.

75
Auto Scaling de Amazon EC2 Guía del usuario
Configuración de anulaciones

Para añadir ponderaciones a un grupo de Auto Scaling durante su creación

• Usarcreate-auto-scaling-groupPara crear un nuevo grupo de Auto Scaling. Por ejemplo, el comando


siguiente crea un nuevo grupo de Auto Scaling y agrega ponderación de instancia especificando lo
siguiente:

• El porcentaje del grupo que se lanzará como instancias bajo demanda (0)
• La estrategia de asignación de instancias de spot de cada zona de disponibilidad (capacity-
optimized)
• Los tipos de instancia que se van a lanzar por orden de prioridad (m4.16xlarge, m5.24xlarge)
• Las ponderaciones de las instancias en relación con la diferencia de tamaño relativa (vCPU) entre
los tipos de instancia (16, 24)
• Las subredes en las que lanzar las instancias (subnet-5ea0c127, subnet-
c934b782)subnet-6194ea3b, cada una de ellas correspondiente a una zona de disponibilidad
diferente
• La plantilla de lanzamiento (my-launch-template) y la versión de la plantilla de lanzamiento
($Latest)

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

A continuación se muestra un ejemplo de un archivo config.json.

{
"AutoScalingGroupName": "my-asg",
"MixedInstancesPolicy": {
"LaunchTemplate": {
"LaunchTemplateSpecification": {
"LaunchTemplateName": "my-launch-template",
"Version": "$Latest"
},
"Overrides": [
{
"InstanceType": "m4.16xlarge",
"WeightedCapacity": "16"
},
{
"InstanceType": "m5.24xlarge",
"WeightedCapacity": "24"
}
]
},
"InstancesDistribution": {
"OnDemandPercentageAboveBaseCapacity": 0,
"SpotAllocationStrategy": "capacity-optimized"
}
},
"MinSize": 160,
"MaxSize": 720,
"DesiredCapacity": 480,
"VPCZoneIdentifier": "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782",
"Tags": []
}

76
Auto Scaling de Amazon EC2 Guía del usuario
Configuración de anulaciones

Para añadir o modificar ponderaciones en un grupo de Auto Scaling existente

• Utilice el comando update-auto-scaling-group para agregar o modificar ponderaciones. Por ejemplo,


el comando siguiente agrega ponderaciones a los tipos de instancia de un grupo de Auto Scaling
especificando lo siguiente:

• Los tipos de instancia que se van a lanzar por orden de prioridad (c5.18xlarge, c5.24xlarge,
c5.2xlarge, c5.4xlarge)
• Las ponderaciones de las instancias en relación con la diferencia de tamaño relativa (vCPU) entre
los tipos de instancia (18, 24, 2. 4)
• La nueva capacidad deseada, que es mayor que la ponderación más alta

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

A continuación se muestra un ejemplo de un archivo config.json.

{
"AutoScalingGroupName": "my-existing-asg",
"MixedInstancesPolicy": {
"LaunchTemplate": {
"Overrides": [
{
"InstanceType": "c5.18xlarge",
"WeightedCapacity": "18"
},
{
"InstanceType": "c5.24xlarge",
"WeightedCapacity": "24"
},
{
"InstanceType": "c5.2xlarge",
"WeightedCapacity": "2"
},
{
"InstanceType": "c5.4xlarge",
"WeightedCapacity": "4"
}
]
}
},
"MinSize": 0,
"MaxSize": 100,
"DesiredCapacity": 100
}

Para comprobar las ponderaciones de un grupo de Auto Scaling

• Utilice el siguiente comando describe-auto-scaling-groups para comprobar las ponderaciones.

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

A continuación se muestra un ejemplo de respuesta.

{
"AutoScalingGroups": [
{
"AutoScalingGroupName": "my-asg",

77
Auto Scaling de Amazon EC2 Guía del usuario
Configuración de anulaciones

"AutoScalingGroupARN": "arn",
"MixedInstancesPolicy": {
"LaunchTemplate": {
"LaunchTemplateSpecification": {
"LaunchTemplateId": "lt-0b97f1e282EXAMPLE",
"LaunchTemplateName": "my-launch-template",
"Version": "$Latest"
},
"Overrides": [
{
"InstanceType": "m4.16xlarge",
"WeightedCapacity": "16"
},
{
"InstanceType": "m5.24xlarge",
"WeightedCapacity": "24"
}
]
},
"InstancesDistribution": {
"OnDemandAllocationStrategy": "prioritized",
"OnDemandBaseCapacity": 0,
"OnDemandPercentageAboveBaseCapacity": 0,
"SpotAllocationStrategy": "capacity-optimized"
}
},
"MinSize": 160,
"MaxSize": 720,
"DesiredCapacity": 480,
"DefaultCooldown": 300,
"AvailabilityZones": [
"us-west-2a",
"us-west-2b",
"us-west-2c"
],
"LoadBalancerNames": [],
"TargetGroupARNs": [],
"HealthCheckType": "EC2",
"HealthCheckGracePeriod": 0,
"Instances": [
{
"InstanceId": "i-027327f0ace86f499",
"InstanceType": "m5.24xlarge",
"AvailabilityZone": "us-west-2a",
"LifecycleState": "InService",
"HealthStatus": "Healthy",
"LaunchTemplate": {
"LaunchTemplateId": "lt-0b97f1e282EXAMPLE",
"LaunchTemplateName": "my-launch-template",
"Version": "7"
},
"ProtectedFromScaleIn": false,
"WeightedCapacity": "24"
},
{
"InstanceId": "i-0ec0d761cc134878d",
"InstanceType": "m4.16xlarge",
"AvailabilityZone": "us-west-2a",
"LifecycleState": "Pending",
"HealthStatus": "Healthy",
"LaunchTemplate": {
"LaunchTemplateId": "lt-0b97f1e282EXAMPLE",
"LaunchTemplateName": "my-launch-template",
"Version": "7"
},
"ProtectedFromScaleIn": false,

78
Auto Scaling de Amazon EC2 Guía del usuario
Creación de un grupo de mediante
una plantilla de lanzamiento

"WeightedCapacity": "16"
},
...
}
]
}

Crear un grupo de Auto Scaling mediante una


plantilla de lanzamiento
Para configurar instancias de Amazon EC2 lanzadas por el grupo de Auto Scaling, puede especificar una
plantilla de lanzamiento, una configuración de lanzamiento o una instancia EC2. El siguiente procedimiento
demuestra cómo crear un grupo de Auto Scaling mediante una plantilla de lanzamiento.

Con las plantillas de lanzamiento, puede configurar el grupo de Auto Scaling para elegir la versión
predeterminada o la última de la plantilla de lanzamiento de forma dinámica cuando se produce un
evento de escalado ascendente. Por ejemplo, puede configurar el grupo de Auto Scaling para elegir
la versión predeterminada actual de una plantilla de lanzamiento. Para cambiar la configuración de las
instancias EC2 que va a lanzar el grupo, cree o designe una nueva versión predeterminada de la plantilla
de lanzamiento. Como opción, puede elegir la versión específica de la plantilla de lanzamiento que el grupo
utiliza para iniciar instancias EC2. Puede cambiar las selecciones en cualquier momento actualizando el
grupo.

Cada plantilla de lanzamiento incluye la información que Amazon EC2 necesita para lanzar instancias,
como una AMI y un tipo de instancia. Puede crear un grupo de Auto Scaling que se adhiera a la plantilla
de lanzamiento. O bien, puede reemplazar el tipo de instancia en la plantilla de lanzamiento y combinar
instancias a petición y de spot. Para obtener más información, consulte Grupos de Auto Scaling con varios
tipos de instancias y opciones de compra (p. 56).

El grupo de Auto Scaling especifica la capacidad deseada y la información adicional que necesita Amazon
EC2 para iniciar instancias, como las zonas de disponibilidad y las subredes de VPC. Puede establecer
la capacidad deseada según un número específico de instancias, o bien puede aprovechar el escalado
automático para ajustar la capacidad en función de la demanda real.

Prerequisites

• Debe haber creado una plantilla de lanzamiento que incluya los parámetros necesarios para lanzar una
instancia EC2. Para obtener información sobre estos parámetros y las limitaciones que se aplican al
crear una plantilla de lanzamiento para usarla con un grupo de Auto Scaling, consulteCreación de una
plantilla de lanzamiento para un grupo de Auto Scaling (p. 28).
• Debe tener permisos de IAM para crear un grupo de Auto Scaling mediante una plantilla de lanzamiento
y también para crear recursos EC2 para las instancias. Para obtener más información, consulte Soporte
para plantillas de lanzamiento de (p. 295).

Para crear un grupo de Auto Scaling mediante una plantilla de lanzamiento(consola)

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. En la barra de navegación de la parte superior de la pantalla, elija la misma región que utilizó cuando
creó la plantilla de lanzamiento.
3. Elija Create an Auto Scaling group (Crear un grupo de Auto Scaling).
4. En la página Choose launch template or configuration (Elegir plantilla o configuración de lanzamiento)
haga lo siguiente:

79
Auto Scaling de Amazon EC2 Guía del usuario
Creación de un grupo de mediante
una plantilla de lanzamiento

a. ParaNombre de grupo de Auto ScalingEscriba un nombre para el grupo de Auto Scaling.


b. En launch template (Plantilla de lanzamiento), elija una plantilla de lanzamiento existente.
c. ParaLanzar la versión de plantillaEn el escalado ascendente, decida si el grupo de Auto Scaling
utiliza el valor predeterminado, la última versión o una versión específica de la plantilla de
lanzamiento.
d. Compruebe que la plantilla de lanzamiento admita todas las opciones que tiene previsto utilizar y,
a continuación, elija Next (Siguiente).
5. En la página Configure settings (Configurar ajustes), en Purchase options and instance types
(Opciones de compra y tipos de instancia), elija Adhere to the launch template (Adherirse a la plantilla
de lanzamiento) para utilizar el tipo de instancia EC2 y la opción de compra especificados en la
plantilla de lanzamiento.
6. En Network (Red), para VPC, elija la VPC para los grupos de seguridad especificados en la plantilla de
lanzamiento.
7. En Subnet (Subred), elija una o varias subredes de la VPC especificada. Utilice subredes en varias
zonas de disponibilidad para lograr una alta disponibilidad. Para obtener más información acerca de la
alta disponibilidad con Amazon EC2 Auto Scaling, consulteDistribución de instancias entre zonas de
disponibilidad (p. 6).
8. Elija Next (Siguiente).

O puede aceptar el resto de las opciones predeterminadas y elegir Skip to review (Omitir para revisar).
9. (Opcional) En elConfigure las opciones avanzadasEn, configure las siguientes opciones y, a
continuación, elijaSiguiente:

a. Para registrar las instancias de Amazon EC2 con un balanceador de carga, elija un balanceador
de carga existente o cree uno nuevo. Para obtener más información, consulte Elastic Load
Balancing y Amazon EC2 Auto Scaling (p. 90). Para crear un nuevo balanceador de carga,
siga el procedimiento deConfigurar un Application Load Balancer o un Network Load Balancer
utilizando la consola Auto Scaling de Amazon EC2 (p. 94).
b. Para activar Elastic Load Balancing (ELB) comprobaciones de estado, paraComprobaciones de
estado, elijaELBUNDERTipo de comprobación de estado. Estas comprobaciones de estado son
opcionales cuando se habilita el balance de carga.
c. UNDERPeriodo de gracia de la Health, introduzca la cantidad de tiempo hasta que Amazon
EC2 Auto Scaling compruebe el estado de las instancias después de su puesta en servicio. La
intención de esta configuración es evitar que Amazon EC2 Auto Scaling marque instancias como
en mal estado y las termine antes de que tengan tiempo para aparecer. El valor predeterminado
es de 300 segundos.
10. (Opcional) En la página Configure group size and scaling policies (Configurar políticas de tamaño de
grupo y escala) configure las siguientes opciones y, a continuación, elija Next (Siguiente):

a. En Desired capacity (Capacidad deseada), introduzca el número inicial de instancias que desea
lanzar. Al cambiar este número a un valor fuera de los límites de capacidad mínima o máxima,
debe actualizar los valores de Minimum capacity (Capacidad mínima) o Maximum capacity
(Capacidad máxima). Para obtener más información, consulte Determina los límites de capacidad
para el grupo de Auto Scaling (p. 124).
b. Para ajustar automáticamente el tamaño del grupo de Auto Scaling, elijaPolítica de escalado de
seguimiento de destinoy siga las instrucciones. Para obtener más información, consulte Políticas
de escalado de seguimiento de destino (p. 141).
c. En Instance scale-in protection (Protección de escalado descendente de instancias), elija si desea
habilitar la protección de escalado descendente de instancias. Para obtener más información,
consulte Usar la protección de escalado ascendente de instancias (p. 225).
11. (Opcional) Para recibir notificaciones, en Add notification (Añadir notificación), configure la
notificación y, a continuación, elija Next (Siguiente). Para obtener más información, consulte Obtener
notificaciones de Amazon SNS cuando su grupo de Auto Scaling se escala (p. 259).

80
Auto Scaling de Amazon EC2 Guía del usuario
Crear un grupo de mediante una
configuración de lanzamiento

12. (Opcional) Para añadir etiquetas, elija Add Tags (Añadir etiquetas), facilite un valor y una clave de
etiqueta, y luego elija Next (Siguiente). Para obtener más información, consulte Etiquetado de grupos
e instancias de Auto Scaling (p. 86).
13. En la página Review (Revisar), elija Create Auto Scaling group (Crear grupo de Auto Scaling).

Para crear un grupo de Auto Scaling mediante la línea de comandos

Puede utilizar uno de los siguientes comandos:

• create-auto-scaling-group (AWS CLI)


• New-ASAutoScalingGroup (AWS Tools for Windows PowerShell)

Crear un grupo de Auto Scaling mediante una


configuración de lanzamiento
Al crear un grupo de Auto Scaling, debe especificar la información necesaria para configurar las instancias
de Amazon EC2, las subredes de las instancias y la cantidad inicial de instancias.
Important

Para configurar las instancias de Amazon EC2, puede especificar una plantilla de lanzamiento,
una configuración de lanzamiento o una instancia EC2. Le recomendamos usar una plantilla de
lanzamiento para asegurarse de que está utilizando las últimas características de Amazon EC2.
Para obtener más información, consulte Plantillas de lanzamiento (p. 27).

El siguiente procedimiento demuestra cómo crear un grupo de Auto Scaling mediante una configuración
de lanzamiento. No puede modificar una configuración de lanzamiento después de crearla, pero puede
sustituir la configuración de lanzamiento por un grupo de Auto Scaling. Para obtener más información,
consulte Cambiar la configuración de lanzamiento de un grupo de Auto Scaling (p. 50).

Prerequisites

Cree una configuración de lanzamiento. Para obtener más información, consulte Creación de una
configuración de lanzamiento (p. 42).

Para crear un grupo de Auto Scaling mediante una configuración de lanzamiento(consola)

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. En la barra de navegación de la parte superior de la pantalla, elija la misma región que utilizó cuando
creó la plantilla de lanzamiento.
3. Elija Create an Auto Scaling group (Crear un grupo de Auto Scaling).
4. En la páginaElija la plantilla de lanzamiento o la configuraciónPágina, paraNombre de grupo de Auto
ScalingEscriba un nombre para el grupo de Auto Scaling.
5. Para elegir una configuración de lanzamiento, haga lo siguiente:

a. En Launch Template (Plantilla de lanzamiento), elija Switch to launch configuration (Cambiar a


configuración de lanzamiento).
b. En Launch configuration (Configuración de lanzamiento), elija una configuración de lanzamiento
existente.
c. Compruebe que la configuración de lanzamiento admita todas las opciones que tiene previsto
utilizar y, a continuación, elija Next (Siguiente).
6. En la página Configure settings (Configurar ajustes), en Network (Red), para VPC, elija la VPC para
los grupos de seguridad que especificó en la configuración de lanzamiento. En EC2-Classic no se

81
Auto Scaling de Amazon EC2 Guía del usuario
Crear un grupo de mediante una
configuración de lanzamiento

admite el lanzamiento de instancias utilizando una combinación de tipos de instancia y opciones de


compra.
7. En Subnet (Subred), elija una o varias subredes de la VPC especificada. Utilice subredes en varias
zonas de disponibilidad para lograr una alta disponibilidad. Para obtener más información acerca de la
alta disponibilidad con Amazon EC2 Auto Scaling, consulteDistribución de instancias entre zonas de
disponibilidad (p. 6).
8. Elija Next (Siguiente).

O puede aceptar el resto de las opciones predeterminadas y elegir Skip to review (Omitir para revisar).
9. (Opcional) En elConfigure las opciones avanzadasEn, configure las siguientes opciones y, a
continuación, elijaSiguiente:

a. Para registrar las instancias de Amazon EC2 con un balanceador de carga, elija un balanceador
de carga existente o cree uno nuevo. Para obtener más información, consulte Elastic Load
Balancing y Amazon EC2 Auto Scaling (p. 90). Para crear un nuevo balanceador de carga,
siga el procedimiento deConfigurar un Application Load Balancer o un Network Load Balancer
utilizando la consola Auto Scaling de Amazon EC2 (p. 94).
b. Para activar Elastic Load Balancing (ELB) comprobaciones de estado, paraComprobaciones de
estado, elijaELBUNDERTipo de comprobación de estado. Estas comprobaciones de estado son
opcionales cuando se habilita el balance de carga.
c. UNDERPeriodo de gracia de la Health, introduzca la cantidad de tiempo hasta que Amazon
EC2 Auto Scaling compruebe el estado de las instancias después de su puesta en servicio. La
intención de esta configuración es evitar que Amazon EC2 Auto Scaling marque instancias como
en mal estado y las termine antes de que tengan tiempo para aparecer. El valor predeterminado
es de 300 segundos.
10. (Opcional) En la página Configure group size and scaling policies (Configurar políticas de tamaño de
grupo y escala) configure las siguientes opciones y, a continuación, elija Next (Siguiente):

a. En Desired capacity (Capacidad deseada), introduzca el número inicial de instancias que desea
lanzar. Al cambiar este número a un valor fuera de los límites de capacidad mínima o máxima,
debe actualizar los valores de Minimum capacity (Capacidad mínima) o Maximum capacity
(Capacidad máxima). Para obtener más información, consulte Determina los límites de capacidad
para el grupo de Auto Scaling (p. 124).
b. Para ajustar automáticamente el tamaño del grupo de Auto Scaling, elijaPolítica de escalado de
seguimiento de destinoy siga las instrucciones. Para obtener más información, consulte Políticas
de escalado de seguimiento de destino (p. 141).
c. En Instance scale-in protection (Protección de escalado descendente de instancias), elija si desea
habilitar la protección de escalado descendente de instancias. Para obtener más información,
consulte Usar la protección de escalado ascendente de instancias (p. 225).
11. (Opcional) Para recibir notificaciones, en Add notification (Añadir notificación), configure la
notificación y, a continuación, elija Next (Siguiente). Para obtener más información, consulte Obtener
notificaciones de Amazon SNS cuando su grupo de Auto Scaling se escala (p. 259).
12. (Opcional) Para añadir etiquetas, elija Add Tags (Añadir etiquetas), facilite un valor y una clave de
etiqueta, y luego elija Next (Siguiente). Para obtener más información, consulte Etiquetado de grupos
e instancias de Auto Scaling (p. 86).
13. En la página Review (Revisar), elija Create Auto Scaling group (Crear grupo de Auto Scaling).

Para crear un grupo de Auto Scaling mediante la línea de comandos

Puede utilizar uno de los siguientes comandos:

• create-auto-scaling-group (AWS CLI)


• New-ASAutoScalingGroup (AWS Tools for Windows PowerShell)

82
Auto Scaling de Amazon EC2 Guía del usuario
Creación de un grupo de mediante una instancia EC2

Creación de un grupo de Auto Scaling mediante


una instancia de EC2
La creación de un grupo de Auto Scaling puede requerir que configure y aprovisione primero una instancia
de Amazon EC2. Por ejemplo, es posible que desee probar que todo funciona de la manera en que desea.
Se requieren varias propiedades para crear una instancia EC2, como el ID de AMI, el tipo de instancia,
el key pair y el grupo de seguridad. Amazon EC2 Auto Scaling también requiere toda esta información
para iniciar instancias en su nombre cuando sea necesario escalar. Esta información se almacena en una
plantilla de lanzamiento o una configuración de lanzamiento.

Puede crear un grupo de Auto Scaling mediante una instancia EC2 existente de una de estas tres
maneras.

• Cree una plantilla de lanzamiento a partir de una instancia EC2 existente. A continuación, utilice la
plantilla de lanzamiento para crear un nuevo grupo de Auto Scaling. Para obtener este procedimiento,
consultePara crear una plantilla de lanzamiento a partir de una instancia existente (consola) (p. 33).
• Utilice la consola para crear un grupo de Auto Scaling desde una instancia EC2 en ejecución. Al hacerlo,
Amazon EC2 Auto Scaling crea una configuración de lanzamiento para usted y la asocia al grupo de
Auto Scaling. Este método funciona bien si desea agregar la instancia al nuevo grupo Auto Scaling,
donde puede administrarla Amazon EC2 Auto Scaling. Para obtener más información, consulte Adjunte
instancias de EC2 al grupo de Auto Scaling (p. 128).
• Especifique el ID de una instancia EC2 existente en la llamada a la API que crea el grupo Auto Scaling.
Este método es el tema del siguiente procedimiento.

Cuando se especifica un ID de una instancia existente, Amazon EC2 Auto Scaling crea una configuración
de lanzamiento y la asocia al grupo de Auto Scaling. Esta configuración de lanzamiento tiene el mismo
nombre que el grupo de Auto Scaling y obtiene sus atributos de la instancia especificada, como el ID de
AMI, el tipo de instancia, key pair y el grupo de seguridad. Los dispositivos de bloques proceden de la AMI
que se utilizó para lanzar la instancia, no de la instancia.

Limitaciones y requisitos previos


A continuación se indican las limitaciones al utilizar el siguiente procedimiento para crear un grupo de Auto
Scaling desde una instancia EC2:

• Si la instancia identificada tiene etiquetas, las etiquetas no se copian en laTagsatributo del nuevo grupo
de Auto Scaling.
• El grupo de Auto Scaling incluye la asignación de dispositivos de bloques de la AMI que se utilizó para
lanzar la instancia. No incluye ningún dispositivo de bloques asociado después del lanzamiento de la
instancia.
• Si la instancia identificada está registrada en uno o varios balanceadores de carga, la información sobre
el balanceador de carga no se copia en el atributo del grupo de destino o balanceador de carga del
nuevo grupo de Auto Scaling.

Antes de comenzar, busque el ID de la instancia EC2 mediante la consola de Amazon EC2 o ladescribe-
instancescomando (AWS CLI). La instancia EC2 debe cumplir los siguientes criterios:

• La instancia está en la subred y la zona de disponibilidad en la que desea crear el grupo de Auto
Scaling.
• La instancia no es miembro de otro grupo de Auto Scaling.
• La instancia tiene el estado running.
• La AMI que se utilizó para lanzar la instancia debe existir.

83
Auto Scaling de Amazon EC2 Guía del usuario
Cree un grupo de Auto Scaling a partir
de una instancia EC2 (AWS CLI)

Cree un grupo de Auto Scaling a partir de una


instancia EC2 (AWS CLI)
Los siguientes ejemplos muestran cómo utilizar laAWS CLIpara crear un grupo de Auto Scaling a partir de
una instancia de EC2.

Para crear un grupo de Auto Scaling a partir de una instancia EC2

• Utilice el siguientecreate-auto-scaling-groupPara crear un grupo de Auto Scalingmy-asg-from-


instance, desde la instancia de EC2i-0e69cc3f05f825f4f.

aws autoscaling create-auto-scaling-group --auto-scaling-group-name my-asg-from-


instance \
--instance-id i-0e69cc3f05f825f4f --min-size 1 --max-size 2 --desired-capacity 2

Para comprobar que el grupo de Auto Scaling ha lanzado las instancias

• Utilice el siguientedescribe-auto-scaling-groupspara comprobar que el grupo Auto Scaling se creó


correctamente.

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


instance

En la siguiente respuesta de ejemplo muestra que la capacidad deseada del grupo es 2, que el grupo
dispone de 2 instancias en ejecución y que la configuración de lanzamiento se denominamy-asg-
from-instance.

{
"AutoScalingGroups":[
{
"AutoScalingGroupName":"my-asg-from-instance",
"AutoScalingGroupARN":"arn",
"LaunchConfigurationName":"my-asg-from-instance",
"MinSize":1,
"MaxSize":2,
"DesiredCapacity":2,
"DefaultCooldown":300,
"AvailabilityZones":[
"us-west-2a"
],
"LoadBalancerNames":[ ],
"TargetGroupARNs":[ ],
"HealthCheckType":"EC2",
"HealthCheckGracePeriod":0,
"Instances":[
{
"InstanceId":"i-06905f55584de02da",
"InstanceType":"t2.micro",
"AvailabilityZone":"us-west-2a",
"LifecycleState":"InService",
"HealthStatus":"Healthy",
"LaunchConfigurationName":"my-asg-from-instance",
"ProtectedFromScaleIn":false
},
{
"InstanceId":"i-087b42219468eacde",
"InstanceType":"t2.micro",
"AvailabilityZone":"us-west-2a",

84
Auto Scaling de Amazon EC2 Guía del usuario
Cree un grupo de Auto Scaling a partir
de una instancia EC2 (AWS CLI)

"LifecycleState":"InService",
"HealthStatus":"Healthy",
"LaunchConfigurationName":"my-asg-from-instance",
"ProtectedFromScaleIn":false
}
],
"CreatedTime":"2020-10-28T02:39:22.152Z",
"SuspendedProcesses":[ ],
"VPCZoneIdentifier":"subnet-6bea5f06",
"EnabledMetrics":[ ],
"Tags":[ ],
"TerminationPolicies":[
"Default"
],
"NewInstancesProtectedFromScaleIn":false,
"ServiceLinkedRoleARN":"arn"
}
]
}

Para ver la configuración de lanzamiento

• Utilice el siguientedescribe-launch-configurationPara ver los detalles de la configuración de


lanzamiento.

aws autoscaling describe-launch-configurations --launch-configuration-names my-asg-


from-instance

A continuación, se muestra un ejemplo del resultado:

{
"LaunchConfigurations":[
{
"LaunchConfigurationName":"my-asg-from-instance",
"LaunchConfigurationARN":"arn",
"ImageId":"ami-0528a5175983e7f28",
"KeyName":"my-key-pair-uswest2",
"SecurityGroups":[
"sg-05eaec502fcdadc2e"
],
"ClassicLinkVPCSecurityGroups":[ ],
"UserData":"",
"InstanceType":"t2.micro",
"KernelId":"",
"RamdiskId":"",
"BlockDeviceMappings":[ ],
"InstanceMonitoring":{
"Enabled":true
},
"CreatedTime":"2020-10-28T02:39:22.321Z",
"EbsOptimized":false,
"AssociatePublicIpAddress":true
}
]
}

85
Auto Scaling de Amazon EC2 Guía del usuario
Etiquetado de grupos e instancias de Auto Scaling

Para terminar la instancia

• Si ya no necesita la instancia, puede terminarla. Los siguientes ejemplos determinate-


instancesTermina la instanciai-0e69cc3f05f825f4f.

aws ec2 terminate-instances --instance-ids i-0e69cc3f05f825f4f

Después de terminar una instancia de Amazon EC2, no puede reiniciarla. Después de terminar,
sus datos se han ido y el volumen no se puede adjuntar a ninguna instancia. Para obtener más
información sobre la terminación de instancias, consulteTerminación de una instanciaen laGuía del
usuario de Amazon EC2 para instancias de Linux.

Etiquetado de grupos e instancias de Auto Scaling


Las etiquetas le ayudan a clasificar los grupos de Auto Scaling de diversas maneras; por ejemplo, según
su finalidad, propietario o entorno.

Puede añadir varias etiquetas a cada grupo de Auto Scaling. Además, puede propagar las etiquetas del
grupo de Auto Scaling a las instancias de Amazon EC2 que lance. El etiquetado de instancias le permite
ver la asignación de costos de las instancias por etiqueta en suAWSFacturación. Para obtener más
información, consulte Uso de etiquetas de asignación de costos en la Guía del usuario de AWS Billing and
Cost Management.

También puede controlar qué usuarios y grupos de IAM de su cuenta tienen permiso para crear, editar
o eliminar etiquetas. Para obtener más información, consulte Controlar qué claves de etiqueta y valores
de etiqueta se pueden usar (p. 288). No obstante, tenga en cuenta que una política que impida que
los usuarios realicen una operación de etiquetado en un grupo de Auto Scaling no les impedirá cambiar
las etiquetas manualmente en las instancias una vez lanzadas. Para obtener información acerca de las
políticas de IAM para etiquetar (o eliminar el etiquetado) recursos de Amazon EC2, consulteEjemplo:
Etiquetado de recursosen laGuía del usuario de Amazon EC2 para instancias de Linux.

Las etiquetas no se propagan a volúmenes de Amazon EBS. Para añadir etiquetas a volúmenes de
Amazon EBS, especifique las etiquetas en una plantilla de lanzamiento, pero tenga cuidado al configurar
etiquetas de instancia en la plantilla de lanzamiento. Si la plantilla de lanzamiento especifica una etiqueta
de instancia con una clave que también se especifica para el grupo de Auto Scaling, Amazon EC2 Auto
Scaling invalida el valor de esa etiqueta de instancia por el valor especificado por el grupo de Auto Scaling.
Para obtener información acerca de cómo especificar etiquetas en una plantilla de lanzamiento, consulte
Creación de una plantilla de lanzamiento para un grupo de Auto Scaling (p. 28).

Contenido
• Restricciones de las etiquetas (p. 86)
• Ciclo de vida del etiquetado (p. 87)
• Agregar o modificar etiquetas para el grupo de Auto Scaling (p. 87)
• Eliminar etiquetas (p. 89)

Restricciones de las etiquetas


Se aplican las siguientes restricciones básicas a las etiquetas:

• El número máximo de etiquetas por recurso es 50.


• El número máximo de etiquetas que puede añadir o eliminar con una sola llamada es 25.
• La longitud máxima de la clave es de 128 caracteres Unicode.
• La longitud máxima del valor es de 256 caracteres Unicode.

86
Auto Scaling de Amazon EC2 Guía del usuario
Ciclo de vida del etiquetado

• Las claves y los valores de las etiquetas distinguen entre mayúsculas y minúsculas.
• No utilice elaws:En los nombres o valores de las etiquetas, porque está reservado paraAWSUsarUse.
No puede editar ni eliminar nombres o valores de etiqueta con este prefijo, y no se tienen en cuenta para
el límite de etiquetas por grupo de Auto Scaling.

Ciclo de vida del etiquetado


Si ha decidido propagar las etiquetas a sus instancias de Amazon EC2, las etiquetas se administran de la
siguiente manera:

• Cuando un grupo de Auto Scaling lanza instancias, añade etiquetas a las instancias mientras crea los
recursos y no después de haberlos creado.
• El grupo de Auto Scaling añade una etiqueta automáticamente a las instancias con una clave
deaws:autoscaling:groupNamey un valor del nombre del grupo de Auto Scaling.
• Cuando asocia instancias existentes, el grupo de Auto Scaling añade las etiquetas a las instancias,
sobrescribiendo las etiquetas existentes con la misma clave de etiqueta. Asimismo, añade una etiqueta
con la claveaws:autoscaling:groupNamey un valor del nombre del grupo de Auto Scaling.
• Cuando desvincula una instancia de un grupo de Auto Scaling, solo se elimina
laaws:autoscaling:groupNameetiqueta.

Agregar o modificar etiquetas para el grupo de Auto


Scaling
Cuando añade una etiqueta al grupo de Auto Scaling, puede especificar si se debe añadir a las instancias
lanzadas en el grupo de Auto Scaling. Después del cambio, la versión actualizada de la etiqueta se añade
a las instancias lanzadas en el grupo de Auto Scaling. Si crea o modifica una etiqueta para un grupo de
Auto Scaling, estos cambios no se realizan en las instancias que ya se están ejecutando en el grupo de
Auto Scaling.

Contenido
• Añadir o modificar etiquetas (consola) (p. 87)
• Para añadir o modificar etiquetas (AWS CLI) (p. 88)

Añadir o modificar etiquetas (consola)


Utilice la consola de Amazon EC2 para:

• Agregar etiquetas a nuevos grupos de Auto Scaling cuando los cree.


• Agregar, modificar o eliminar etiquetas en grupos de Auto Scaling existentes

Para etiquetar un grupo de Auto Scaling al crearse

Cuando utiliza la consola de Amazon EC2 para crear un grupo de Auto Scaling, puede especificar claves
y valores de etiqueta en la pestañaAgregue etiquetasEn el asistente Create Auto Scaling group. Para
propagar una etiqueta a las instancias lanzadas en el grupo de Auto Scaling, asegúrese de mantener
laEtiquetar nuevas instanciaspara esa etiqueta seleccionada. En caso contrario, puede anular la selección.

Para añadir o modificar etiquetas en un grupo de Auto Scaling existente

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.

87
Auto Scaling de Amazon EC2 Guía del usuario
Agregar o modificar etiquetas para el grupo de Auto Scaling

2. Seleccione la casilla de verificación situada junto al grupo de Auto Scaling.

Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto
Scaling) que muestra información sobre el grupo seleccionado.
3. En la pestaña Details (Detalles), elija Tags (Etiquetas), Edit (Editar).
4. Para modificar las etiquetas existentes, edite Key y Value.
5. Para agregar una nueva etiqueta, seleccione Add tag y modifique Key y Value. Puedes
mantenerEtiquetar nuevas instanciasPara añadir la etiqueta a las instancias lanzadas en el grupo de
Auto Scaling automáticamente y cancelar su selección en caso contrario.
6. Cuando haya terminado de agregar etiquetas, elija Update (Actualizar).

Para añadir o modificar etiquetas (AWS CLI)


Los siguientes ejemplos muestran cómo utilizar laAWS CLIPara agregar etiquetas al crear grupos de Auto
Scaling, y para agregar o modificar etiquetas para grupos de Auto Scaling.

Para etiquetar un grupo de Auto Scaling al crearse

• Usarcreate-auto-scaling-groupPara crear un nuevo grupo de Auto Scaling y añadir una etiqueta, por
ejemplo,env=prod, para el grupo de Auto Scaling. La etiqueta también se añade a cualquier instancia
lanzada en el grupo de Auto Scaling.

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


--launch-configuration-name my-launch-config --min-size 1 --max-size 3 \
--vpc-zone-identifier "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782" \
--tags Key=env,Value=prod,PropagateAtLaunch=true

Para crear o modificar etiquetas en un grupo de Auto Scaling existente

• Utilice el comando create-or-update-tags para crear o modificar una etiqueta. Por ejemplo, el siguiente
comando añade las etiquetas cost-center=cc123 y Name=my-asg. Las etiquetas también se
añadirán a cualquier instancia lanzada en el grupo de Auto Scaling después de realizar este cambio.
Si ya existe una etiqueta con esta clave, se sustituye la etiqueta existente. La consola de Amazon EC2
asocia el nombre mostrado de cada instancia con el nombre que se especifica para laName(distingue
entre mayúsculas y minús

aws autoscaling create-or-update-tags \


--tags ResourceId=my-asg,ResourceType=auto-scaling-group,Key=Name,Value=my-
asg,PropagateAtLaunch=true \
ResourceId=my-asg,ResourceType=auto-scaling-group,Key=cost-
center,Value=cc123,PropagateAtLaunch=true

Para obtener una lista de todas las etiquetas de un grupo de Auto Scaling

• Utilice el siguientedescribe-tagsPara obtener una lista de las etiquetas del grupo de Auto Scaling
especificado.

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

A continuación se muestra un ejemplo de respuesta.

{
"Tags": [

88
Auto Scaling de Amazon EC2 Guía del usuario
Eliminar etiquetas

{
"ResourceType": "auto-scaling-group",
"ResourceId": "my-asg",
"PropagateAtLaunch": true,
"Value": "prod",
"Key": "env"
}
]
}

• También puede usar la siguientedescribe-auto-scaling-groupsPara comprobar que la etiqueta se ha


agregado al grupo de Auto Scaling.

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

A continuación se muestra un ejemplo de respuesta.

{
"AutoScalingGroups": [
{
"AutoScalingGroupARN": "arn",
"HealthCheckGracePeriod": 0,
"SuspendedProcesses": [],
"DesiredCapacity": 1,
"Tags": [
{
"ResourceType": "auto-scaling-group",
"ResourceId": "my-asg",
"PropagateAtLaunch": true,
"Value": "prod",
"Key": "env"
}
],
"EnabledMetrics": [],
"LoadBalancerNames": [],
"AutoScalingGroupName": "my-asg",
...
}
]
}

Eliminar etiquetas
Puede eliminar una etiqueta asociada a su grupo de Auto Scaling en cualquier momento.

Contenido
• Eliminar etiquetas (consola) (p. 89)
• Eliminar etiquetas (AWS CLI) (p. 90)

Eliminar etiquetas (consola)


Para eliminar una etiqueta

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto a un grupo existente.

89
Auto Scaling de Amazon EC2 Guía del usuario
Elastic Load Balancing

Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto
Scaling) que muestra información sobre el grupo seleccionado.
3. En la pestaña Details (Detalles), elija Tags (Etiquetas), Edit (Editar).
4. Elija Remove (Eliminar) junto a la etiqueta.
5. Elija Update (Actualizar).

Eliminar etiquetas (AWS CLI)


Ejecute el comando delete-tags para eliminar una etiqueta. Por ejemplo, el comando siguiente elimina una
etiqueta cuya clave es env.

aws autoscaling delete-tags --tags "ResourceId=my-asg,ResourceType=auto-scaling-


group,Key=env"

Debe especificar la clave de etiqueta, pero no obligatorio especificar el valor. Si especifica un valor y el
valor es incorrecto, la etiqueta no se elimina.

Elastic Load Balancing y Amazon EC2 Auto Scaling


Elastic Load Balancing distribuye automáticamente el tráfico entrante de aplicaciones en todas las
instancias EC2 que está ejecutando. Elastic Load Balancing ayuda a gestionar las solicitudes entrantes
enrutando el tráfico de forma óptima para que ninguna instancia supere su capacidad.

Para utilizar Elastic Load Balancing con el grupo Auto Scaling,Asocie el balanceador de carga a su grupo
de Auto Scaling (p. 92). De este modo, registra el grupo con el balanceador de carga, que actúa como
un único punto de contacto para todo el tráfico web entrante a su grupo de Auto Scaling.

Cuando utiliza Elastic Load Balancing con su grupo de Auto Scaling, no es necesario registrar instancias
EC2 individuales con el balanceador de carga. Las instancias iniciadas por el grupo de Auto Scaling se
registran automáticamente con el balanceador de carga. Del mismo modo, las instancias que termine el
grupo de Auto Scaling se anulan automáticamente del balanceador de carga.

Después de asociar un balanceador de carga a su grupo de Auto Scaling, puede configurar el grupo de
Auto Scaling para que utilice métricas de Elastic Load Balancing de la aplicación (como el recuento de
solicitudes del balanceador de carga de la aplicación por destino) para escalar el número de instancias del
grupo a medida que fluctúe la demanda.

Si lo desea, puede agregar comprobaciones de estado de Elastic Load Balancing al grupo Auto Scaling
para que Amazon EC2 Auto Scaling pueda identificar y reemplazar instancias que no estén en buen estado
basándose en estas comprobaciones de estado adicionales. De lo contrario, puede crear una alarma
de CloudWatch que le notifique si el número de hosts en buen estado del grupo de destino es inferior al
permitido.

Limitaciones

• El balanceador de carga y su grupo de destino deben estar en la misma región que el grupo de Auto
Scaling.
• El grupo de destino debe especificar un tipo de destino deinstance. No puede especificar un tipo de
destino deipAl utilizar un grupo de Auto Scaling.

Contenido

90
Auto Scaling de Amazon EC2 Guía del usuario
Tipos de Elastic Load Balancing

• Tipos de Elastic Load Balancing (p. 91)


• Requisitos previos para comenzar a utilizar Elastic Load Balancing (p. 92)
• Asociar un balanceador de carga a su grupo de Auto Scaling (p. 92)
• Adición de comprobaciones de estado Elastic Load Balancing a un grupo de Auto Scaling (p. 95)
• Adición y eliminación de zonas de disponibilidad (p. 96)
• Ejemplos para trabajar con Elastic Load Balancing conAWS Command Line Interface(AWS
CLI) (p. 99)

Tipos de Elastic Load Balancing


Elastic Load Balancing ofrece cuatro tipos de balanceadores de carga que se pueden utilizar con su grupo
de Auto Scaling: Balanceadores de carga de aplicaciones, balanceadores de carga de red, balanceadores
de carga de gateway y balanceadores de carga clásicos.

Hay una diferencia clave en el modo en que se configuran los tipos de balanceador de carga. Con
Application Load Balancers, Network Load Balancers y Gateway Load Balancers, las instancias se
registran como destinos con un grupo de destino y se enruta el tráfico al grupo de destino. Con Classic
Load Balancers (Balanceadores de carga clásicos), las instancias se registran directamente en el
balanceador

Balanceador de carga de aplicaciones

Enruta y balancea la carga en la capa de la aplicación (HTTP/HTTPS) y admite el enrutamiento


basado en rutas. En Application Load Balancer (Balanceador de carga de aplicaciones) puede enrutar
las solicitudes a puertos de uno o varios destinos registrados, como instancias EC2, en su nube virtual
privada (VPC).
Balanceador de carga de red

Rutea y balancea la carga en la capa de transporte (capa 4 de TCP/UDP), basándose en la


información de la dirección extraída del encabezado del paquete TCP, no del contenido del paquete.
Los balanceadores de carga de red pueden atender ráfagas de tráfico, conservar la IP de origen del
cliente y utilizar una IP fija mientras dura la vida útil del balanceador de carga.
Load Balancer de gateway

Distribuye el tráfico a una flota de instancias de dispositivo. Proporciona escalabilidad, disponibilidad y


simplicidad para dispositivos virtuales de terceros, como firewalls, sistemas de prevención y detección
de intrusiones y otros dispositivos. Los equilibradores de carga de puerta de enlace funcionan con
dispositivos virtuales compatibles con el protocolo GENEVE. Se requiere una integración técnica
adicional, así que asegúrese de consultar la guía del usuario antes de elegir un Load Balancer de
puerta de enlace.
Classic Load Balancer

Las rutas y los balanceadores de carga en la capa de transporte (TCP/SSL) o la capa de aplicación
(HTTP/HTTPS). Un Classic Load Balancer admite EC2-Classic o una VPC.

Para obtener más información acerca de Elastic Load Balancing, consulte los temas siguientes:

• ¿Qué es Elastic Load Balancing?


• ¿Qué es un Application Load Balancer?
• ¿Qué es un Network Load Balancer?
• ¿Qué es un Load Balancer de gateway?

91
Auto Scaling de Amazon EC2 Guía del usuario
Requisitos previos

• ¿Qué es un Classic Load Balancer?

Requisitos previos para comenzar a utilizar Elastic


Load Balancing
Siga los procedimientos de la documentación de Elastic Load Balancing para crear el equilibrador de
carga y el grupo de destino. Puede omitir el paso para registrar sus instancias de Amazon EC2. Amazon
EC2 Auto Scaling se encarga de registrar automáticamente las instancias. Para obtener más información,
consulteIntroducción a Elastic Load Balancingen laGuía del usuario de Elastic Load Balancing.

Como alternativa, si desea crear un equilibrador de carga de aplicaciones o un equilibrNetwork Load


Balancer, no necesita crear el equilibrador de carga y el grupo de destino ahora. Puede crear y adjuntar un
nuevo equilibrador de carga de aplicaciones o un equilibrador de Network Load Balancer desde la consola
de Amazon EC2 Auto Scaling. Para obtener más información, consulte Configurar un Application Load
Balancer o un Network Load Balancer utilizando la consola Auto Scaling de Amazon EC2 (p. 94).

Si es necesario, cree una nueva plantilla de lanzamiento o una configuración de lanzamiento para su grupo
de Auto Scaling. Cree una plantilla de inicio o una configuración de inicio con un grupo de seguridad que
controla el tráfico hacia y desde las instancias detrás del equilibrador de carga. Las reglas recomendadas
dependen del tipo de balanceador de carga y de los tipos de backends que utiliza el balanceador de carga.
Por ejemplo, para enrutar el tráfico a los servidores web, permita el acceso HTTP entrante en el puerto 80
desde el equilibrador de carga.

Puede configurar la comprobación de estado para un grupo de Auto Scaling en cualquier momento.
Para añadir comprobaciones de estado de Elastic Load Balancing, consulteAdición de comprobaciones
de estado Elastic Load Balancing a un grupo de Auto Scaling (p. 95). Antes de añadir estas
comprobaciones de estado, asegúrese de que el grupo de seguridad de la plantilla de lanzamiento o la
configuración de lanzamiento permite el acceso desde el balanceador de carga en el puerto correcto para
que Elastic Load Balancing realice comprobaciones de estado.

Antes de implementar dispositivos virtuales detrás de un Load Balancer de puerta de enlace, la plantilla de
inicio o la configuración de inicio debe cumplir los siguientes requisitos:

• La imagen de máquina de Amazon (AMI) debe especificar el ID de una AMI que admita GENEVE
utilizando un Load Balancer de gateway.
• Los grupos de seguridad deben permitir el tráfico UDP en el puerto 6081.

Asociar un balanceador de carga a su grupo de Auto


Scaling
En este tema, se describe cómo asociar un balanceador de carga Elastic Load Balancing a su grupo de
Auto Scaling. Amazon EC2 Auto Scaling se integra con Elastic Load Balancing para ayudarle a insertar un
equilibrador de carga de aplicaciones, un equilibrador de carga de red, un equilibrClassic Load Balancer
o un equilibrador de carga de puerta de enlace delante del grupo Auto Scaling. Los balanceadores de
carga clásicos son el único tipo de equilibrador de carga disponible para EC2-Classic. Para obtener
más información sobre los diferentes tipos de balanceadores de carga, consulte Tipos de Elastic Load
Balancing (p. 91).

Al asociar un Application Load Balancer o un Network Load Balancer de carga de gateway, asocia un
grupo de destino. Amazon EC2 Auto Scaling añade instancias al grupo de destino asociado cuando se
lanzan. Puede asociar uno o varios grupos de destino y configurar las comprobaciones de estado de cada
grupo de destino.

92
Auto Scaling de Amazon EC2 Guía del usuario
Conexión de un balanceador de carga

Contenido
• Descripción del estado del balanceador de carga (p. 93)
• Adjuntar un equilibrador de carga existente (p. 93)
• Configurar un Application Load Balancer o un Network Load Balancer utilizando la consola Auto
Scaling de Amazon EC2 (p. 94)
• Separar un balanceador de carga (p. 95)

Descripción del estado del balanceador de carga


Cuando asocia un balanceador de carga, este pasa a tener el estado Adding mientras registra las
instancias del grupo. Una vez registradas todas las instancias del grupo, ingresa elAddedEstado. Cuando
al menos una de las instancias registradas supera las comprobaciones de estado, pasa a tener el estado
InService. Cuando el equilibrador de carga está en elInServiceEn el estado, Amazon EC2 Auto
Scaling puede terminar y sustituir las instancias notificadas como en mal estado. Si ninguna de las
instancias registradas supera las comprobaciones de estado (debido, por ejemplo, a una comprobación de
estado configurada incorrectamente), el balanceador de carga no adoptará elInServiceEstado. Amazon
EC2 Auto Scaling no finaliza ni sustituye las instancias.

Cuando desasocia un balanceador de carga, este pasa a tener el estado Removing mientras se cancela
el registro de las instancias del grupo. Las instancias siguen ejecutándose una vez que se ha cancelado su
registro. De forma predeterminada, el vaciado de conexiones está habilitado para balanceadores de carga
de aplicaciones, balanceadores de carga de red y balanceadores de carga de gateway. Si el vaciado de
conexiones está habilitado, Elastic Load Balancing espera a que se completen las solicitudes en tránsito
o a que termine el tiempo de espera máximo (lo que ocurra primero) antes de cancelar el registro de las
instancias.

Adjuntar un equilibrador de carga existente


Puede asociar un balanceador de carga existente a un grupo de Auto Scaling cuando crea o actualiza
el grupo. Si desea crear y adjuntar un nuevo Application Load Balancer o un Network Load Balancer al
mismo tiempo que crea el grupo, consulteConfigurar un Application Load Balancer o un Network Load
Balancer utilizando la consola Auto Scaling de Amazon EC2 (p. 94).

Para adjuntar un equilibrador de carga existente mientras crea un nuevo grupo de Auto Scaling

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Elija Create Auto Scaling group (Crear grupo de Auto Scaling).
3. En los pasos 1 y 2, elija las opciones que desee y continúe conPaso 3: Configure las opciones
avanzadas.
4. ParaBalanceo de carga, elijaEnlazar a un equilibrador de carga existente.
5. UNDEREnlazar a un equilibrador de carga existenteEn, realice una de las siguientes operaciones:

a. Para Application Load Balancers (Balanceadores de carga de aplicaciones), Network Load


Balancers (Balanceadores de carga

SeleccionarElija entre los grupos de destino del equilibrador de cargaEn y, a continuación, elija un
grupo de destino enGrupos de destino del balanceador de carga existentesfield.
b. En Classic Load Balancer:

SeleccionarElija entre Classic Load BalancerEn y, a continuación, elija el balanceador de carga


enClassic Load Balancersfield.
6. Proceda a crear el grupo de Auto Scaling. Las instancias se registrarán automáticamente en el
equilibrador de carga una vez creado el grupo Auto Scaling.

93
Auto Scaling de Amazon EC2 Guía del usuario
Conexión de un balanceador de carga

Para asociar un balanceador de carga existente a un grupo de Auto Scaling

Utilice el siguiente procedimiento para asociar un balanceador de carga a un grupo de Auto Scaling.

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto a un grupo existente.

Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto
Scaling) que muestra información sobre el grupo seleccionado.
3. En la pestaña Details (Detalles), elija Load balancing (Balance de carga), Edit (Editar).
4. En Load balancing (Balance de carga), realice una de las siguientes acciones:

a. ParaGrupos de destino del Load Balancer de aplicaciones, redes o puertas de enlaceSeleccione


su casilla de verificación y elija un grupo de destino.
b. ParaClassic Load BalancersSeleccione su casilla de verificación y elija su balanceador de carga.
5. Elija Update (Actualizar).

Configurar un Application Load Balancer o un Network Load


Balancer utilizando la consola Auto Scaling de Amazon EC2
Utilice el siguiente procedimiento para crear y asociar un balanceador de carga de aplicaciones o un
Network Load Balancer mientras crea el grupo de Auto Scaling.

Para crear y adjuntar un nuevo equilibrador de carga a medida que crea un nuevo grupo de Auto
Scaling

1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.


2. En el panel de navegación, elija AUTO SCALING y elija Auto Scaling Groups (Grupos de Auto
Scaling).
3. Elija Create Auto Scaling group (Crear grupo de Auto Scaling).
4. En los pasos 1 y 2, elija las opciones que desee y continúe conPaso 3: Configure las opciones
avanzadas.
5. ParaBalanceo de carga, elijaEnlazar a un nuevo balanceador de carga.

a. UNDEREnlazar a un nuevo balanceador de carga, paraTipo de balanceador de cargaElija


si desea crear un balanceador de carga de aplicaciones o un balanceador de Network Load
Balancer.
b. ParaLoad balancer name (Nombre del balanceador de carga)Escriba un nombre para el
balanceador de carga o conserve el nombre predeterminado.
c. ParaBalanceador de cargaElija si desea crear un balanceador de carga público expuesto a
Internet o conservar el valor predeterminado para un balanceador de carga interno.
d. ParaZonas de disponibilidad y subredes, seleccione la subred pública de cada zona de
disponibilidad en la que haya elegido lanzar las instancias EC2. (Estos se rellenan previamente en
el paso 2.)
e. ParaListeners y enrutamiento, actualice el número de puerto de su oyente (si es necesario) y
enEnrutamiento predeterminado, elijaCreación de un grupo de destino. Como alternativa, puede
elegir un grupo de destino existente en la lista desplegable.
f. Si eligióCreación de un grupo de destinoen el último paso, paraNuevo nombre de grupo de
destinoEscriba un nombre para el grupo de destino o conserve el nombre predeterminado.
g. Para añadir etiquetas, elijaAgregar etiquetaPara proporcionar una clave de etiqueta y un valor
para cada etiqueta.

94
Auto Scaling de Amazon EC2 Guía del usuario
Agregar comprobaciones de estado de ELB

6. Proceda a crear el grupo de Auto Scaling. Las instancias se registrarán automáticamente en el


equilibrador de carga una vez creado el grupo Auto Scaling.
Note

Después de crear el grupo Auto Scaling, puede utilizar la consola Elastic Load Balancing
para crear oyentes adicionales. Esto resulta útil si necesita crear un listener con un protocolo
seguro, como HTTPS o un listener UDP. Puede agregar más oyentes a los equilibradores de
carga existentes, siempre y cuando utilice puertos distintos.

Separar un balanceador de carga


Cuando ya no necesite el balanceador de carga, utilice el siguiente procedimiento para desasociarlo de su
grupo de Auto Scaling.

Para desasociar un balanceador de carga de un grupo

1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.


2. En el panel de navegación, elija AUTO SCALING y elija Auto Scaling Groups (Grupos de Auto
Scaling).
3. Seleccione la casilla de verificación situada junto a un grupo existente.

Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto
Scaling) que muestra información sobre el grupo seleccionado.
4. En la pestaña Details (Detalles), elija Load balancing (Balance de carga), Edit (Editar).
5. En Load balancing (Balance de carga), realice una de las siguientes acciones:

a. ParaGrupos de destino del Load Balancer de aplicaciones, redes o puertas de enlaceElija el icono
de eliminar (X) situado junto al grupo de destino.
b. ParaClassic Load BalancersElija el icono de eliminar (X) situado junto al balanceador de carga.
6. Elija Update (Actualizar).

Adición de comprobaciones de estado Elastic Load


Balancing a un grupo de Auto Scaling
Las comprobaciones de estado predeterminadas para un grupo de Auto Scaling son solo comprobaciones
de estado de EC2. Si una instancia falla en estas comprobaciones de estado, se marca como no saludable
y se finaliza mientras Amazon EC2 Auto Scaling lanza una nueva instancia de reemplazo.

Puede asociar uno o varios grupos de destino del balanceador de carga, uno o varios balanceadores de
carga clásicos o ambos al grupo de Auto Scaling. Sin embargo, de forma predeterminada, el grupo Auto
Scaling no considera que una instancia está en mal estado ni la sustituye si no supera las comprobaciones
de estado de Elastic Load Balancing.

Para asegurarse de que el grupo Auto Scaling puede determinar el estado de la instancia basándose
en pruebas adicionales de equilibrador de carga, configure el grupo Auto Scaling para que utilice Elastic
Load Balancing (ELB). El balanceador de carga, de forma periódica, envía pings, intenta establecer una
conexión o envía solicitudes para probar las instancias EC2 y determina si una instancia no está en buen
estado. Si configura el grupo de Auto Scaling para que utilice comprobaciones de estado de Elastic Load
Balancing, este considera que el estado de la instancia es incorrecto si no supera las comprobaciones de
estado de EC2 o las comprobaciones de estado de Elastic Load Balancing. Si asocia varios grupos de
destino del balanceador de carga o balanceadores de carga clásicos al grupo, todos ellos deben registrar
una instancia como correcta para que se considere que está en buen estado. Si alguno de ellos registra

95
Auto Scaling de Amazon EC2 Guía del usuario
Agregar zonas de disponibilidad de

una instancia como en mal estado, el grupo Auto Scaling sustituye la instancia, aunque otros la registren
como correcta.

Agregar comprobaciones de estado Elastic Load Balancing


Utilice el siguiente procedimiento para agregar Elastic Load Balancing (ELBComprobaciones de estado de
un grupo de Auto Scaling.

Para agregar comprobaciones de estado Elastic Load Balancing

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto a un grupo existente.

Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto
Scaling) que muestra información sobre el grupo seleccionado.
3. En la pestaña Details (Detalles), elija Health checks (Comprobaciones de estado), Edit (Editar).
4. En Health check type (Tipo de comprobación de estado), seleccione Enable ELB health checks
(Habilitar comprobaciones de estado de ELB).
5. ParaPeríodo de gracia de HealthEscriba la cantidad de tiempo, en segundos, que Auto Scaling de
Amazon EC2 debe esperar antes de comprobar el estado de una instancia. Las instancias nuevas a
menudo necesitan tiempo para un breve calentamiento antes de que puedan pasar una comprobación
de estado. Para proporcionar tiempo suficiente para preparar, establezca el periodo de gracia de
comprobación de estado del grupo de para que coincida con el tiempo de inicio esperado de la
aplicación.
6. Elija Update (Actualizar).
7. En la pestaña Instance management (Administración de instancia), en Instances (Instancias), puede
ver el estado de las instancias. La columna Health Status (Estado) muestra los resultados de las
comprobaciones de estado recién agregadas.

Véase también
• Para obtener más información, consulte Comprobaciones de Health para instancias de Auto
Scaling (p. 239).
• Para configurar las comprobaciones de estado de su Application Load Balancer,
consulteComprobaciones de estado de los grupos de destinoen laGuía del usuario para Application Load
Balancers.
• Para configurar las comprobaciones de estado de su Network Load Balancer, consulteComprobaciones
de estado de los grupos de destinoen laGuía del usuario para Network Load Balancers.
• Para configurar las comprobaciones de estado de su Load Balancer de gateway,
consulteComprobaciones de estado de los grupos de destinoen laGuía del usuario de balanceadores de
carga de gateway.
• Para configurar las comprobaciones de estado de su Classic Load Balancer, consulteConfigurar
comprobaciones de estado para su Classic Load Balanceren laGuía del usuario para Classic Load
Balancers.

Adición y eliminación de zonas de disponibilidad


Para aprovecharse de la seguridad y la fiabilidad de la redundancia geográfica, distribuya su grupo de Auto
Scaling por varias zonas de disponibilidad dentro de una región y asocie un balanceador de carga para
distribuir el tráfico entrante entre las zonas de disponibilidad.

96
Auto Scaling de Amazon EC2 Guía del usuario
Agregar zonas de disponibilidad de

Cuando una zona de disponibilidad pasa a tener un estado incorrecto o deja de estar disponible, Amazon
EC2 Auto Scaling lanza nuevas instancias en la zona de disponibilidad afectada. Cuando la zona de
disponibilidad en mal estado vuelve a tener un estado correcto, Amazon EC2 Auto Scaling redistribuye
automáticamente las instancias de la aplicación de manera uniforme por todas las zonas de disponibilidad
del grupo de Auto Scaling. Para ello, Amazon EC2 Auto Scaling intenta lanzar nuevas instancias en la
zona de disponibilidad con el menor número de instancias. Sin embargo, si el intento fracasa, Auto Scaling
de Amazon EC2 intenta lanzar instancias en otras zonas de disponibilidad hasta que lo consiga.

Elastic Load Balancing crea un nodo de balanceador de carga para cada zona de disponibilidad que
habilita para el balanceador de carga. Si habilita el balanceo de carga entre zonas para el balanceador de
carga, cada nodo del balanceador de carga distribuye el tráfico equitativamente entre todas las instancias
registradas en todas las zonas de disponibilidad habilitadas. Si cross-zone load balancing está inhabilitado,
cada nodo del balanceador de carga distribuye las solicitudes equitativamente entre todas las instancias
registradas solo en su zona de disponibilidad.

Debe especificar al menos una zona de disponibilidad al crear el grupo de Auto Scaling. Después, puede
ampliar la disponibilidad de la aplicación aplicados añadiendo una zona de disponibilidad a su grupo de
Auto Scaling y habilitando dicha zona de disponibilidad para el balanceador de carga (si el balanceador de
carga lo admite).

Contenido
• Agregar una zona de disponibilidad (p. 97)
• Eliminar una zona de disponibilidad (p. 98)
• Limitations (p. 99)

Agregar una zona de disponibilidad


Utilice el siguiente procedimiento para ampliar su grupo de Auto Scaling y su balanceador de carga a una
subred de una zona de disponibilidad adicional.

Para agregar una zona de disponibilidad

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto a un grupo existente.

Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto
Scaling) que muestra información sobre el grupo seleccionado.
3. En la pestaña Details (Detalles), elija Network (Red), Edit (Editar).
4. EnSubredesElija la subred correspondiente a la zona de disponibilidad que desea añadir al grupo Auto
Scaling.
5. Elija Update (Actualizar).
6. Para actualizar las zonas de disponibilidad del balanceador de carga para que comparta las mismas
zonas de disponibilidad que el grupo de Auto Scaling, siga los pasos siguientes:

a. En el panel de navegación, en LOAD BALANCING (EQUILIBRIO DE CARGA), elija Load


Balancers (Balanceadores de carga).
b. Elija el balanceador de carga.
c. Aplique alguna de las siguientes acciones:
• Para Application Load Balancers y Network Load Balancers:

1. En la páginaDescripciónPestaña, paraZonas de disponibilidad, elijaEditar subredes.


2. En la páginaEditar subredes(Se ha creado la)Zonas de disponibilidadEn, seleccione la
casilla de verificación de la zona de disponibilidad que desea añadir. Si hay una sola

97
Auto Scaling de Amazon EC2 Guía del usuario
Agregar zonas de disponibilidad de

subred en esa zona, se seleccionará. Si hay más de una subred en esa zona, seleccione
una de ellas.
• Para equilibradores de carga clásicos en una VPC:

1. En la pestaña Instances (Instancias), elija Edit Availability Zones (Editar zonas de


disponibilidad).
2. En la páginaAgregar y eliminar subredes(Se ha creado la)Subredes disponiblesEn,
seleccione la subred utilizando el icono de agregar (+). La subred se situará bajo Selected
subnets.
• Para equilibradores de carga clásicos en EC2-Classic:

1. En la pestaña Instances (Instancias), elija Edit Availability Zones (Editar zonas de


disponibilidad).
2. En la página Add and Remove Availability Zones (Añadir y eliminar zonas de
disponibilidad), elija la zona de disponibilidad que desea añadir.
d. Seleccione Save.

Eliminar una zona de disponibilidad


Para quitar una zona de disponibilidad del grupo de Auto Scaling y del balanceador de carga, utilice el
siguiente procedimiento.

Para eliminar una zona de disponibilidad

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto a un grupo existente.

Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto
Scaling) que muestra información sobre el grupo seleccionado.
3. En la pestaña Details (Detalles), elija Network (Red), Edit (Editar).
4. EnSubredes, elija el icono de eliminación (X) de la subred correspondiente a la zona de disponibilidad
que desea eliminar del grupo Auto Scaling. Si hay más de una subred en esa zona, elija el icono de
eliminación (X) para cada una de ellas.
5. Elija Update (Actualizar).
6. Para actualizar las zonas de disponibilidad del balanceador de carga para que comparta las mismas
zonas de disponibilidad que el grupo de Auto Scaling, siga los pasos siguientes:

a. En el panel de navegación, en LOAD BALANCING (EQUILIBRIO DE CARGA), elija Load


Balancers (Balanceadores de carga).
b. Elija el balanceador de carga.
c. Aplique alguna de las siguientes acciones:
• Para Application Load Balancers y Network Load Balancers:

1. En la páginaDescripciónPestaña, paraZonas de disponibilidad, elijaEditar subredes.


2. En la páginaEditar subredes(Se ha creado la)Zonas de disponibilidadDesactive la casilla
de verificación para eliminar la subred de esa zona de disponibilidad.
• Para equilibradores de carga clásicos en una VPC:

1. En la pestaña Instances (Instancias), elija Edit Availability Zones (Editar zonas de


disponibilidad).
2. En la páginaAgregar y eliminar subredes(Se ha creado la)Subredes disponiblesEn,
elimine la subred a través del icono de eliminación (-). La subred se situará bajoSubredes
disponibles.

98
Auto Scaling de Amazon EC2 Guía del usuario
AWS CLIejemplos para trabajar con Elastic Load Balancing

• Para equilibradores de carga clásicos en EC2-Classic:

1. En la pestaña Instances (Instancias), elija Edit Availability Zones (Editar zonas de


disponibilidad).
2. En la página Add and Remove Availability Zones (Agregar y quitar zonas de
disponibilidad), borre la zona de disponibilidad.
d. Seleccione Save.

Limitations
Para actualizar las zonas de disponibilidad habilitadas para el balanceador de carga, debe tener en cuenta
las siguientes limitaciones:

• Al habilitar una zona de disponibilidad para el balanceador de carga, especifica una subred de dicha
zona de disponibilidad. Tenga en cuenta que, como máximo, puede habilitar una subred por cada zona
de disponibilidad para su balanceador de carga.
• Para los balanceadores de carga expuestos a Internet, las subredes que especifique para el
balanceador de carga deben tener al menos ocho direcciones IP disponibles.
• Para Application Load Balancer (Balanceadores de carga de aplicaciones), debe habilitar al menos dos
zonas de disponibilidad
• En Network Load Balancers, no puede deshabilitar las zonas de disponibilidad habilitadas, pero puede
habilitar otras adicionales.
• Para los equilibradores de carga de puerta de enlace, no puede cambiar las zonas de disponibilidad ni
las subredes que se agregaron cuando se creó el equilibrador de carga.

Ejemplos para trabajar con Elastic Load Balancing


conAWS Command Line Interface(AWS CLI)
UsarAWS CLIpara asociar y desconectar equilibradores de carga, agregar comprobaciones de estado de
Elastic Load Balancing y actualizar las zonas de disponibilidad.

Contenido
• Enlace a un grupo de destino del balanceador de carga (p. 99)
• Describiendo grupos de destino del balanceador de carga (p. 100)
• Desenlace de un grupo de destino del balanceador de carga (p. 100)
• Conexión de un Classic Load Balancer (p. 100)
• Describe Balanceadores de carga clásicos (p. 100)
• Desconexión de un Classic Load Balancer (p. 101)
• Agregar comprobaciones de estado Elastic Load Balancing (p. 101)
• Actualización de zonas de disponibilidad de (p. 101)

Enlace a un grupo de destino del balanceador de carga


Los siguientes ejemplos decreate-auto-scaling-groupEl comando crea un grupo de Auto Scaling con un
grupo de destino asociado. Especifique el nombre de recurso de Amazon (ARN) de un grupo de destino
para un Load Balancer de aplicaciones o un balanceador de carga de gateway.

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


--launch-template "LaunchTemplateName=my-launch-template,Version=1" \
--vpc-zone-identifier "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782" \

99
Auto Scaling de Amazon EC2 Guía del usuario
AWS CLIejemplos para trabajar con Elastic Load Balancing

--target-group-arns "arn:aws:elasticloadbalancing:region:123456789012:targetgroup/my-
targets/1234567890123456" \
--max-size 5 --min-size 1 --desired-capacity 2

Los siguientes ejemplos deadjuntar-equilibrador-carga-objetivo-gruposadjunta un grupo de destino a un


grupo de Auto Scaling existente.

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


--target-group-arns "arn:aws:elasticloadbalancing:region:123456789012:targetgroup/my-
targets/1234567890123456"

Describiendo grupos de destino del balanceador de carga


Para ver los grupos de destino asociados a un grupo de Auto Scaling, utilice la herramientadescribe-
equilibrador-carga-objetivo-gruposEl comando de. En el siguiente ejemplo se enumeran los grupos de
destino demy-asg.

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

Para obtener una explicación de laStateen la salida, consulte laDescripción del estado del balanceador
de carga (p. 93)en un tema anterior.

Desenlace de un grupo de destino del balanceador de carga


Los siguientes ejemplos deseparar-equilibrador de carga-objetivo-gruposDesconecta un grupo de destino
del grupo de Auto Scaling cuando ya no lo necesita.

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


--target-group-arns "arn:aws:elasticloadbalancing:region:123456789012:targetgroup/my-
targets/1234567890123456"

Conexión de un Classic Load Balancer


Los siguientes ejemplos decreate-auto-scaling-groupcrea un grupo de Auto Scaling con un Classic Load
Balancer adjunto.

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


--launch-configuration-name my-launch-config \
--vpc-zone-identifier "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782" \
--load-balancer-names "my-load-balancer" \
--max-size 5 --min-size 1 --desired-capacity 2

Los siguientes ejemplos deequilibradores de carga adjuntaasocia el Classic Load Balancer especificado a
un grupo de Auto Scaling existente.

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


--load-balancer-names my-lb

Describe Balanceadores de carga clásicos


Para ver los balanceadores de carga clásicos asociados a un grupo de Auto Scaling, utilice la
herramientaBalanceadores de carga describe-load-balancersEl comando de. En el ejemplo siguiente se
enumeran los equilibradores de carga clásicos demy-asg.

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

100
Auto Scaling de Amazon EC2 Guía del usuario
AWS CLIejemplos para trabajar con Elastic Load Balancing

Para obtener una explicación de laStateen la salida, consulteDescripción del estado del balanceador de
carga (p. 93).

Desconexión de un Classic Load Balancer


Los siguientes ejemplos deseparar-equilibradores de cargaCuando ya no lo necesite, desasocia un Classic
Load Balancer del grupo de Auto Scaling.

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


--load-balancer-names my-lb

Agregar comprobaciones de estado Elastic Load Balancing


Para agregar comprobaciones de estado de Elastic Load Balancing a un grupo de Auto Scaling, ejecute
lo siguienteupdate-auto-scaling-groupcomando y especificarELBcomo el valor de la propiedad--health-
check-typeOpción de.

aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-lb-asg \


--health-check-type ELB

Para actualizar el período de gracia de comprobación de estado, use la herramienta--health-


check-grace-periodOpción de. Las instancias nuevas a menudo necesitan tiempo para un breve
calentamiento antes de que puedan pasar una comprobación de estado. Si el período de gracia no
proporciona suficiente tiempo de calentamiento, es posible que las instancias no parezcan listas para
servir tráfico. Amazon EC2 Auto Scaling podría considerar que esas instancias no están en buen estado y
reemplazarlas. Para obtener más información, consulte Período de gracia de Health (p. 240).

Los siguientes ejemplos deupdate-auto-scaling-groupañade comprobaciones de estado de Elastic Load


Balancing y especifica un periodo de gracia de 300 segundos.

aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-lb-asg \


--health-check-type ELB --health-check-grace-period 300

Actualización de zonas de disponibilidad de


Los comandos que utilice dependerán de si el balanceador de carga es un balanceador de Application
Load Balancer o un Network Load Balancer, un Classic Load Balancer en una VPC o un Classic
Load Balancer en EC2-Classic. Puede actualizar las subredes y las zonas de disponibilidad del
equilibrador de carga sólo si el equilibrador de carga lo admite. Para obtener más información, consulte
Limitations (p. 99).

Para un grupo de Auto Scaling con balanceadores de carga de aplicaciones o balanceadores


Network Load Balancer

1. Especifique las subredes que se utilizan para el grupo Auto Scaling mediante el siguienteupdate-auto-
scaling-groupEl comando de.

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


--vpc-zone-identifier subnet-41767929 subnet-cb663da2 subnet-8360a9e7

2. Verifique que las instancias de las nuevas subredes están listas para aceptar tráfico del balanceador
de carga utilizando los siguientesdescribe-auto-scaling-groupsEl comando de.

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

101
Auto Scaling de Amazon EC2 Guía del usuario
AWS CLIejemplos para trabajar con Elastic Load Balancing

3. Especifique las subredes que se utilizan para balanceadores de carga de aplicaciones o


balanceadores Network Load Balancer utilizando los siguientes pasos:establecer subredesEl comando
de.

aws elbv2 set-subnets --load-balancer-arn my-lb-arn \


--subnets subnet-41767929 subnet-cb663da2 subnet-8360a9e7

Para un grupo de Auto Scaling con un Classic Load Balancer en una VPC

1. Especifique las subredes que se utilizan para el grupo Auto Scaling mediante el siguienteupdate-auto-
scaling-groupEl comando de.

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


--vpc-zone-identifier subnet-41767929 subnet-cb663da2

2. Verifique que las instancias de las nuevas subredes están listas para aceptar tráfico del balanceador
de carga utilizando los siguientesdescribe-auto-scaling-groupsEl comando de.

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

3. Habilite la nueva subred para su Classic Load Balancer (Balanceador de carga clásico)
usandobalanceador de carga adjunto a subredesEl comando de.

aws elb attach-load-balancer-to-subnets --load-balancer-name my-lb \


--subnets subnet-cb663da2

Para deshabilitar una subred, ejecute la siguienteseparar el balanceador de carga de subredesEl


comando de.

aws elb detach-load-balancer-from-subnets --load-balancer-name my-lb \


--subnets subnet-8360a9e7

Para un grupo de Auto Scaling con un Classic Load Balancer en EC2-Classic

1. Especifique las zonas de disponibilidad que se utilizan para el grupo Auto Scaling mediante lo
siguienteupdate-auto-scaling-groupEl comando de.

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


--availability-zones us-west-2a us-west-2b

2. Verifique que las instancias de las nuevas zonas de disponibilidad están listas para aceptar tráfico del
balanceador de carga utilizando los siguientesdescribe-auto-scaling-groupsEl comando de.

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

3. Habilite la nueva zona de disponibilidad para su Classic Load Balancer a través deHability-zones-for-
load-balancerEl comando de.

aws elb enable-availability-zones-for-load-balancer --load-balancer-name my-lb \


--availability-zones us-west-2b

Para deshabilitar una zona de disponibilidad, ejecute lo siguienteDisable-availility-zones-for-load-


balancerEl comando de.

102
Auto Scaling de Amazon EC2 Guía del usuario
Lanzar instancias en una VPC

aws elb disable-availability-zones-for-load-balancer --load-balancer-name my-lb \


--availability-zones us-west-2c

Iniciar instancias de Auto Scaling en una VPC


Amazon Virtual Private Cloud (Amazon VPC) le permite definir un entorno de redes virtuales en una
sección privada y aislada del Nube de AWS . Puede controlar todos los aspectos del entorno de red virtual.

En una nube virtual privada (VPC), puede lanzarAWSrecursos como grupos de Auto Scaling. Un grupo
de Auto Scaling en una VPC funciona prácticamente de la misma forma que en Amazon EC2 y admite el
mismo conjunto de características.

Una subred de Amazon VPC es una subdivisión dentro de una zona de disponibilidad definida por un
segmento del intervalo de direcciones IP de la VPC. Mediante el uso de subredes, puede agrupar sus
instancias en función de sus necesidades operativas y de seguridad. Una subred reside en su totalidad
dentro de la zona de disponibilidad en la que se creó. Las instancias de Auto Scaling se lanzan dentro de
las subredes.

Para permitir la comunicación entre Internet y las instancias de las subredes, debe crear una gateway de
Internet y asociarla a la VPC. Una gateway de Internet permite que los recursos incluidos en las subredes
se conecten a Internet a través del límite de red de Amazon EC2. Si el tráfico de una subred se direcciona
a un puerto de enlace a Internet, la subred recibe el nombre de subred pública. Si el tráfico de una subred
no se dirige a una gateway de Internet, la subred recibe el nombre de subred privada. Utilice una subred
pública para los recursos que deben conectarse a Internet y una subred privada para los recursos que no
necesitan conectarse a Internet. Para obtener más información acerca de cómo conceder acceso a Internet
a instancias de una VPC, consulteAcceder a Interneten laAmazon VPC User Guide.

Contenido
• VPC predeterminada (p. 103)
• VPC no predeterminada (p. 104)
• Consideraciones a la hora de elegir subredes VPC (p. 104)
• Direcciones IP en una VPC (p. 104)
• Interfaces de red en una VPC (p. 104)
• Tenencia de ubicación de instancias (p. 105)
• Más recursos para aprender acerca de las VPC (p. 105)

VPC predeterminada
Si ha creado su Cuenta de AWS después del 4 de diciembre de 2013 o está creando su grupo
Auto Scaling en un nuevo Región de AWS Creamos una VPC predeterminada para usted. La VPC
predeterminada incluye una subred predeterminada en cada zona de disponibilidad. Si dispone de
una VPC predeterminada, su grupo de Auto Scaling se crea en la VPC predeterminada de forma
predeterminada.

Si ha creado su Cuenta de AWS Antes del 4 de diciembre de 2013, es posible que pueda elegir entre
Amazon VPC y EC2-Classic en determinadas regiones. Si tiene una de estas cuentas antiguas, es posible
que tenga grupos de Auto Scaling en EC2-Classic en algunas regiones de en lugar de Amazon VPC. Se
recomienda encarecidamente migrar las instancias clásicas a una VPC. Una de las ventajas de utilizar una
VPC es la capacidad de colocar sus instancias en subredes privadas sin ruta a Internet.

Para obtener información acerca de las VPC predeterminadas y cómo saber si su cuenta incluye una VPC
predeterminada, consulteVPC predeterminada y subredes predeterminadasen laAmazon VPC User Guide.

103
Auto Scaling de Amazon EC2 Guía del usuario
VPC no predeterminada

VPC no predeterminada
Puede optar por crear VPC adicionales yendo a la página de Amazon VPC en elAWS Management
Consoley seleccionandoAsistente de inicio de VPC.

Se presentan las cuatro opciones siguientes para arquitecturas de red:

• VPC una única subred pública


• Amazon VPC con subredes públicas y privadas
• Amazon VPC con subredes públicas y privadas y acceso de hardware VPN
• Amazon VPC solo con una subred privada y acceso VPN de hardware

Para obtener más información, consulte la Guía del usuario de Amazon VPC.

Consideraciones a la hora de elegir subredes VPC


Tenga en cuenta las siguientes consideraciones al elegir subredes VPC:

• Si va a adjuntar un equilibrador de carga de Elastic Load Balancing al grupo Auto Scaling, las instancias
se pueden iniciar en subredes públicas o privadas. Sin embargo, el equilibrador de carga sólo se puede
crear en subredes públicas.
• Si accede a las instancias de Auto Scaling directamente a través de SSH, las instancias solo se pueden
iniciar en subredes públicas.
• Si está accediendo a instancias de Auto Scaling sin entrada usandoAWS Systems
ManagerAdministrador de sesiones, las instancias se pueden iniciar en subredes públicas o privadas.
• Si utiliza subredes privadas, puede permitir que las instancias de Auto Scaling accedan a Internet
mediante una puerta de enlace NAT pública.
• De forma predeterminada, las subredes predeterminadas de una VPC predeterminada son subredes
públicas.

Direcciones IP en una VPC


Cuando lanza sus instancias de Auto Scaling en una VPC, las instancias reciben automáticamente una
dirección IP privada del intervalo de CIDR de la subred en la que se lanza la instancia. Esto permite que
las instancias se comuniquen con otras instancias en la VPC.

Puede configurar una plantilla de lanzamiento o una configuración de lanzamiento para asignar direcciones
IP públicas a sus instancias. La asignación de direcciones IP públicas a las instancias les permite
comunicarse con Internet o con otros Amazon Web Services.

Si habilita direcciones IP públicas para las instancias y las lanza en una subred configurada para asignar
automáticamente direcciones IPv6, las instancias reciben direcciones IPv4 e IPv6. De lo contrario, reciben
únicamente direcciones IPv4. Para obtener más información, consulteDirecciones IPv6en laGuía del
usuario de Amazon EC2 para instancias de Linux.

Para obtener información sobre cómo especificar intervalos de CIDR para su VPC o subred, consulte
laAmazon VPC User Guide.

Interfaces de red en una VPC


Cada instancia de su VPC tiene una interfaz de red predeterminada (interfaz de red principal). No se puede
desconectar una interfaz de red principal de una instancia. Puede crear y adjuntar una interfaz de red
adicional a cualquier instancia de su VPC. El número total de interfaces de red que puede adjuntar varía en
función del tipo de instancia.

104
Auto Scaling de Amazon EC2 Guía del usuario
Tenencia de ubicación de instancias

Al lanzar una instancia mediante una plantilla de lanzamiento, puede especificar interfaces de red
adicionales. Sin embargo, al iniciar una instancia de Auto Scaling con varias interfaces de red, cada
interfaz se crea automáticamente en la misma subred que la instancia. Esto se debe a que Amazon EC2
Auto Scaling pasa por alto las subredes definidas en la plantilla de lanzamiento en favor de lo que se
especifica en el grupo de Auto Scaling. Para obtener más información, consulte Creación de una plantilla
de lanzamiento para un grupo de Auto Scaling.

Si crea o conecta dos o varias interfaces de red de la misma subred a una instancia, pueden producirse
problemas de red, como el ruteo asimétrico, especialmente en instancias que utilicen una variante de
no Amazon Linux. Si necesita este tipo de configuración, debe configurar la interfaz de red secundaria
dentro del sistema operativo. Para ver un ejemplo, consulte .¿Cómo puedo hacer que mi interfaz de red
secundaria funcione en mi instancia de Ubuntu EC2?en laAWSCentro de Conocimiento.

Tenencia de ubicación de instancias


De forma predeterminada, todas las instancias de la VPC se ejecutan como instancias de tenencia
compartida. Amazon EC2 Auto Scaling también admite instancias dedicadas y hosts dedicados. Sin
embargo, la compatibilidad con Hosts Dedicados sólo está disponible para grupos de Auto Scaling que
utilizan una plantilla de inicio. Para obtener más información, consulte Configuración del arrendamiento de
instancias con una configuración de inicio (p. 52).

Más recursos para aprender acerca de las VPC


Utilice los siguientes temas para obtener más información sobre las VPC y las subredes.

• Subredes privadas en una VPC


• VPC con subredes privadas y públicas (NAT)
• Gateways NAT
• Subredes públicas en una VPC
• VPC con una única subred pública
• Información de VPC general
• Amazon VPC User Guide
• Interconexión con VPC
• Interfaces de red elásticas

Obtención de recomendaciones para un tipo de


instanciaAWS Compute Optimizer
AWSProporciona recomendaciones de instancias Amazon EC2 para ayudarle a mejorar el rendimiento,
ahorrar dinero o ambas cosas, utilizando funciones equipadas conAWS Compute Optimizer. Puede utilizar
estas recomendaciones para decidir si desea pasar a un nuevo tipo de instancia.

Para hacer recomendaciones, Compute Optimizer analiza las especificaciones de instancia existentes y el
historial de métricas recientes. A continuación, los datos recopilados se utilizan para recomendar qué tipos
de instancias Amazon EC2 se optimizan mejor para gestionar la carga de trabajo de rendimiento existente.
Las recomendaciones se devuelven junto con el precio de la instancia por hora.
Note

Para obtener recomendaciones de Compute Optimizer, primero debe darse de alta en Compute
Optimizer. Para obtener más información, consulteIntroducción alAWS Compute Optimizeren
laAWS Compute OptimizerGuía del usuario de.

105
Auto Scaling de Amazon EC2 Guía del usuario
Limitations

Contenido
• Limitations (p. 106)
• Findings (p. 106)
• Visualización de recomendaciones (p. 106)
• Consideraciones para evaluar las recomendaciones (p. 107)

Limitations
Compute Optimizer genera recomendaciones para las instancias de los grupos de Auto Scaling
configurados para lanzar y ejecutar los tipos de instancias M, C, R, T y X. Sin embargo, no genera
recomendaciones para tipos de instancia -g alimentados porAWSProcesadores Graviton2 (por ejemplo,
C6g) y para tipos de instancias -n que tienen un mayor rendimiento de ancho de banda de red (por
ejemplo, M5n).

Los grupos Auto Scaling también deben configurarse para ejecutar un único tipo de instancia (es decir, no
hay tipos de instancia mixtos), no deben tener una política de escalado asociada a ellos y tener los mismos
valores para la capacidad deseada, mínima y máxima (es decir, un grupo de Auto Scaling con un número
fijo de instancias). Compute Optimizer genera recomendaciones para instancias en grupos de Auto Scaling
que cumplenTodode estos requisitos de configuración.

Findings
Compute Optimizer clasifica sus conclusiones sobre los grupos de Auto Scaling de la siguiente manera:

• No optimizado para: se considera que un grupo de Auto Scaling no está optimizado cuando Compute
Optimizer ha identificado una recomendación que puede proporcionar un mejor rendimiento para su
carga de trabajo.
• Optimizado: un grupo de Auto Scaling se considera optimizado cuando Compute Optimizer determina
que el grupo está aprovisionado correctamente para ejecutar la carga de trabajo, según el tipo de
instancia elegido. Para recursos optimizados, Compute Optimizer puede recomendar a veces un tipo de
instancia de nueva generación.
• None (Ninguno)— No hay recomendaciones para este grupo de Auto Scaling. Esto puede ocurrir si
hace menos de 12 horas que se dio de alta en Compute Optimizer, cuando el grupo de Auto Scaling
lleva ejecutándose menos de 30 horas o cuando el grupo de Auto Scaling o el tipo de instancia
no es compatible con Compute Optimizer. Para obtener más información, consulte la sección
Limitations (p. 106).

Visualización de recomendaciones
Una vez que haya optado por Compute Optimizer, puede ver las conclusiones y recomendaciones que
genera para los grupos de Auto Scaling. Si ha optado recientemente, es posible que las recomendaciones
no estén disponibles durante un máximo de 12 horas.

Para ver las recomendaciones generadas para un grupo de Auto Scaling

1. Abra la consola de Compute Optimizer en https://console.aws.amazon.com/compute-optimizer/.

Se abrirá la página de Panel.


2. Elija View recommendations for all Auto Scaling groups (Ver recomendaciones para todos los grupos
de Auto Scaling).
3. Seleccione un grupo de Auto Scaling.
4. Elija View detail (Ver detalles).

106
Auto Scaling de Amazon EC2 Guía del usuario
Consideraciones para evaluar las recomendaciones

La vista cambia para mostrar hasta tres recomendaciones de instancia diferentes en una vista
preconfigurada, en función de la configuración predeterminada de la tabla. También proporciona datos
de métricas de CloudWatch recientes (utilización media de CPU, media de entrada en la red y media
de salida de la red) para el grupo de Auto Scaling.

Determine si desea utilizar alguna de las recomendaciones. Decida si desea optimizar para mejora del
rendimiento, para reducción de costos o para una combinación de ambos.

Para cambiar el tipo de instancia en el grupo de Auto Scaling, actualice la plantilla de lanzamiento o el
grupo de Auto Scaling para que utilicen una nueva configuración de lanzamiento. Las instancias existentes
siguen utilizando la configuración anterior. Para actualizar las instancias existentes, termínelas de forma
que se sustituyan por el grupo de Auto Scaling, o bien permita que el escalado automático reemplace
gradualmente las instancias más antiguas por instancias más recientes en función de suPolíticas de
terminación (p. 215).
Note

Con la duración máxima de la instancia y las características de actualización de instancias,


también puede reemplazar las instancias existentes del grupo de Auto Scaling para iniciar
nuevas instancias que utilicen la nueva plantilla de lanzamiento o configuración de lanzamiento.
Para obtener más información, consulte Reemplazo de instancias de Auto Scaling en función
de la duración máxima (p. 108) y Reemplazo de instancias de Auto Scaling basadas en una
actualización de instancia (p. 110).

Consideraciones para evaluar las recomendaciones


Antes de pasar a un nuevo tipo de instancia, tenga en cuenta lo siguiente:

• Las recomendaciones no prevén su uso. Las recomendaciones se basan en su uso histórico durante el
periodo de 14 días más reciente. Asegúrese de elegir un tipo de instancia que se espera que satisfaga
sus necesidades de uso futuras.
• Céntrese en las métricas gráficas para determinar si el uso real es inferior a la capacidad de la instancia.
También puede ver los datos de métricas (promedio, pico, percentil) en CloudWatch para evaluar más
detalladamente las recomendaciones de instancias EC2. Por ejemplo, observe cómo cambian las
métricas de porcentaje de CPU durante el día y si hay picos que deben acomodarse. Para obtener
más información, consulteVisualización de métricas disponiblesen laGuía del usuario de Amazon
CloudWatch.
• Compute Optimizer podría proporcionar recomendaciones para instancias de rendimiento ampliable,
que son las instancias T3, T3a y T2. Si amplía su capacidad periódicamente por encima del nivel de
referencia, asegúrese de que puede seguir haciéndolo ahora con las vCPU del nuevo tipo de instancia.
Para obtener más información, consulteCréditos de CPU y rendimiento de referencia para las instancias
de rendimiento ampliableen laGuía del usuario de Amazon EC2 para instancias de Linux.
• Si ha adquirido una instancia reservada, es posible que su instancia bajo demanda se facture como
instancia reservada. Antes de cambiar el tipo de instancia actual, evalúe primero el impacto en la
utilización y la cobertura de la Instancia reservada.
• Considere la posibilidad de cambiar a instancias de nueva generación, siempre que sea posible.
• Al migrar a una familia de instancias diferente, asegúrese de que el tipo de instancia actual y el nuevo
tipo de instancia sean compatibles, por ejemplo, en cuanto a virtualización, arquitectura o tipo de red.
Para obtener más información, consulte Compatibilidad para cambiar el tamaño de instancias en la Guía
del usuario de Amazon EC2 para instancias de Linux.
• Por último, considere la calificación de riesgo de rendimiento que se proporciona para cada
recomendación. El riesgo de rendimiento indica la cantidad de esfuerzo que puede necesitar invertir para
validar si el tipo de instancia recomendado cumple los requisitos de rendimiento de la carga de trabajo.
También es recomendable que realice pruebas de carga y rendimiento rigurosas antes y después de
realizar cualquier cambio.

107
Auto Scaling de Amazon EC2 Guía del usuario
Sustitución de instancias en función de la duración máxima

Recursos adicionales

Además de los temas de esta página, consulte los siguientes recursos:

• Tipos de instancias de Amazon EC2


• AWS Compute Optimizer Guía del usuario

Reemplazo de instancias de Auto Scaling en


función de la duración máxima
Cuando utiliza elAWS Management Consolepara actualizar un grupo de Auto Scaling, o cuando utilice
la herramientaAWS CLIO un SDK para crear o actualizar un grupo de Auto Scaling, puede establecer el
parámetro opcional de duración máxima de la instancia. La función de duración máxima de la instancia
se encarga de reemplazar las instancias que han estado en servicio durante el tiempo máximo permitido.
Por ejemplo, esta característica admite casos de uso de conformidad comunes, como la necesidad de
reemplazar las instancias según una programación debido a políticas de seguridad internas o controles
de conformidad externos. En este tema se describen los aspectos clave de esta característica y cómo
configurarla para el grupo de Auto Scaling.

La duración máxima de la instancia especifica la cantidad máxima de tiempo (en segundos) que una
instancia puede estar en servicio. La duración máxima se aplica tanto a las instancias actuales como a las
instancias futuras del grupo. Cuando una instancia se acerca a su duración máxima, se termina y sustituye,
y no se puede volver a utilizar.

Al configurar la duración máxima de la instancia para el grupo de Auto Scaling, debe especificar un valor
de al menos 86.400 segundos (1 día). Para borrar un valor establecido anteriormente, especifique un valor
nuevo de 0.

Tenga en cuenta que no está garantizada la sustitución de las instancias al final de su duración máxima.
En algunos casos, es posible que Amazon EC2 Auto Scaling tenga que comenzar a reemplazar las
instancias inmediatamente después de configurar el parámetro de duración máxima de la instancia. La
intención de este comportamiento más agresivo es evitar que se reemplacen todas las instancias al mismo
tiempo.

En función de la duración máxima especificada y del tamaño del grupo de Auto Scaling, la velocidad de
sustitución puede variar. En general, Amazon EC2 Auto Scaling reemplaza las instancias de una en una,
con una pausa entre reemplazos. Sin embargo, la velocidad de sustitución será mayor cuando no haya
tiempo suficiente para reemplazar cada instancia individualmente de acuerdo con la duración máxima
especificada. En este caso, Amazon EC2 Auto Scaling reemplazará varias instancias a la vez, hasta un 10
por ciento de la capacidad actual de su grupo de Auto Scaling.

Para administrar la velocidad de sustitución, puede hacer lo siguiente:

• Establezca el límite máximo de duración de la instancia en un periodo de tiempo más largo para espaciar
los reemplazos. Esto es útil para los grupos que tienen un gran número de instancias que reemplazar.
• Agregue tiempo adicional entre determinados reemplazos mediante la protección de instancias para
evitar que se reemplacen temporalmente instancias individuales del grupo de Auto Scaling. Cuando esté
listo para reemplazar estas instancias, elimine la protección de cada instancia individual. Para obtener
más información, consulte Usar la protección de escalado ascendente de instancias (p. 225).

Para configurar la duración máxima de la instancia (consola)

Cree el grupo de Auto Scaling de la manera habitual. Después de crear el grupo de Auto Scaling, edítelo
para especificar la duración máxima de la instancia.

108
Auto Scaling de Amazon EC2 Guía del usuario
Sustitución de instancias en función de la duración máxima

Para configurar la duración máxima de la instancia (AWS CLI)

Al especificar la duración máxima de las instancias mediante laAWS CLIPuede aplicar este límite a un
grupo de Auto Scaling existente. También puede aplicar este límite a un nuevo grupo de Auto Scaling
cuando lo cree.

Para los nuevos grupos de Auto Scaling, utilice la herramientacreate-auto-scaling-groupcomando.

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

A continuación, se incluye un archivo de ejemplo config.json que muestra una duración máxima de
instancia de 2592000 segundos (30 días).

{
"AutoScalingGroupName": "my-asg",
"LaunchTemplate": {
"LaunchTemplateName": "my-launch-template",
"Version": "$Latest"
},
"MinSize": 1,
"MaxSize": 5,
"MaxInstanceLifetime": 2592000,
"VPCZoneIdentifier": "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782",
"Tags": []
}

Para los grupos de Auto Scaling existentes, utilice la herramientaupdate-auto-scaling-groupcomando.

aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-existing-asg --max-


instance-lifetime 2592000

Para comprobar la duración máxima de las instancias de un grupo de Auto Scaling

Usardescribe-auto-scaling-groupscomando.

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

A continuación se muestra un ejemplo de respuesta.

{
"AutoScalingGroups": [
{
"AutoScalingGroupName": "my-asg",
"AutoScalingGroupARN": "arn",
"LaunchTemplate": {
"LaunchTemplateId": "lt-0b97f1e282EXAMPLE",
"LaunchTemplateName": "my-launch-template",
"Version": "$Latest"
},
"MinSize": 1,
"MaxSize": 5,
"DesiredCapacity": 1,
"DefaultCooldown": 300,
"AvailabilityZones": [
"us-west-2a",
"us-west-2b",
"us-west-2c"
],

109
Auto Scaling de Amazon EC2 Guía del usuario
Sustitución de instancias basadas
en una actualización de instancia

"LoadBalancerNames": [],
"TargetGroupARNs": [],
"HealthCheckType": "EC2",
"HealthCheckGracePeriod": 0,
"Instances": [
{
"InstanceId": "i-04d180b9d5fc578fc",
"InstanceType": "t2.small",
"AvailabilityZone": "us-west-2b",
"LifecycleState": "Pending",
"HealthStatus": "Healthy",
"LaunchTemplate": {
"LaunchTemplateId": "lt-0b97f1e282EXAMPLE",
"LaunchTemplateName": "my-launch-template",
"Version": "7"
},
"ProtectedFromScaleIn": false
}
],
"CreatedTime": "2019-11-14T22:56:15.487Z",
"SuspendedProcesses": [],
"VPCZoneIdentifier": "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782",
"EnabledMetrics": [],
"Tags": [],
"TerminationPolicies": [
"Default"
],
"NewInstancesProtectedFromScaleIn": false,
"ServiceLinkedRoleARN": "arn",
"MaxInstanceLifetime": 2592000
}
]
}

Reemplazo de instancias de Auto Scaling basadas


en una actualización de instancia
Cuando un cambio de configuración requiere reemplazar instancias y dispone de un gran número
de instancias en el grupo de Auto Scaling, puede ser difícil reemplazar algunas instancias a la vez
manualmente. Con una actualización de instancias, es más fácil actualizar las instancias del grupo de Auto
Scaling.

Durante una actualización de instancias, Amazon EC2 Auto Scaling deja un conjunto de instancias fuera
de servicio, las termina y, a continuación, lanza un conjunto de instancias con la nueva configuración.
Después de eso, las instancias se reemplazan de forma sucesiva. En una actualización continua,
cuando se lanza una nueva instancia, Amazon EC2 Auto Scaling espera hasta que la instancia pasa una
comprobación de estado y finaliza la preparación antes de pasar a reemplazar otra instancia. Este proceso
se repite hasta que se terminan y sustituyen todas las instancias.

Esta característica resulta útil, por ejemplo, cuando tiene una nueva plantilla de lanzamiento o
configuración de lanzamiento que especifica una nueva AMI o nuevos datos de usuario. Solo necesita
actualizar el grupo de Auto Scaling para especificar la nueva plantilla de lanzamiento o la configuración
de lanzamiento. A continuación, inicie una actualización de instancia para comenzar inmediatamente el
proceso de sustitución de instancias en el grupo de.

Las actualizaciones de instancias dependen de las comprobaciones de estado para determinar si la


aplicación está lo suficientemente en buen estado como para considerar que el reemplazo se realiza
correctamente. Para obtener información acerca de las distintas comprobaciones de estado que se utilizan

110
Auto Scaling de Amazon EC2 Guía del usuario
Iniciar o cancelar una actualización de instancias(consola)

para determinar el estado de una instancia, consulteComprobaciones de Health para instancias de Auto
Scaling (p. 239).

Antes de iniciar una actualización de instancias, puede configurar el porcentaje mínimo en buen estado
para controlar el nivel de interrupción de la aplicación. Si la aplicación no supera las comprobaciones de
estado, el proceso de actualización continua espera un período de hasta 60 minutos después de que
alcance el umbral mínimo en buen estado antes de que se produzca un error. La intención es darle tiempo
para recuperarse en caso de un problema temporal. Si se produce un error en el proceso de actualización
continua, las instancias que ya se han reemplazado no se revierten a su configuración anterior. Para
corregir una actualización de instancia fallida, primero resuelva el problema subyacente que causó un error
en la actualización y, a continuación, inicie otra actualización de instancia.

Después de determinar que una instancia recién lanzada está en buen estado, Amazon EC2 Auto Scaling
no pasa inmediatamente al siguiente reemplazo. Proporciona una ventana para que cada instancia se
prepare después del lanzamiento, que se puede configurar. Esto puede ser útil cuando tiene scripts de
configuración que tardan tiempo en ejecutarse. Para proteger la disponibilidad de la aplicación, asegúrese
de que el período de preparación de la instancia cubra el tiempo de inicio esperado de la aplicación, desde
cuando una nueva instancia entra en servicio hasta cuando puede recibir tráfico.

A continuación se indican los aspectos que deben tenerse en cuenta al comenzar una actualización de
instancias, a fin de garantizar que el grupo siga funcionando del modo previsto.

• Durante la preparación, una instancia recién lanzada no se cuenta para las métricas agregadas del
grupo Auto Scaling.
• Si ha agregado políticas de escalado al grupo de Auto Scaling, las actividades de escalado se ejecutan
en paralelo. Si establece un intervalo largo para el período de preparación de la actualización de
instancias, las instancias recién iniciadas tardarán más tiempo en reflejarse en las métricas. Por lo tanto,
un período de preparación adecuado ayuda a evitar que Amazon EC2 Auto Scaling se escale en datos
métricos obsoletos.
• Si ha agregado un enlace de ciclo de vida al grupo de Auto Scaling, el período de calentamiento no
comienza hasta que se completan las acciones del enlace de ciclo de vida y la instancia entra en el
campoInServiceEstado.

Puede iniciar o cancelar una actualización de instancia mediante laAWS Management Console, elAWS
CLI, o un SDK.

Iniciar o cancelar una actualización de


instancias(consola)
Antes de empezar, asegúrese de que el grupo de Auto Scaling ya esté asociado a una nueva plantilla de
lanzamiento o configuración de lanzamiento.

Para iniciar una actualización de instancias

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto a su grupo de Auto Scaling.

Se abre un panel dividido en la parte inferior delGrupos de Auto Scaling(Se ha creado el certificado).
3. En la pestaña Instance refresh (Actualización de instancias) en Instance refreshes (Actualizaciones de
instancias), elija Start instance refresh (Iniciar actualización de instancias).
4. En el cuadro de diálogo Start instance refresh (Iniciar actualización de instancia) haga lo siguiente:

• (Opcional) En Minimum healthy percentage (Porcentaje mínimo de buen estado), mantenga


el valor predeterminado, 90, o especifique un nuevo valor entre 0 y 100 por ciento. Esta es la
cantidad de capacidad del grupo de Auto Scaling que debe permanecer en buen estado durante una

111
Auto Scaling de Amazon EC2 Guía del usuario
Inicie o cancele una actualización de instancias (AWS CLI)

actualización de instancias para permitir que la operación continúe, expresada como un porcentaje
de la capacidad deseada del grupo. Aumentar esta configuración al 100 por ciento limita la tasa
de reemplazo a una instancia al mismo tiempo. Por el contrario, reducir esta configuración a 0 por
ciento tiene como efecto el reemplazo de todas las instancias al mismo tiempo.
• (Opcional) En Preparación de la instancia, el valor predeterminado es el valor especificado para el
período de gracia de comprobación de estado del grupo. Puede cambiar el valor para asegurarse
de que refleja el tiempo real de inicio de la aplicación. El valor predeterminado puede no reflejar
actualizaciones muy recientes en la versión más reciente de la aplicación.
5. Elija Inicio.

Para comprobar el estado de una actualización de instancias

1. En la pestaña Instance refresh (Actualización de instancias), en Instance refreshes (Actualizaciones


de instancias), puede determinar el estado de su solicitud mirando la columna Status (Estado). La
operación entra en estado Pending mientras se está inicializando. A continuación, el estado debería
cambiar rápidamente a InProgress. Cuando se actualizan todas las instancias, el estado cambia a
Successful.
2. En la pestaña Activity (Actividad) en Activity history (Historial de actividades), cuando se lanza la
actualización de instancias, verá entradas cuando se terminan las instancias y otro conjunto de
entradas cuando se lanzan las instancias. En la columna Description (Descripción) puede encontrar el
ID de instancia.
3. En la pestaña Instance management (Administración de instancias), en Instances (Instancias), puede
comprobar que las instancias se hayan iniciado correctamente. Inicialmente, las instancias están
en estado Pending. Cuando una instancia está lista para recibir tráfico, su estado es InService.
La columna Health status (Estado) muestra el resultado de las comprobaciones de estado de las
instancias.

Para cancelar una actualización de instancias

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto al grupo de Auto Scaling.
3. En la pestaña Instance refresh (Actualización de instancias) en Instance refreshes (Actualizaciones de
instancias), seleccione Cancel instance refresh (Cancelar actualización de instancias).
4. Cuando deba confirmar la selección, haga clic en Confirm (Confirmar).

Inicie o cancele una actualización de instancias (AWS


CLI)
Para iniciar una actualización de instancias

Para comenzar una actualización de instancias desde la AWS CLI, utilice el comando start-instance-
refresh. Puede especificar las preferencias que desee cambiar en un archivo de configuración JSON.
Cuando haga referencia al archivo de configuración, proporcione la ruta y el nombre del archivo como se
muestra en el ejemplo siguiente.

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

Contenido de config.json.

{
"AutoScalingGroupName": "my-asg",

112
Auto Scaling de Amazon EC2 Guía del usuario
Inicie o cancele una actualización de instancias (AWS CLI)

"Preferences": {
"InstanceWarmup": 400,
"MinHealthyPercentage": 50
}
}

Como alternativa, puede comenzar la actualización de instancias sin las preferencias opcionales si ejecuta
el siguiente comando. Si no se proporcionan preferencias, los valores predeterminados se utilizan para
InstanceWarmup y MinHealthyPercentage.

aws autoscaling start-instance-refresh --auto-scaling-group-name my-asg

Resultado de ejemplo.

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

Para comprobar el estado de una actualización de instancias

Para ver las actualizaciones de instancias de un grupo de Auto Scaling, utilice las siguientesdescribe-
instance-refreshescomando.

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

Resultado de ejemplo.

{
"InstanceRefreshes": [
{
"InstanceRefreshId": "08b91cf7-8fa6-48af-b6a6-d227f40f1b9b",
"AutoScalingGroupName": "my-asg",
"Status": "InProgress",
"StartTime": "2020-06-02T18:11:27Z",
"PercentageComplete": 0,
"InstancesToUpdate": 5
},
{
"InstanceRefreshId": "dd7728d0-5bc4-4575-96a3-1b2c52bf8bb1",
"AutoScalingGroupName": "my-asg",
"Status": "Successful",
"StartTime": "2020-06-02T16:43:19Z",
"EndTime": "2020-06-02T16:53:37Z",
"PercentageComplete": 100,
"InstancesToUpdate": 0
}
]
}

Para cancelar una actualización de instancias

Cuando cancela una actualización de instancia mediantecancel-instance-refreshEl comando desde elAWS


CLIEn, especifique el nombre del grupo de Auto Scaling como se muestra en el ejemplo siguiente.

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

Resultado de ejemplo.

113
Auto Scaling de Amazon EC2 Guía del usuario
Limitations

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

Limitations
• Instancias terminadas antes del lanzamiento: Cuando sólo hay una instancia en el grupo Auto Scaling,
iniciar una actualización de instancia puede provocar una interrupción porque Amazon EC2 Auto Scaling
finaliza una instancia y, a continuación, inicia una nueva instancia.
• Duración total: El período máximo de tiempo que una actualización de instancias puede continuar
reemplazando activamente las instancias es de 14 días.
• Las instancias no reemplazadas: Si una instancia está en espera o protegida de la escala en, no se
puede reemplazar. Si Amazon EC2 Auto Scaling encuentra una instancia que no puede sustituir,
continuará reemplazando otras instancias.
• Tiempo de espera de una hora: Cuando una instancia de actualización no puede continuar realizando
reemplazos porque hay instancias en espera o protegidas contra la escalado, sigue intentándolo durante
una hora y proporciona un mensaje de estado para ayudarle a resolver el problema. Si el problema
persiste después de una hora, la operación produce un error.
• Sin restauración: Puede cancelar una actualización de instancia en cualquier momento, pero las
instancias que ya se hayan reemplazado no vuelven a su configuración anterior.

Adición de puntos de control a una actualización de


instancia
Al utilizar una actualización de instancia, tiene la opción de reemplazar todo el grupo Auto Scaling en una
operación continua. Sin embargo, es posible que prefiera reemplazar el grupo por fases, de modo que
pueda realizar verificaciones en las instancias a medida que avanza. Para realizar un reemplazo por fases,
agregue puntos de control, que son puntos en el tiempo en los que la actualización de instancia se detiene.
El uso de puntos de control le proporciona un mayor control sobre cómo decide actualizar su grupo Auto
Scaling y le ayuda a garantizar que su aplicación funcione de manera fiable y predecible.

Para habilitar los puntos de comprobación para una actualización de instancia, agregue las siguientes
preferencias de actualización al archivo de configuración que define los parámetros de actualización de
instancia cuando utilice la herramientaAWS CLI:

• CheckpointPercentages: especifica valores de umbral para el porcentaje de instancias que se van


a reemplazar. Estos valores de umbral proporcionan los puntos de control. Cuando el porcentaje de
instancias que se reemplazan y se calientan alcanza uno de los umbrales especificados, la operación
espera un período de tiempo especificado. Se especifica el número de segundos que se debe esperar
enCheckpointDelay. Una vez transcurrido el período de tiempo especificado, la actualización de la
instancia continúa hasta que llega al siguiente punto de control (si corresponde).
• CheckpointDelay: La cantidad de tiempo, en segundos, que debe esperar después de alcanzar un
punto de control antes de continuar. Elija un período de tiempo que le permita tiempo suficiente para
realizar sus validaciones.

El porcentaje del grupo Auto Scaling que debe reemplazarse correctamente se indica con el último valor
que se muestra en el cuadroCheckpointPercentagesmatriz. La operación no pasa aSuccessfulhasta
que este porcentaje del grupo se reemplace correctamente, y cada instancia se calienta y esté lista para
empezar a servir de nuevo el tráfico.

Amazon EC2 Auto Scaling emite eventos para cada punto de control. Si agrega una regla de EventBridge
para enviar los eventos a un destino como Amazon SNS, puede recibir una notificación cuando puede

114
Auto Scaling de Amazon EC2 Guía del usuario
Añadir puntos de control

ejecutar las validaciones necesarias. Para obtener más información, consulte Creación de reglas de
EventBridge por ejemplo eventos de actualización (p. 270).

Establecer preferencias de punto de control de actualización de


instancias(consola)
Puede configurar puntos de control en las preferencias de una actualización de instancia.

Para iniciar una actualización de instancia que utilice puntos de control

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto a su grupo de Auto Scaling.

Se abre un panel dividido en la parte inferior delGrupos de Auto Scaling(Se ha creado el certificado).
3. En la pestaña Instance refresh (Actualización de instancias) en Instance refreshes (Actualizaciones de
instancias), elija Start instance refresh (Iniciar actualización de instancias).
4. En el navegadorActualización de instancias de inicio(Cuadro de diálogo), especifique los valores
aplicables paraPorcentaje mínimo de saludyRecuperación de instancias.
5. Seleccione laHabilitar actualización de instancias con puntos de control.

Esto muestra un cuadro en el que puede definir el umbral porcentual para el primer punto de control.
6. Para establecer un porcentaje para el primer punto de control, introduzca un número del 1 al 100 en el
campo numérico enProceda hasta que se actualice el ____% del grupo.
7. Para agregar otro punto de control, seleccioneAñadir punto de controly, a continuación, defina el
porcentaje para el siguiente punto de control.
8. Para especificar cuánto tiempo espera Amazon EC2 Auto Scaling una vez alcanzado un punto de
control, actualice los campos deEsperar a1 hourentre puntos de control. La unidad de tiempo puede
ser de horas, minutos o segundos.
9. Elija Inicio.

Establecer las preferencias de punto de control de actualización


de instancias (AWS CLI)
Para crear varios puntos de control

Para crear varios puntos de comprobación, utilice el siguiente ejemplo destart-instance-refreshcomando.


En este ejemplo se configura una actualización de instancia que actualiza el 1 por ciento del grupo Auto
Scaling inicialmente, espera 10 minutos y, a continuación, actualiza el 19 por ciento siguiente, espera 10
minutos y, a continuación, actualiza el resto del grupo antes de realizar la operación.

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

Contenido de config.json.

{
"AutoScalingGroupName": "my-asg",
"Preferences": {
"InstanceWarmup": 400,
"MinHealthyPercentage": 80,
"CheckpointPercentages": [1,20,100],
"CheckpointDelay": 600
}

115
Auto Scaling de Amazon EC2 Guía del usuario
Añadir puntos de control

Para crear un único punto de control

Para crear un único punto de control, utilice el siguiente ejemplostart-instance-refreshcomando. En este


ejemplo se configura una actualización de instancia que actualiza inicialmente el 20% del grupo Auto
Scaling, espera 10 minutos y, a continuación, actualiza el resto del grupo antes de finalizar la operación.

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

Contenido de config.json.

{
"AutoScalingGroupName": "my-asg",
"Preferences": {
"InstanceWarmup": 400,
"MinHealthyPercentage": 80,
"CheckpointPercentages": [20,100],
"CheckpointDelay": 600
}
}

Para actualizar sólo parcialmente el grupo de Auto Scaling

Para reemplazar una parte del grupo Auto Scaling y, a continuación, detenerse por completo, utilice
el siguiente ejemplostart-instance-refreshcomando. En este ejemplo se configura una actualización
de instancia que actualiza el 1 por ciento del grupo Auto Scaling inicialmente, espera 10 minutos y, a
continuación, actualiza el 19 por ciento siguiente antes de finalizar la operación.

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

Contenido de config.json.

{
"AutoScalingGroupName": "my-asg",
"Preferences": {
"InstanceWarmup": 400,
"MinHealthyPercentage": 80,
"CheckpointPercentages": [1,20],
"CheckpointDelay": 600
}
}

Puntos clave sobre los puntos de control


Los siguientes son puntos clave a tener en cuenta sobre el uso de puntos de control:

• Se alcanza un punto de control cuando el número de instancias reemplazadas alcanza el umbral


porcentual definido para el punto de control. El porcentaje de instancias reemplazadas podría ser igual o
superior, pero no inferior, al umbral porcentual.
• Una vez alcanzado un punto de control, el porcentaje total completado no muestra inmediatamente el
estado más reciente hasta que las instancias terminen de calentarse.

Por ejemplo, suponga que su grupo Auto Scaling tiene 10 instancias y realiza los siguientes reemplazos.
Los porcentajes de sus puntos de control son[20,50]con un retraso en el puesto de control de 15
minutos y un porcentaje mínimo de salud del 80%.

116
Auto Scaling de Amazon EC2 Guía del usuario
Fusión de grupos de Auto Scaling

• 0:00: Se reemplazan 2 instancias antiguas.


• 0:10:2 nuevas instancias terminan de calentarse.
• 0:25: Se reemplazan 2 instancias antiguas. Solo se reemplazan dos instancias para mantener el
porcentaje mínimo de salud.
• 0:35:2 nuevas instancias terminan de calentarse.
• 0:35:1 instancia antigua es reemplazada.
• 0:45:1 nueva instancia termina de calentarse.

A las 0:35, la operación dejará de lanzar nuevas instancias aunque el porcentaje completado aún no
refleje con precisión el número de reemplazos completados al 50% hasta 10 minutos después, cuando la
nueva instancia complete su período de calentamiento.
• Dado que los puntos de control se basan en porcentajes, el número de instancias que se van a
reemplazar para llegar a un punto de control cambia con el tamaño del grupo. Esto significa que cuando
se produce una actividad de escalado horizontal y aumenta el tamaño del grupo, una operación en
curso podría volver a llegar a un punto de control. Si esto sucede, Amazon EC2 Auto Scaling envía otra
notificación y repite el tiempo de espera entre los puntos de control antes de continuar.
• Es posible saltarse un puesto de control bajo ciertas circunstancias. Por ejemplo, supongamos que su
grupo Auto Scaling tiene 2 instancias y los porcentajes de puntos de control son[10,40,100]. Una vez
reemplazada la primera instancia, Amazon EC2 Auto Scaling calcula que se ha reemplazado el 50% del
grupo. Debido a que el 50% es mayor que los dos primeros puntos de control, se omite el primer punto
de control (10) y envía una notificación para el segundo punto de control (40).
• La cancelación de la operación impide que se realicen nuevos reemplazos. Si cancela la operación o
produce un error antes de llegar al último punto de control, las instancias que ya se han reemplazado no
se revierten a su configuración anterior.
• En el caso de una actualización parcial, al volver a ejecutar la operación, Amazon EC2 Auto Scaling
no se reinicia desde el punto del último punto de control y se detiene cuando solo se reemplazan las
instancias antiguas. Sin embargo, se dirigirá primero a instancias antiguas para su reemplazo antes de
dirigirse a nuevas instancias.

Combine los grupos de Auto Scaling en un solo


grupo multizona
Para combinar distintos grupos de de Auto Scaling de una sola zona en un único grupo de que abarque
varias zonas de disponibilidad, convierta uno de los grupos de una sola zona en un grupo multizona. A
continuación, elimine el resto de los grupos. Esto funciona para grupos con o sin un balanceador de carga,
siempre que el nuevo grupo multizona esté en una de las mismas zonas de disponibilidad que los grupos
de una sola zona originales.

En los siguientes ejemplos se presupone que tiene dos grupos idénticos en dos zonas de disponibilidad
diferentes: us-west-2a y us-west-2c. Estos dos grupos comparten las siguientes especificaciones:

• Tamaño mínimo = 2
• Tamaño máximo = 5
• Capacidad deseada = 3

Zonas de fusión (AWS CLI)


Utilice el siguiente procedimiento para combinar my-group-a y my-group-c en un solo grupo que
abarque us-west-2a y us-west-2c.

117
Auto Scaling de Amazon EC2 Guía del usuario
Zonas de fusión (AWS CLI)

Para combinar distintos grupos de una sola zona en un solo grupo multizona

1. Utilice el siguienteupdate-auto-scaling-grouppara agregar el comandous-west-2cZona de


disponibilidad a las zonas de disponibilidad admitidas demy-group-a. Aumente el tamaño máximo de
este grupo para permitir las instancias de los dos grupos de una sola zona.

aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-group-a \


--availability-zones "us-west-2a" "us-west-2c" \
–-max-size 10 –-min-size 4

2. Utilice el siguienteConfigurar la capacidad deseadaPara aumentar el tamaño demy-group-a.

aws autoscaling set-desired-capacity --auto-scaling-group-name my-group-a \


--desired-capacity 6

3. (Opcional) Utilice la siguientedescribe-auto-scaling-groupspara verificar quemy-group-aestá en su


nuevo tamaño.

aws autoscaling describe-auto-scaling-groups --auto-scaling-group-name my-group-a

4. Utilice el siguienteupdate-auto-scaling-groupPara eliminar las instancias demy-group-c.

aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-group-c \


--min-size 0 --max-size 0

5. (Opcional) Utilice la siguientedescribe-auto-scaling-groupsPara verificar que no queden instancias


enmy-group-c.

aws autoscaling describe-auto-scaling-groups --auto-scaling-group-name my-group-c

A continuación, se muestra un ejemplo del resultado.

{
"AutoScalingGroups": [
{
"AutoScalingGroupARN": "arn",
"HealthCheckGracePeriod": 300,
"SuspendedProcesses": [],
"DesiredCapacity": 0,
"Tags": [],
"EnabledMetrics": [],
"LoadBalancerNames": [],
"AutoScalingGroupName": "my-group-c",
"DefaultCooldown": 300,
"MinSize": 0,
"Instances": [],
"MaxSize": 0,
"VPCZoneIdentifier": "null",
"TerminationPolicies": [
"Default"
],
"LaunchConfigurationName": "my-launch-config",
"CreatedTime": "2015-02-26T18:24:14.449Z",
"AvailabilityZones": [
"us-west-2c"
],
"HealthCheckType": "EC2"
}
]
}

118
Auto Scaling de Amazon EC2 Guía del usuario
Eliminación de la infraestructura de Auto Scaling

6. Usardelete-auto-scaling-groupPara eliminarmy-group-c.

aws autoscaling delete-auto-scaling-group --auto-scaling-group-name my-group-c

Eliminación de la infraestructura de Auto Scaling


Para eliminar completamente su infraestructura de escalado, realice las siguientes tareas.

Tareas
• Eliminar un grupo de Auto Scaling (p. 119)
• (Opcional) Eliminar la configuración de lanzamiento (p. 119)
• (Opcional) Eliminar la plantilla de lanzamiento (p. 120)
• (Opcional) Eliminar el balanceador de carga y grupos de destino (p. 120)
• (Opcional) Eliminar alarmas de CloudWatch (p. 121)

Eliminar un grupo de Auto Scaling


Cuando elimina un grupo de Auto Scaling, su valores máximo, mínimo y deseado se establecen en 0.
Como resultado, se terminan las instancias. La eliminación de una instancia también elimina todos los
logs o datos asociados y los volúmenes de la instancia. Si no desea terminar una o varias instancias,
puede desasociarlas antes de eliminar el grupo de Auto Scaling. Si el grupo tiene políticas de escalado, al
eliminar el grupo se eliminarán las políticas, las acciones de alarma subyacentes y cualquier alarma que ya
no tenga una acción asociada.

Para eliminar un grupo de Auto Scaling(consola)

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto a su grupo de Auto Scaling y elijaEliminar.
3. Cuando se le pida confirmación, elija Delete (Eliminar).

Un icono de carga en elNombreLa columna indica que el grupo de Auto Scaling se ha eliminado.
LaDeseado,Mín (Mínimo), yMax (Máximo)Las columnas muestran0Para el grupo de Auto Scaling. Se
tarda unos minutos en terminar la instancia y eliminar el grupo. Actualice la lista para ver el estado
actual.

Para eliminar un grupo de Auto Scaling (AWS CLI)

Utilice el siguientedelete-auto-scaling-groupPara eliminar el grupo de Auto Scaling.

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

Si el grupo tiene instancias o actividades de escalado en curso, utilice ladelete-auto-scaling-groupcon el


comando--force-deleteopción. Esto también terminará las instancias de Amazon EC2.

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

(Opcional) Eliminar la configuración de lanzamiento


Puede omitir este paso si desea mantener la configuración de lanzamiento para usarla en el futuro.

119
Auto Scaling de Amazon EC2 Guía del usuario
(Opcional) Eliminar la plantilla de lanzamiento

Para eliminar la configuración de lanzamiento(consola)

1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.


2. En el panel de navegación, en AUTO SCALING, elija Launch Configurations (Configuraciones de
lanzamiento).
3. En la páginaConfiguraciones de lanzamientoElija su configuración de lanzamiento y
elijaActions,Eliminar la configuración de lanzamiento.
4. Cuando se le indique que confirme, seleccione Yes, Delete.

Para eliminar la configuración de lanzamiento (AWS CLI)

Utilice el siguientedelete-launch-configurationcomando.

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

(Opcional) Eliminar la plantilla de lanzamiento


Puede eliminar su plantilla de lanzamiento o simplemente una versión de su plantilla de lanzamiento. Al
eliminar una plantilla de lanzamiento, todas sus versiones se eliminan.

Puede omitir este paso si desea mantener la plantilla de lanzamiento para usarla en el futuro.

Para eliminar la plantilla de lanzamiento (consola)

1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.


2. En el panel de navegación, en INSTANCES (Instancias), elija Launch Templates (Plantillas de
lanzamiento).
3. Seleccione su plantilla de lanzamiento y, a continuación, realice una de las siguientes operaciones:

• Elija Actions, Delete template. Cuando se le pida confirmación, elija Delete launch template.
• Elija Actions (Acciones), Delete template version (Eliminar plantilla de lanzamiento). Seleccione la
versión que desea eliminar y elija Delete launch template version (Eliminar versión de plantilla de
lanzamiento).

Para eliminar la plantilla de lanzamiento (AWS CLI)

Utilice el siguientedelete-launch-templatePara eliminar la plantilla y todas sus versiones.

aws ec2 delete-launch-template --launch-template-id lt-068f72b72934aff71

También puede utilizar ladelete-launch-template-versionsPara eliminar una versión específica de una


plantilla de lanzamiento.

aws ec2 delete-launch-template-versions --launch-template-id lt-068f72b72934aff71 --


versions 1

(Opcional) Eliminar el balanceador de carga y grupos


de destino
Omita este paso si el grupo de Auto Scaling no está asociado a un balanceador de carga de Elastic Load
Balancing o si desea conservar el balanceador de carga para usarlo en el futuro.

120
Auto Scaling de Amazon EC2 Guía del usuario
(Opcional) Eliminar alarmas de CloudWatch

Para eliminar el balanceador de carga (consola)

1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.


2. En el panel de navegación, en LOAD BALANCING (EQUILIBRIO DE CARGA), elija Load Balancers
(Balanceadores de carga).
3. Seleccione el balanceador de carga y elija Actions (Acciones), Delete (Eliminar).
4. Cuando se le indique que confirme, seleccione Yes, Delete.

Para eliminar el grupo de destino (consola)

1. En el panel de navegación, en LOAD BALANCING (BALANCEO DE CARGA), elija Target Groups


(Grupos de destino).
2. Elija el grupo de destino y elija Actions (Acciones), Delete (Eliminar).
3. Cuando se le pida confirmación, elija Yes (Sí).

Para eliminar el balanceador de carga asociado al grupo de Auto Scaling (AWS CLI)

En los balanceadores de carga de aplicaciones y balanceadores de carga de red, utilice los siguientes
pasos:delete-load-balancerydelete-target-groupcommands.

aws elbv2 delete-load-balancer --load-balancer-arn my-load-balancer-arn


aws elbv2 delete-target-group --target-group-arn my-target-group-arn

En Classic Load Balancers (Balancers clásicos), utilice lasdelete-load-balancercomando.

aws elb delete-load-balancer --load-balancer-name my-load-balancer

(Opcional) Eliminar alarmas de CloudWatch


Para eliminar las alarmas de CloudWatch asociadas con el grupo de Auto Scaling, siga los pasos que se
describen a continuación.

Puede omitir este paso si su grupo de Auto Scaling no está asociado a ninguna alarma de CloudWatch o si
desea conservar las alarmas para usarlas en el futuro.
Note

Eliminar un grupo de Auto Scaling elimina automáticamente las alarmas de CloudWatch que
Amazon EC2 Auto Scaling administra para las políticas de escalado de seguimiento de destino.

Para eliminar las alarmas de CloudWatch (consola)

1. Abra la consola de CloudWatch en https://console.aws.amazon.com/cloudwatch/.


2. En el panel de navegación, elija Alarms.
3. Elija las alarmas y elija Action (Acción), Delete (Eliminar).
4. Cuando se le pida confirmación, elija Delete (Eliminar).

Para eliminar las alarmas de CloudWatch (AWS CLI)

Utilice el comando delete-alarms. Puede eliminar una o más alarmas a la vez. Por ejemplo, utilice el
siguiente comando para eliminar las alarmas Step-Scaling-AlarmHigh-AddCapacity y Step-
Scaling-AlarmLow-RemoveCapacity.

121
Auto Scaling de Amazon EC2 Guía del usuario
(Opcional) Eliminar alarmas de CloudWatch

aws cloudwatch delete-alarms --alarm-name Step-Scaling-AlarmHigh-AddCapacity Step-Scaling-


AlarmLow-RemoveCapacity

122
Auto Scaling de Amazon EC2 Guía del usuario
Opciones de escalado

Escale el tamaño del grupo de Auto


Scaling
Escalado es la posibilidad de aumentar o disminuir la capacidad de cómputo de su aplicación. El escalado
comienza con un evento o acción de escalado, que indica a un grupo de Auto Scaling que lance o termine
instancias de Amazon EC2.

Auto Scaling de Amazon EC2 ofrece varias formas para ajustar el escalado de acuerdo con las
necesidades de sus aplicaciones. Por lo tanto, es importante que conozca bien su aplicación. Tenga en
cuenta las siguientes consideraciones:

• ¿Qué papel desea que Amazon EC2 Auto Scaling desempeñe en la arquitectura de su aplicación? Es
habitual pensar en el escalado automático principalmente como un mecanismo para aumentar y reducir
la capacidad; sin embargo, también resulta útil para mantener un número constante de servidores.
• ¿Qué restricciones de costos son importantes para usted? Como Amazon EC2 Auto Scaling utiliza
instancias EC2 Auto Scaling, solo paga los recursos que utiliza. Conocer las limitaciones de costos le
ayuda a decidir cuándo y cuánto escalar sus aplicaciones.
• ¿Qué métricas son importantes para su aplicación? Amazon CloudWatch admite una serie de métricas
diferentes que puede utilizar con su grupo de Auto Scaling.

Contenido
• Opciones de escalado (p. 123)
• Determina los límites de capacidad para el grupo de Auto Scaling (p. 124)
• Mantener un número fijo de instancias en el grupo de Auto Scaling (p. 125)
• Escale manual para Amazon EC2 Auto Scaling (p. 126)
• Escale dinámico para Amazon EC2 Auto Scaling (p. 135)
• Escaling predictivo para Amazon EC2 Auto Scaling (p. 168)
• Escale programado para Amazon EC2 Auto Scaling (p. 178)
• Enganches de ciclo de vida de Amazon EC2 Auto Scaling (p. 184)
• Grupos de Amazon EC2 (p. 200)
• Controlar qué instancias de Auto Scaling terminan durante la escala en (p. 215)
• Eliminación temporal de instancias del grupo de Auto Scaling (p. 228)
• Suspensión y reanudación de un proceso para un grupo de Auto Scaling (p. 232)

Opciones de escalado
Auto Scaling de Amazon EC2 ofrece varias formas de escalar su grupo de Auto Scaling.

Mantener los niveles de instancia actuales en todo momento

Puede configurar su grupo de Auto Scaling para mantener un número específico de instancias en
ejecución en todo momento. Para mantener los niveles de instancias actuales, Amazon EC2 Auto Scaling
realiza una comprobación de estado periódica en las instancias en ejecución dentro de un grupo de Auto
Scaling. Cuando Amazon EC2 Auto Scaling encuentra una instancia en mal estado, la termina y lanza una
nueva. Para obtener más información, consulte Mantener un número fijo de instancias en el grupo de Auto
Scaling (p. 125).

123
Auto Scaling de Amazon EC2 Guía del usuario
Establecimiento de límites de capacidad

Escalar manualmente

El escalado manual es la forma más básica de escalar los recursos, donde especifica únicamente
el cambio en la capacidad máxima, mínima o deseada de su grupo de Auto Scaling. Auto Scaling
de Amazon EC2 se encarga del proceso de creación o terminación de instancias para mantener la
capacidad actualizada. Para obtener más información, consulte Escale manual para Amazon EC2 Auto
Scaling (p. 126).

Escalado según una programación

El escalado por programación significa que las acciones de escalado se ejecutan de manera automática
en función de la hora y la fecha. Esto resulta útil cuando sabe exactamente cuándo aumentar o disminuir
el número de instancias del grupo, simplemente porque la necesidad surge de acuerdo con una
programación previsible. Para obtener más información, consulte Escale programado para Amazon EC2
Auto Scaling (p. 178).

Escalado basado en la demanda

Una forma más avanzada de escalar los recursos, mediante el escalado dinámico, le permite definir una
política de escalado que cambie el tamaño dinámico del grupo de Auto Scaling para satisfacer los cambios
en la demanda. Por ejemplo, tiene una aplicación web que actualmente se ejecuta en dos instancias
y desea que la utilización de CPU del grupo de Auto Scaling permanezca en el 50% cuando cambia la
carga en la aplicación. Este método es útil para el escalado descendente en respuesta a las condiciones
cambiantes, cuando no sabe cuándo cambiarán estas condiciones. Puede configurar Amazon EC2 Auto
Scaling para que responda por usted. Para obtener más información, consulte Escale dinámico para
Amazon EC2 Auto Scaling (p. 135).

Usar el escalado predictivo

También puede combinar el escalado predictivo y el escalado dinámico (enfoques proactivo y reactivo,
respectivamente) para escalar la capacidad de Amazon EC2 con mayor rapidez. Para obtener más
información, consulte Escaling predictivo para Amazon EC2 Auto Scaling (p. 168).

Determina los límites de capacidad para el grupo de


Auto Scaling
Para configurar el tamaño de un grupo de Auto Scaling, establezca la capacidad mínima, la capacidad
máxima y la capacidad deseada. La capacidad deseada debe ser igual o mayor que el tamaño mínimo del
grupo y menor o igual que el tamaño máximo del grupo.

Un grupo de Auto Scaling comenzará iniciando tantas instancias como se especifique para la capacidad
deseada. Si no hay políticas de escalado o acciones programadas asociadas al grupo Auto Scaling,
Amazon EC2 Auto Scaling mantiene la cantidad deseada de instancias y realiza comprobaciones
periódicas de estado en las instancias del grupo. Las instancias no saludables serán terminadas y
reemplazadas por otras nuevas.

Un grupo de Auto Scaling es elástico si tiene diferentes valores para la capacidad mínima y máxima. Todas
las solicitudes para cambiar la capacidad deseada del grupo de Auto Scaling (ya sea mediante escalado
manual o automático) deben estar comprendidas dentro de estos límites.

Si elige escalar automáticamente su grupo, elmaximumpermite que Amazon EC2 Auto Scaling escale el
número de instancias según sea necesario para gestionar el aumento de la demanda. El límite mínimo
garantiza que siempre haya cierto número de instancias en ejecución.

Estos límites también se aplican cuando el grupo de Auto Scaling, por ejemplo, cuando desea desactivar
el escalado automático y hacer que el grupo se ejecute en un tamaño fijo, ya sea de forma temporal o
permanente.

124
Auto Scaling de Amazon EC2 Guía del usuario
Mantenimiento de un número fijo de instancias

Para administrar estos ajustes en la consola de

1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.


2. En el panel de navegación, elija AUTO SCALING y elija Auto Scaling Groups (Grupos de Auto
Scaling).
3. En la páginaGrupos de Auto ScalingSeleccione la casilla de verificación situada junto al grupo de Auto
Scaling cuya configuración desee administrar.

Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto
Scaling) que muestra información sobre el grupo seleccionado.
4. En el panel inferior, en elDetalles dePuede ver o cambiar la configuración actual de la capacidad
mínima, máxima y deseada.

Por encima de laDetalles decontiene información general sobre el grupo Auto Scaling, incluido el número
actual de instancias del grupo, la capacidad mínima, máxima y deseada y una columna de estado. Si el
grupo Auto Scaling utiliza ponderación de instancias, la información incluye el número de unidades de
capacidad aportadas a la capacidad deseada. Para agregar o quitar columnas de la lista, elija el icono de
configuración en la parte superior de la página. Luego, paraatributos de grupos de Auto Scaling, active o
desactive cada columna y elijaConfirmarcambios.

Para verificar el tamaño del grupo de Auto Scaling después de realizar cambios

LaInstanciasMuestra el número de instancias que se encuentran actualmente en ejecución. Cuando una


instancia se está lanzando o terminando, laEstadomuestra un estado deActualización de capacidadComo
se muestra en la siguiente imagen.

Espere unos minutos y, a continuación, actualice la vista para ver el estado más reciente. Una vez
completada una actividad de escalado, observe que laInstanciasmuestra un nuevo valor.

También puede ver el número de instancias y el estado de las instancias que se están ejecutando
actualmente desde laAdministración de instanciasdebajo deInstancias.

Mantener un número fijo de instancias en el grupo


de Auto Scaling
Auto Scaling de Amazon EC2 le permite definir diversos parámetros para hacer que un grupo de Auto
Scaling mantenga un tamaño fijo. A continuación, puede elegir si desea agregar o quitar manualmente
instancias de Amazon EC2 del grupo de para hacer frente a los cambios de tráfico de la aplicación.

Si necesita un número fijo de instancias, solo tiene que establecer el mismo valor en la capacidad mínima,
máxima y deseada. Una vez que haya creado el grupo de Auto Scaling, el grupo de comienza lanzando
suficientes instancias para satisfacer su capacidad deseada. Si no hay otras condiciones de escalado
asociadas al grupo de Auto Scaling, el grupo de mantiene este número de instancias en ejecución en todo
momento aunque una instancia deje de estar en buen estado.

Auto Scaling de Amazon EC2 monitoriza el estado de cada instancia de Amazon EC2 que lanza. Cuando
encuentra una instancia en mal estado, termina la instancia y lanza una nueva. Si detiene o termina una
instancia en ejecución, se considera que la instancia está en mal estado y se sustituye. Si una instancia

125
Auto Scaling de Amazon EC2 Guía del usuario
Escalado manual

termina de forma inesperada, Auto Scaling de Amazon EC2 lo detecta y lanza una instancia de sustitución.
Esta función le permite mantener un número fijo de instancias EC2 automáticamente. Para obtener más
información sobre las sustituciones de la comprobación de estado, consulte Comprobaciones de Health
para instancias de Auto Scaling (p. 239).

El Auto Scaling de Amazon EC2 también le permite ajustar la capacidad deseada para actualizar el
número de instancias que intenta mantener. Para poder ajustar la capacidad deseada en un valor que esté
fuera del rango de capacidad mínima y máxima, debe actualizar estos límites.

Escale manual para Amazon EC2 Auto Scaling


Puede cambiar manualmente el tamaño de un grupo de Auto Scaling existente en cualquier momento.
Puede actualizar la capacidad del grupo de Auto Scaling o las instancias adjuntadas al grupo de Auto
Scaling. Puede resultar útil escalar manualmente el grupo cuando realizar el escalado automático no es
necesario o cuando es preciso mantener la capacidad en un número fijo de instancias.

Cambiar el tamaño del grupo de Auto Scaling


(consola)
Cuando cambia la capacidad deseada del grupo de Auto Scaling, Amazon EC2 Auto Scaling se encarga
del proceso de lanzar o terminar instancias para mantener el nuevo tamaño del grupo.

En el siguiente ejemplo se presupone que ha creado un grupo de Auto Scaling con un tamaño mínimo de 1
y un tamaño máximo de 5. Por lo tanto, el grupo tiene una sola instancia en ejecución.

Para cambiar el tamaño del grupo de Auto Scaling

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto a su grupo de Auto Scaling.

Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto
Scaling) que muestra información sobre el grupo seleccionado.
3. En la pestañaDetails (Detalles) elija Group details (Detalles de grupo), Edit (Editar).
4. En Desired capacity (Capacidad deseada), aumente la capacidad deseada en uno. Por ejemplo, si el
valor actual es 1, escriba 2.

La capacidad deseada debe ser menor o igual que el tamaño máximo del grupo. Si el nuevo valor
para Desired capacity (Capacidad deseada) es mayor que Maximum capacity (Capacidad máxima),
debe actualizar Maximum capacity (Capacidad máxima).
5. Elija Update (Actualizar) cuando haya terminado.

Ahora verifique que el grupo de Auto Scaling ha lanzado una instancia adicional.

Para verificar que el tamaño del grupo de Auto Scaling ha cambiado

1. En la pestaña Activity (Actividad), en Activity history (Historial de actividad), la columna Status (Estado)
muestra el estado actual de la instancia. Utilice el botón Actualizar hasta que vea que el estado de
la instancia cambia a Successful (Correcto). Esto indica que el grupo de Auto Scaling ha lanzado
correctamente una nueva instancia.
Note

Si la instancia no se inicia, puede encontrar consejos de solución de problemas en Solución


de problemas de Auto Scaling de Amazon EC2 (p. 309).

126
Auto Scaling de Amazon EC2 Guía del usuario
Para cambiar el tamaño del
grupo de Auto Scaling (AWS CLI)

2. En la pestaña Instance management (Administración de instancia), en Instances (Instancias), la


columna Lifecycle (Ciclo de vida) muestra el estado de sus instancias. La instancia tarda poco tiempo
en lanzarse. Una vez iniciada la instancia, su estado cambia a InService. Puede ver que su grupo
de Auto Scaling se ha iniciado1nueva instancia, y está en elInServiceEstado.

Para cambiar el tamaño del grupo de Auto Scaling


(AWS CLI)
Cuando cambia el tamaño de su grupo de Auto Scaling, Amazon EC2 Auto Scaling se encarga del
proceso de lanzar o terminar instancias para mantener el nuevo tamaño del grupo. El comportamiento
predeterminado es no esperar a que se complete el período de recuperación predeterminado, pero puede
invalidar este comportamiento predeterminado y esperar a que se complete el período de recuperación.
Para obtener más información, consulte Reutilización de escalado descendente Amazon EC2 Auto
Scaling (p. 153).

En el siguiente ejemplo se presupone que ha creado un grupo de Auto Scaling con un tamaño mínimo de 1
y un tamaño máximo de 5. Por lo tanto, el grupo tiene una sola instancia en ejecución.

Para cambiar el tamaño del grupo de Auto Scaling

UsarEstablecimiento de la capacidad deseadaPara cambiar el tamaño del grupo de Auto Scaling, tal y
como se muestra en el ejemplo siguiente.

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


--desired-capacity 2

Si opta por respetar el período de recuperación predeterminado del grupo de Auto Scaling, debe
especificar la opción–-honor-cooldowncomo se muestra en el ejemplo siguiente.

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


--desired-capacity 2 --honor-cooldown

Para verificar el tamaño del grupo de Auto Scaling

Usardescribe-auto-scaling-groupsPara confirmar que el tamaño del grupo de Auto Scaling ha cambiado, tal
y como se muestra en el ejemplo siguiente.

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

El siguiente es un resultado de ejemplo, con detalles sobre el grupo y las instancias lanzadas.

{
"AutoScalingGroups": [
{
"AutoScalingGroupARN": "arn",
"ServiceLinkedRoleARN": "arn",
"TargetGroupARNs": [],
"SuspendedProcesses": [],
"LaunchTemplate": {
"LaunchTemplateName": "my-launch-template",
"Version": "1",
"LaunchTemplateId": "lt-050555ad16a3f9c7f"
},
"Tags": [],
"EnabledMetrics": [],

127
Auto Scaling de Amazon EC2 Guía del usuario
Adjunte instancias de EC2 al grupo de Auto Scaling

"LoadBalancerNames": [],
"AutoScalingGroupName": "my-asg",
"DefaultCooldown": 300,
"MinSize": 1,
"Instances": [
{
"ProtectedFromScaleIn": false,
"AvailabilityZone": "us-west-2a",
"LaunchTemplate": {
"LaunchTemplateName": "my-launch-template",
"Version": "1",
"LaunchTemplateId": "lt-050555ad16a3f9c7f"
},
"InstanceId": "i-05b4f7d5be44822a6",
"HealthStatus": "Healthy",
"LifecycleState": "Pending"
},
{
"ProtectedFromScaleIn": false,
"AvailabilityZone": "us-west-2a",
"LaunchTemplate": {
"LaunchTemplateName": "my-launch-template",
"Version": "1",
"LaunchTemplateId": "lt-050555ad16a3f9c7f"
},
"InstanceId": "i-0c20ac468fa3049e8",
"HealthStatus": "Healthy",
"LifecycleState": "InService"
}
],
"MaxSize": 5,
"VPCZoneIdentifier": "subnet-c87f2be0",
"HealthCheckGracePeriod": 300,
"TerminationPolicies": [
"Default"
],
"CreatedTime": "2019-03-18T23:30:42.611Z",
"AvailabilityZones": [
"us-west-2a"
],
"HealthCheckType": "EC2",
"NewInstancesProtectedFromScaleIn": false,
"DesiredCapacity": 2
}
]
}

Observe que DesiredCapacity muestra el nuevo valor. El grupo de Auto Scaling ha lanzado una
instancia adicional.

Adjunte instancias de EC2 al grupo de Auto Scaling


El escalado automático de Amazon EC2 le ofrece una opción para habilitar el escalado automático para
una o varias instancias EC2, asociándolas a su grupo de Auto Scaling existente. Una vez asociadas las
instancias, pasan a formar parte del grupo de Auto Scaling.

La instancia que desea asociar debe cumplir los siguientes criterios:

• La instancia tiene el estado running.


• La AMI que se utiliza para lanzar la instancia debe existir.
• La instancia no es miembro de otro grupo de Auto Scaling.
• La instancia se lanza en una de las zonas de disponibilidad definidas en el grupo de Auto Scaling.

128
Auto Scaling de Amazon EC2 Guía del usuario
Adjunte instancias de EC2 al grupo de Auto Scaling

• Si el grupo de Auto Scaling tiene un grupo de destino del balanceador de carga asociado, la instancia
y el balanceador de carga deben estar en la misma VPC. Si el grupo de Auto Scaling tiene un Classic
Load Balancer asociado, la instancia y el balanceador de carga deben estar en EC2-Classic o en la
misma VPC.

Cuando se asocian instancias, aumenta la capacidad deseada del grupo en el número de instancias
que se asocian. Si el número de instancias que se asocian más la capacidad deseada supera el tamaño
máximo del grupo, la solicitud producirá un error.

Si asocia una instancia a un grupo de Auto Scaling que tiene un grupo de destino del balanceador de
carga o un Classic Load Balancer, la instancia se registra con el balanceador de carga.

Los ejemplos utilizan un grupo Auto Scaling con la siguiente configuración:

• Nombre del grupo de Auto Scaling = my-asg


• Tamaño mínimo = 1
• Tamaño máximo = 5
• Capacidad deseada = 2
• Availability Zone = us-west-2a

Asociar una instancia (consola)


Puede asociar una instancia existente a un grupo de Auto Scaling existente o a un nuevo grupo de Auto
Scaling en el momento en que la crea.

Para asociar una instancia a un nuevo grupo de Auto Scaling

1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.


2. En el panel de navegación, en INSTANCES (Instancias), elija Instances (Instancias) y seleccione una
instancia.
3. SeleccionarActions,Configuración de la instancia,Asociar al grupo de Auto Scaling.
4. En la páginaAsociar al grupo de Auto ScalingPágina, paraGrupo de Auto ScalingEn, escriba un
nombre para el grupo y, a continuación, elijaAttach.

El nuevo grupo de Auto Scaling se crea mediante una nueva configuración de lanzamiento con el
mismo nombre que especificó para el grupo de Auto Scaling. La configuración de lanzamiento obtiene
la configuración (por ejemplo, el grupo de seguridad y el rol de IAM) de la instancia que ha asociado.
El grupo de Auto Scaling obtiene la configuración (por ejemplo, la zona de disponibilidad y la subred)
de la instancia que ha asociado, y tiene una capacidad deseada y un tamaño máximo de1.
5. (Opcional) Para editar la configuración del grupo de Auto Scaling, en el panel de navegación, enAUTO
SCALING, elijaGrupos de Auto Scaling. Seleccione la casilla de verificación ubicada junto al nuevo
grupo de Auto Scaling, elija la opciónEditarHaga clic en la lista de grupos de, cambie la configuración
según sea necesario y, a continuación, elijaActualización.

Para asociar una instancia a un grupo de Auto Scaling existente

1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.


2. (Opcional) En el panel de navegación, en AUTO SCALING, elija Auto Scaling Groups (Grupos de Auto
Scaling). Seleccione el grupo de Auto Scaling y verifique que el tamaño máximo del grupo de Auto
Scaling es lo suficientemente grande para poder añadir otra instancia. De lo contrario, en la pestaña
Details (Detalles), aumente la capacidad máxima.
3. En el panel de navegación, en INSTANCES (Instancias), elija Instances (Instancias) y seleccione una
instancia.

129
Auto Scaling de Amazon EC2 Guía del usuario
Adjunte instancias de EC2 al grupo de Auto Scaling

4. SeleccionarActions,Configuración de la instancia,Asociar al grupo de Auto Scaling.


5. En la páginaAsociar al grupo de Auto ScalingPágina, paraGrupo de Auto ScalingSeleccione el grupo
de Auto Scaling (Auto Scaling) y haga clic enAttach.
6. Si la instancia no cumple los criterios, recibirá un mensaje de error con los detalles. Por ejemplo, es
posible que la instancia no esté en la misma zona de disponibilidad que el grupo de Auto Scaling.
Seleccione Close y vuelva a intentarlo con una instancia que cumpla los criterios.

Adjuntar una instancia (AWS CLI)


Para asociar una instancia a un grupo de Auto Scaling

1. Describa un grupo de Auto Scaling utilizando los siguientesdescribe-auto-scaling-groupscomando.

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

La siguiente respuesta de ejemplo muestra que la capacidad deseada es 2 y que el grupo tiene dos
instancias en ejecución.

{
"AutoScalingGroups": [
{
"AutoScalingGroupARN": "arn",
"ServiceLinkedRoleARN": "arn",
"TargetGroupARNs": [],
"SuspendedProcesses": [],
"LaunchTemplate": {
"LaunchTemplateName": "my-launch-template",
"Version": "1",
"LaunchTemplateId": "lt-050555ad16a3f9c7f"
},
"Tags": [],
"EnabledMetrics": [],
"LoadBalancerNames": [],
"AutoScalingGroupName": "my-asg",
"DefaultCooldown": 300,
"MinSize": 1,
"Instances": [
{
"ProtectedFromScaleIn": false,
"AvailabilityZone": "us-west-2a",
"LaunchTemplate": {
"LaunchTemplateName": "my-launch-template",
"Version": "1",
"LaunchTemplateId": "lt-050555ad16a3f9c7f"
},
"InstanceId": "i-05b4f7d5be44822a6",
"HealthStatus": "Healthy",
"LifecycleState": "Pending"
},
{
"ProtectedFromScaleIn": false,
"AvailabilityZone": "us-west-2a",
"LaunchTemplate": {
"LaunchTemplateName": "my-launch-template",
"Version": "1",
"LaunchTemplateId": "lt-050555ad16a3f9c7f"
},
"InstanceId": "i-0c20ac468fa3049e8",
"HealthStatus": "Healthy",
"LifecycleState": "InService"

130
Auto Scaling de Amazon EC2 Guía del usuario
Adjunte instancias de EC2 al grupo de Auto Scaling

}
],
"MaxSize": 5,
"VPCZoneIdentifier": "subnet-c87f2be0",
"HealthCheckGracePeriod": 300,
"TerminationPolicies": [
"Default"
],
"CreatedTime": "2019-03-18T23:30:42.611Z",
"AvailabilityZones": [
"us-west-2a"
],
"HealthCheckType": "EC2",
"NewInstancesProtectedFromScaleIn": false,
"DesiredCapacity": 2
}
]
}

2. Para asociar una instancia al grupo de Auto Scaling utilizando la siguienteinstancias


adjuntascomando.

aws autoscaling attach-instances --instance-ids i-0787762faf1c28619 --auto-scaling-


group-name my-asg

3. Para verificar que la instancia está asociada, use la siguientedescribe-auto-scaling-groupscomando.

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

En la siguiente respuesta de ejemplo se muestra que la capacidad deseada ha aumentado en 1


instancia (a una nueva capacidad de 3) y que hay una nueva instancia, i-0787762faf1c28619.

{
"AutoScalingGroups": [
{
"AutoScalingGroupARN": "arn",
"ServiceLinkedRoleARN": "arn",
"TargetGroupARNs": [],
"SuspendedProcesses": [],
"LaunchTemplate": {
"LaunchTemplateName": "my-launch-template",
"Version": "1",
"LaunchTemplateId": "lt-050555ad16a3f9c7f"
},
"Tags": [],
"EnabledMetrics": [],
"LoadBalancerNames": [],
"AutoScalingGroupName": "my-asg",
"DefaultCooldown": 300,
"MinSize": 1,
"Instances": [
{
"ProtectedFromScaleIn": false,
"AvailabilityZone": "us-west-2a",
"LaunchTemplate": {
"LaunchTemplateName": "my-launch-template",
"Version": "1",
"LaunchTemplateId": "lt-050555ad16a3f9c7f"
},
"InstanceId": "i-05b4f7d5be44822a6",
"HealthStatus": "Healthy",
"LifecycleState": "Pending"
},

131
Auto Scaling de Amazon EC2 Guía del usuario
Para desasociar instancias EC2 del grupo de Auto Scaling

{
"ProtectedFromScaleIn": false,
"AvailabilityZone": "us-west-2a",
"LaunchTemplate": {
"LaunchTemplateName": "my-launch-template",
"Version": "1",
"LaunchTemplateId": "lt-050555ad16a3f9c7f"
},
"InstanceId": "i-0c20ac468fa3049e8",
"HealthStatus": "Healthy",
"LifecycleState": "InService"
},
{
"ProtectedFromScaleIn": false,
"AvailabilityZone": "us-west-2a",
"LaunchTemplate": {
"LaunchTemplateName": "my-launch-template",
"Version": "1",
"LaunchTemplateId": "lt-050555ad16a3f9c7f"
},
"InstanceId": "i-0787762faf1c28619",
"HealthStatus": "Healthy",
"LifecycleState": "InService"
}
],
"MaxSize": 5,
"VPCZoneIdentifier": "subnet-c87f2be0",
"HealthCheckGracePeriod": 300,
"TerminationPolicies": [
"Default"
],
"CreatedTime": "2019-03-18T23:30:42.611Z",
"AvailabilityZones": [
"us-west-2a"
],
"HealthCheckType": "EC2",
"NewInstancesProtectedFromScaleIn": false,
"DesiredCapacity": 3
}
]
}

Para desasociar instancias EC2 del grupo de Auto


Scaling
Puede eliminar (desconectar) una instancia de un grupo de Auto Scaling. Una vez desasociadas las
instancias, puede administrarlas de forma independiente del resto del grupo Auto Scaling. Al desasociar
una instancia, puede:

• Sacar una instancia de un grupo de Auto Scaling y asociarla a otro. Para obtener más información,
consulte Adjunte instancias de EC2 al grupo de Auto Scaling (p. 128).
• Pruebe un grupo de Auto Scaling creándolo utilizando instancias existentes que ejecutan la aplicación.
A continuación, puede desconectar estas instancias del grupo de Auto Scaling cuando se hayan
completado las pruebas.

Cuando desasocia instancias, tiene la opción de reducir la capacidad deseada del grupo de Auto Scaling
en el número de instancias que se van a desasociar. Si elige no reducir la capacidad, Amazon EC2
Auto Scaling lanza nuevas instancias para sustituir las que ha desasociado. Si reduce la capacidad pero
desasocia varias instancias de la misma zona de disponibilidad, Amazon EC2 Auto Scaling puede volver

132
Auto Scaling de Amazon EC2 Guía del usuario
Para desasociar instancias EC2 del grupo de Auto Scaling

a equilibrar las zonas de disponibilidad a menos que suspenda laAZRebalanceProceso de. Para obtener
más información, consulte Procesos de Auto Scaling de Amazon EC2 (p. 233).

Si el número de instancias que está separando disminuye el tamaño del grupo de Auto Scaling por debajo
de su capacidad mínima, deberá reducir dicha capacidad del grupo de antes de poder desasociarlas.

Si desasocia una instancia de un grupo de Auto Scaling que tiene un grupo de destino del balanceador de
carga o un Classic Load Balancer, se cancela el registro de la instancia con el balanceador de carga. Si se
habilita el vaciado de conexiones para el balanceador de carga, Amazon EC2 Auto Scaling espera a que
se completen las solicitudes en tránsito.

Los ejemplos utilizan un grupo Auto Scaling con la siguiente configuración:

• Nombre de grupo de Auto Scalingmy-asg


• Tamaño mínimo = 1
• Tamaño máximo = 5
• Capacidad deseada = 4
• Zona de disponibilidad = us-west-2a

Desconexión de instancias (consola)


Utilice el siguiente procedimiento para desasociar una instancia de su grupo de Auto Scaling.

Para desasociar una instancia de un grupo de Auto Scaling existente

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto a su grupo de Auto Scaling.

Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto
Scaling) que muestra información sobre el grupo seleccionado.
3. En la pestaña Instance management (Administración de instancias), en Instances (Instancias),
seleccione una instancia y elija Actions (Acciones), Detach (Desconectar).
4. En el cuadro de diálogo Detach instance (Desconectar instancia), seleccione la casilla de verificación
para lanzar una instancia de sustitución o deje la casilla sin marcar para reducir la capacidad deseada.
Elija Detach instance (Desconectar instancia).

Separación de instancias (AWS CLI)


Utilice el siguiente procedimiento para desasociar una instancia de su grupo de Auto Scaling.

Para desasociar una instancia de un grupo de Auto Scaling existente

1. Haga una lista de instancias actuales con el siguientedescribe-auto-scaling-instancescomando.

aws autoscaling describe-auto-scaling-instances

El siguiente ejemplo de respuesta muestra que el grupo tiene cuatro instancias en ejecución.

{
"AutoScalingInstances": [
{
"ProtectedFromScaleIn": false,
"AvailabilityZone": "us-west-2a",
"LaunchTemplate": {
"LaunchTemplateName": "my-launch-template",

133
Auto Scaling de Amazon EC2 Guía del usuario
Para desasociar instancias EC2 del grupo de Auto Scaling

"Version": "1",
"LaunchTemplateId": "lt-050555ad16a3f9c7f"
},
"InstanceId": "i-05b4f7d5be44822a6",
"AutoScalingGroupName": "my-asg",
"HealthStatus": "HEALTHY",
"LifecycleState": "InService"
},
{
"ProtectedFromScaleIn": false,
"AvailabilityZone": "us-west-2a",
"LaunchTemplate": {
"LaunchTemplateName": "my-launch-template",
"Version": "1",
"LaunchTemplateId": "lt-050555ad16a3f9c7f"
},
"InstanceId": "i-0c20ac468fa3049e8",
"AutoScalingGroupName": "my-asg",
"HealthStatus": "HEALTHY",
"LifecycleState": "InService"
},
{
"ProtectedFromScaleIn": false,
"AvailabilityZone": "us-west-2a",
"LaunchTemplate": {
"LaunchTemplateName": "my-launch-template",
"Version": "1",
"LaunchTemplateId": "lt-050555ad16a3f9c7f"
},
"InstanceId": "i-0787762faf1c28619",
"AutoScalingGroupName": "my-asg",
"HealthStatus": "HEALTHY",
"LifecycleState": "InService"
},
{
"ProtectedFromScaleIn": false,
"AvailabilityZone": "us-west-2a",
"LaunchTemplate": {
"LaunchTemplateName": "my-launch-template",
"Version": "1",
"LaunchTemplateId": "lt-050555ad16a3f9c7f"
},
"InstanceId": "i-0f280a4c58d319a8a",
"AutoScalingGroupName": "my-asg",
"HealthStatus": "HEALTHY",
"LifecycleState": "InService"
}
]
}

2. Desasocie una instancia y reduzca la capacidad deseada con la siguientedesasociar


instanciascomando.

aws autoscaling detach-instances --instance-ids i-05b4f7d5be44822a6 \


--auto-scaling-group-name my-asg --should-decrement-desired-capacity

3. Verifique que la instancia está desvinculada con la siguientedescribe-auto-scaling-instancescomando.

aws autoscaling describe-auto-scaling-instances

El siguiente ejemplo de respuesta muestra que ahora hay tres instancias en ejecución.

134
Auto Scaling de Amazon EC2 Guía del usuario
Escalado dinámico

"AutoScalingInstances": [
{
"ProtectedFromScaleIn": false,
"AvailabilityZone": "us-west-2a",
"LaunchTemplate": {
"LaunchTemplateName": "my-launch-template",
"Version": "1",
"LaunchTemplateId": "lt-050555ad16a3f9c7f"
},
"InstanceId": "i-0c20ac468fa3049e8",
"AutoScalingGroupName": "my-asg",
"HealthStatus": "HEALTHY",
"LifecycleState": "InService"
},
{
"ProtectedFromScaleIn": false,
"AvailabilityZone": "us-west-2a",
"LaunchTemplate": {
"LaunchTemplateName": "my-launch-template",
"Version": "1",
"LaunchTemplateId": "lt-050555ad16a3f9c7f"
},
"InstanceId": "i-0787762faf1c28619",
"AutoScalingGroupName": "my-asg",
"HealthStatus": "HEALTHY",
"LifecycleState": "InService"
},
{
"ProtectedFromScaleIn": false,
"AvailabilityZone": "us-west-2a",
"LaunchTemplate": {
"LaunchTemplateName": "my-launch-template",
"Version": "1",
"LaunchTemplateId": "lt-050555ad16a3f9c7f"
},
"InstanceId": "i-0f280a4c58d319a8a",
"AutoScalingGroupName": "my-asg",
"HealthStatus": "HEALTHY",
"LifecycleState": "InService"
}
]
}

Escale dinámico para Amazon EC2 Auto Scaling


Cuando configura el escalado dinámico, define cómo escalar la capacidad del grupo de Auto Scaling en
respuesta a la demanda en continuo cambio.

Por ejemplo, tiene una aplicación web que actualmente se ejecuta en dos instancias y desea que la
utilización de CPU del grupo de Auto Scaling permanezca en el 50% cuando cambia la carga en la
aplicación. De este modo dispone de capacidad adicional para manejar picos de tráfico sin mantener una
cantidad excesiva de recursos inactivos.

Puede configurar su grupo Auto Scaling para que escale dinámicamente para satisfacer esta necesidad
mediante la creación de una política de seguimiento, paso o escala simple de destino. A continuación,
Amazon EC2 Auto Scaling puede escalar su grupo de (añadir más instancias) para hacer frente a la alta
demanda en las horas punta, y escalar en su grupo (ejecutar menos instancias) para reducir los costos
durante los períodos de baja utilización.

Contenido
• Cómo funcionan las directivas de escalado dinámico (p. 136)

135
Auto Scaling de Amazon EC2 Guía del usuario
Cómo funcionan las directivas de escalado dinámico

• Tipos de políticas de escalado dinámico (p. 137)


• Políticas de escalado dinámico (p. 137)
• Políticas de escalado de seguimiento de destino para Amazon EC2 Auto Scaling (p. 138)
• Políticas de escalado simples y de pasos para Amazon EC2 Auto Scaling (p. 144)
• Reutilización de escalado descendente Amazon EC2 Auto Scaling (p. 153)
• Escalado basado en Amazon SQS (p. 157)
• Verificando una actividad de escalado para un grupo de Auto Scaling (p. 161)
• Deshabilitar una política de escalado para un grupo de Auto Scaling (p. 162)
• Eliminación de una política de escalado (p. 164)
• Ejemplo de directivas de escalado para elAWS Command Line Interface(AWS CLI) (p. 166)

Cómo funcionan las directivas de escalado dinámico


Una política de escalado dinámico indica a Amazon EC2 Auto Scaling que realice un seguimiento de
una métrica de CloudWatch específica y define qué acción debe llevarse a cabo cuando la alarma de
CloudWatch asociada está en ALARM. Las métricas que se utilizan para activar una alarma son una
agregación de métricas procedentes de todas las instancias del grupo de Auto Scaling. (Por ejemplo,
supongamos tiene un grupo de Auto Scaling con dos instancias donde una instancia tiene un 60% de CPU
y la otra tiene un 40% de CPU. En promedio, están al 50 por ciento de la CPU). Cuando la política está en
vigor, el Auto Scaling de Amazon EC2 ajusta la capacidad deseada del grupo hacia arriba o hacia abajo
cuando se activa la alarma.

Cuando se invoca una política de escalado dinámico, si el cálculo de capacidad produce un número fuera
del rango de tamaño mínimo y máximo del grupo, Amazon EC2 Auto Scaling garantiza que la nueva
capacidad nunca se salga de los límites de tamaño mínimo y máximo. La capacidad se mide de una de
estas dos maneras: utilizando las mismas unidades que eligió al definir la capacidad deseada en términos
de instancias o utilizando unidades de capacidad (si se aplica la ponderación de instancia (p. 73)).

• Ejemplo 1: Un grupo de Auto Scaling tiene una capacidad máxima de 3, una capacidad actual de 2 y
una política de escalado dinámico que agrega 3 instancias. Al invocar esta política, Amazon EC2 Auto
Scaling agrega sólo 1 instancia al grupo para evitar que el grupo supere su tamaño máximo.
• Ejemplo 2: Un grupo de Auto Scaling tiene una capacidad mínima de 2, una capacidad actual de 3 y
una política de escalado dinámico que elimina 2 instancias. Al invocar esta política, Amazon EC2 Auto
Scaling quita sólo 1 instancia del grupo para evitar que el grupo sea menor que su tamaño mínimo.

Cuando la capacidad deseada alcanza el límite de tamaño máximo, el escalado ascendente se detiene.
Si la demanda cae y la capacidad disminuye, Auto Scaling de Amazon EC2 puede realizar de nuevo el
escalado ascendente.

La excepción es cuando se utiliza la ponderación de instancias. En este caso, el Auto Scaling de Amazon
EC2 puede escalar ascendente por encima del límite de tamaño máximo, pero solo por hasta el peso
máximo de la instancia. Su intención es acercarse lo más posible a la nueva capacidad deseada, pero
aún así respetar las estrategias de asignación que se han especificado para el grupo. Las estrategias de
asignación determinan los tipos de instancia que se van a lanzar. Los pesos determinan cuántas unidades
de capacidad aporta cada instancia a la capacidad deseada del grupo en función de su tipo de instancia.

• Ejemplo 3: Un grupo de Auto Scaling tiene una capacidad máxima de 12, una capacidad actual de 10 y
una política de escalado dinámico que agrega 5 unidades de capacidad. Los tipos de instancia tienen
una de las tres ponderaciones asignadas: 1, 4 o 6. Al invocar la política, Amazon EC2 Auto Scaling elige
lanzar un tipo de instancia con un peso de 6 en función de la estrategia de asignación. El resultado de
este evento de escalado ascendente es un grupo con una capacidad deseada de 12 y una capacidad
actual de 16.

136
Auto Scaling de Amazon EC2 Guía del usuario
Tipos de políticas de escalado dinámico

Tipos de políticas de escalado dinámico


Auto Scaling de Amazon EC2 admite los siguientes tipos de política de escalado dinámico:

• Scaling de seguimiento de destino: permite aumentar o reducir la capacidad actual del grupo en
función de un valor objetivo especificado en una determinada métrica. Funciona de forma similar a
los termostatos, que mantienen la temperatura del hogar: el usuario selecciona una temperatura y el
termostato hace el resto.
• Escalado por pasos: permite aumentar o reducir la capacidad actual del grupo en función de una serie
de ajustes de escalado, denominados ajustes por pasos, que variarán en función del tamaño de la
interrupción de alarma.
• Escalado sencillo: permite aumentar o reducir la capacidad actual del grupo en función de un único
ajuste de escalado.

Si realiza el escalado en función de una métrica de utilización que aumenta o se reduce en proporción al
número de instancias de un grupo de Auto Scaling, le recomendamos que utilice políticas de escalado de
seguimiento de destino. De lo contrario, le recomendamos que utilice políticas de escalado por pasos.

Políticas de escalado dinámico


En la mayoría de los casos, una política de escalado de seguimiento de destino es suficiente para
configurar el grupo de Auto Scaling para que se amplíe y reduzca de forma automática. Una política de
escalado de seguimiento de destino le permite seleccionar un resultado deseado y hacer que el grupo de
Auto Scaling añada y elimine instancias según sea necesario para lograr ese resultado.

Para una configuración de escalado avanzada, el grupo de Auto Scaling puede tener más de una política
de escalado. Por ejemplo, puede definir una o más políticas de escalado de seguimiento de destino, una o
más políticas de escalado por pasos o ambos tipos. Esto proporciona una mayor flexibilidad para abordar
diferentes situaciones.

Para ilustrar cómo se combinan varias políticas de escalado dinámico, considere una aplicación que utiliza
un grupo de Auto Scaling y una cola de Amazon SQS para enviar solicitudes a una sola instancia EC2.
Para ayudar a garantizar que la aplicación funciona en niveles óptimos, existen dos políticas que controlan
cuándo debe ampliarse el grupo de Auto Scaling. Una es una política de seguimiento de destino que utiliza
una métrica personalizada para añadir y eliminar capacidad en función del número de mensajes SQS en la
cola. La otra es una política de escalado por Amazon CloudWatch utiliza elCPUUtilizationpara agregar
capacidad cuando la instancia supere el 90% de utilización durante un periodo de tiempo específico.

Cuando hay varias políticas en vigor al mismo tiempo, existe la posibilidad de que cada una de ellas
pueda indicar al grupo de Auto Scaling para que realice el escalado ascendente (o descendente) al mismo
tiempo. Por ejemplo, es posible que elCPUUtilizationCuando se activa la alarma de CloudWatch
al mismo tiempo que la métrica personalizada de SQS se activa y desencadena la alarma métrica
personalizada.

Cuando se producen estas situaciones, Amazon EC2 Auto Scaling elige la política que proporciona
la mayor capacidad de escalado descendente y descendente. Por ejemplo, suponga que la política
CPUUtilization lanza una instancia, mientras que la política de la cola de SQS lanza dos instancias.
Si se cumple el criterio de escalado descendente de ambas políticas al mismo tiempo, Amazon EC2 Auto
Scaling dará prioridad a la política de cola de SQS. Por consiguiente, se lanzarán dos instancias en el
grupo de Auto Scaling.

El enfoque de dar prioridad a la política que proporciona la mayor capacidad se aplica incluso cuando las
políticas utilizan criterios diferentes para el escalado descendente. Por ejemplo, si una política termina
tres instancias, otra política disminuye el número de instancias en un 25% y el grupo tiene ocho instancias
en el momento del escalado descendente, Amazon EC2 Auto Scaling prioriza la política que proporciona

137
Auto Scaling de Amazon EC2 Guía del usuario
Políticas de escalado de seguimiento de destino

el mayor número de instancias para el grupo. Esto da lugar a que el grupo de Auto Scaling termine
dos instancias (25 por ciento de 8 = 2). La intención es evitar que Amazon EC2 Auto Scaling elimine
demasiadas instancias.

Sin embargo, recomendamos precaución al utilizar políticas de escalado de seguimiento de destino


con políticas de escalado por pasos, ya que los conflictos entre estas políticas pueden provocar un
comportamiento no deseado. Por ejemplo, si la política de escalado por pasos inicia una actividad de
escalado antes de que la política de seguimiento de destino esté lista para escalar, la actividad de
escalado no se bloqueará. Una vez completada la actividad de escalado, la política de seguimiento de
destino podría indicar al grupo que vuelva a escalar.

Políticas de escalado de seguimiento de destino para


Amazon EC2 Auto Scaling
Con las políticas de escalado de seguimiento de destino, selecciona una métrica de escalado y un valor
objetivo. El Auto Scaling de Amazon EC2 crea y administra las alarmas de CloudWatch que activan la
política de escalado y calcula el ajuste de escalado en función de la métrica y el valor objetivo. La política
de escalado amplía o reduce la capacidad en función de las necesidades para mantener la métrica en
el valor objetivo especificado o en un valor próximo. Además de mantener la métrica próxima al valor de
destino, la política de escalado de seguimiento de destino también se ajusta a los cambios de la métrica
producidos por una carga de trabajo en constante cambio.

Por ejemplo, puede utilizar el escalado de seguimiento de destino para:

• Configurar una política de escalado de seguimiento de destino de forma que la media total de utilización
de la CPU del grupo de Auto Scaling se mantenga en el 40 por ciento.
• Configurar una política de escalado de seguimiento de destino de forma que el número de solicitudes por
cada uno de los destinos del grupo de destino del Application Load Balancer se mantenga en 1000 en su
grupo de Auto Scaling.

En función de las necesidades de la aplicación, es posible que una de estas métricas de escalado
populares funcione mejor para usted cuando utilice el seguimiento de destino o que una combinación de
estas métricas o una métrica diferente satisfaga mejor sus necesidades.

Contenido
• Considerations (p. 138)
• Elección de métricas (p. 139)
• Supervisión de métricas de Amazon EC2 (p. 140)
• Calentamiento de las instancias (p. 140)
• Crear una política de escalado de seguimiento de destino (consola) (p. 141)
• Cree una política de escalado de seguimiento de destino (AWS CLI) (p. 142)
• Paso 1: Creación de un grupo de Auto Scaling (p. 142)
• Paso 2: Crear una política de escalado de seguimiento de destino (p. 142)

Considerations
Antes de crear una política de escalado de seguimiento de destino para el grupo de Auto Scaling, debe
comprender las siguientes características y comportamientos de las políticas de escalado de seguimiento
de destino:

• Una política de escalado de seguimiento de destino presupone que el grupo de Auto Scaling debe
escalarse de forma descendente cuando la métrica está por encima del valor objetivo. No puede utilizar

138
Auto Scaling de Amazon EC2 Guía del usuario
Políticas de escalado de seguimiento de destino

una política de escalado de seguimiento de destino para realizar un escalado descendente en el grupo
de Auto Scaling cuando la métrica está por debajo del valor objetivo.
• Es posible que haya diferencias entre el valor objetivo y los puntos de datos de la métrica real. Esto
se debe a que actuamos de forma conservadora redondeando hacia arriba o hacia abajo a la hora de
determinar el número de instancias que se deben agregar o quitar. Esto impide que agreguemos un
número insuficiente de instancias o eliminemos demasiadas. No obstante, en el caso de los grupos de
Auto Scaling más pequeños con menos instancias, la utilización del grupo puede parecer que está muy
lejos del valor objetivo. Por ejemplo, supongamos que establece un valor de destino del 50 por ciento
de utilización de la CPU y, a continuación, el grupo de Auto Scaling supera el dicho objetivo. Es posible
determinar que la adición de 1,5 instancias disminuirá la utilización de la CPU hasta aproximadamente
el 50 por ciento. Como no es posible agregar 1,5 instancias, redondeamos hacia arriba y añadimos
dos instancias. Esto podría reducir la utilización de la CPU a un valor inferior al 50 por ciento, pero
garantizaría que la aplicación cuenta con los recursos suficientes. Del mismo modo, si determinamos
que, en caso de que se eliminen 1,5 instancias, la utilización de la CPU podría aumentar por encima del
50 por ciento, eliminamos una sola instancia.
• En el caso de grupos de Auto Scaling más grandes con más instancias, la utilización se distribuye en un
mayor número de instancias, en cuyo caso, si se añaden o quitan instancias, la diferencia entre el valor
de destino y los puntos de datos de la métrica real es menor.
• Para garantizar la disponibilidad de la aplicación, el grupo de Auto Scaling se escala en horizontal
proporcionalmente a la métrica tan rápido como puede, pero se escala de forma descendente de más
gradualmente.
• Puede tener varias políticas de escalado de seguimiento de destino para un grupo de Auto Scaling,
siempre que cada una de ellas use una métrica diferente. La intención de Amazon EC2 Auto Scaling
es dar siempre prioridad a la disponibilidad, por lo que su comportamiento varía en función de si las
políticas de seguimiento de destino están listas para el escalado ascendente o descendente. Realizará
un escalado ascendente del grupo de Auto Scaling si cualquiera de las políticas de seguimiento de
destino está lista para el escalado ascendente, pero solo realizará el escalado descendente si todas
las políticas de seguimiento de destino (que tienen la parte de escalado descendente habilitada) están
listas para el escalado descendente. Para obtener más información, consulte Políticas de escalado
dinámico (p. 137).
• Puede deshabilitar la parte de escalado descendente de una política de escalado de seguimiento de
destino. Esta característica le brinda la flexibilidad necesaria para escalar el grupo de Auto Scaling
mediante un método diferente. Por ejemplo, puede utilizar otro tipo de política para el escalado
descendente mientras utiliza una política de escalado de seguimiento de destino para el escalado
ascendente.
• No modifique ni elimine las alarmas de CloudWatch que están configuradas para la política de escalado
de seguimiento de destino. Las alarmas de CloudWatch que están asociadas a las políticas de escalado
de seguimiento de destino se gestionan medianteAWSY se elimina automáticamente cuando ya no se
necesita.

Elección de métricas
En una política de escalado de seguimiento de destino, puede utilizar métricas predefinidas o
personalizadas.

Están disponibles las siguientes métricas predefinidas:

• ASGAverageCPUUtilization: promedio de la CPU del grupo de Auto Scaling.


• ASGAverageNetworkIn: número promedio de bytes recibidos en todas las interfaces de red por el
grupo de Auto Scaling.
• ASGAverageNetworkOut: número promedio de bytes enviados en todas las interfaces de red por el
grupo de Auto Scaling.
• ALBRequestCountPerTarget: número de solicitudes completadas por el destino en un grupo de
destino del Application Load Balancer.

139
Auto Scaling de Amazon EC2 Guía del usuario
Políticas de escalado de seguimiento de destino

Puede elegir otras métricas de Amazon CloudWatch disponibles o sus propias métricas en CloudWatch
mediante la especificación de una métrica personalizada. Debe utilizar elAWS CLIPara crear una política
de seguimiento de destino con una métrica personalizada.

Tenga en cuenta las siguientes consideraciones al elegir una métrica:

• No todas las métricas de funcionan para el seguimiento de destino. Esto puede ser importante
cuando se especifica una métrica personalizada. La métrica debe ser una métrica de utilización
válida y describir el nivel de actividad de una instancia. El valor de la métrica debe aumentar o
disminuir proporcionalmente al número de instancias del grupo Auto Scaling. De esta forma, los
datos de las métricas se pueden utilizar para ampliar o reducir proporcionalmente el número de
instancias. Por ejemplo, la utilización de la CPU de un grupo de Auto Scaling funciona (es decir,
la métrica de Amazon EC2 Amazon EC2 Auto ScalingCPUUtilizationCon la dimensión de la
métricaAutoScalingGroupName), si la carga en el grupo Auto Scaling se distribuye entre las
instancias.
• Las siguientes métricas no sirven para hacer un seguimiento de destino:
• El número de solicitudes recibidas por el balanceador de carga frente al grupo de Auto Scaling (es
decir, la métrica de Elastic Load BalancingRequestCount). El número de solicitudes recibidas por el
balanceador de carga no cambia en función de la utilización del grupo de Auto Scaling.
• Latencia de solicitudes de balanceador de carga (es decir, la métrica de Elastic Load
Balancing)Latency). La latencia de solicitudes puede aumentar si lo hace la utilización, pero el
cambio no tiene que hacerse necesariamente de forma proporcional.
• La métrica de la cola de Amazon SQS de CloudWatchApproximateNumberOfMessagesVisible.
El número de mensajes de una cola no tiene por qué cambiar en proporción al tamaño del grupo
de Auto Scaling que procesa los mensajes de la cola. Sin embargo, puede funcionar una métrica
personalizada que mide el número de mensajes de la cola por instancia EC2 en el grupo de Auto
Scaling. Para obtener más información, consulte Escalado basado en Amazon SQS (p. 157).
• Las políticas de escalado de seguimiento de destino no efectúan el Auto Scaling si la métrica
especificada no tiene datos, a menos que use la herramientaALBRequestCountPerTargetMétrica de.
Esto funciona porque la métrica ALBRequestCountPerTarget emite ceros para periodos sin datos
asociados y la política de seguimiento de destino requiere datos métricos para interpretar una tendencia
de baja utilización. Para que el grupo de Auto Scaling se escale en 0 instancias cuando no se enrutan
solicitudes al grupo de destino del Application Load Balancer, la capacidad mínima del grupo debe ser
de 0.
• Para utilizar elALBRequestCountPerTargetMétrica, debe especificar elResourceLabelPara
identificar el grupo de destino del balanceador de carga asociado a la métrica.

Supervisión de métricas de Amazon EC2


Para garantizar una respuesta más rápida a los cambios en el valor de la métrica, recomendamos que
escale las métricas con una frecuencia de 1 minuto. Realizar el escalado utilizando métricas con una
frecuencia de 5 minutos puede generar un tiempo de respuesta más lento y hacer que el escalado se
realice con datos de métricas que están obsoletos.

Para obtener este nivel de datos para las métricas de Amazon EC2, debe habilitar específicamente la
supervisión detallada. De forma predeterminada, las instancias de Amazon EC2 tienen habilitada la
monitorización básica, lo que significa que los datos de las métricas de las instancias están disponibles en
frecuencias de 5 minutos. Para obtener más información, consulte Configuración de la supervisión para
instancias de Auto Scaling (p. 256).

Calentamiento de las instancias


Cuando crea una política de escalado de seguimiento de destino, puede especificar el número de
segundos que se tarda en preparar una instancia recién lanzada. Hasta que finaliza el tiempo de
preparación especificado, la instancia no se tiene en cuenta para las métricas agregadas del grupo de Auto
Scaling.

140
Auto Scaling de Amazon EC2 Guía del usuario
Políticas de escalado de seguimiento de destino

Durante el escalado ascendente, no consideramos las instancias que se están preparando como parte de
la capacidad actual del grupo de para que las métricas no se vean afectadas por el mayor uso de recursos
durante el inicio. Con esto nos aseguramos de no añadir más instancias de las que necesita.

Durante el escalado descendente, consideramos las instancias que están terminando como parte de la
capacidad actual del grupo. Por lo tanto, no eliminaremos más instancias del grupo de Auto Scaling que las
necesarias.

Una actividad de escalado descendente no se puede iniciar mientras haya una actividad de escalado
ascendente en curso.

Crear una política de escalado de seguimiento de destino


(consola)
Puede elegir configurar una directiva de escala de seguimiento de destino en un grupo de Auto Scaling a
medida que lo crea o después de crear el grupo Auto Scaling.

Para crear un grupo de Auto Scaling con una política de escalado de seguimiento de destino

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Elija Create Auto Scaling group (Crear grupo de Auto Scaling).
3. En los pasos 1, 2 y 3, elija las opciones que desee y continúe conPaso 4: Configure el tamaño del
grupo y las políticas de escalado.
4. UNDERTamaño del grupo, especifique el rango entre el que desea escalar actualizando la capacidad
mínima y la capacidad máxima. Estas dos configuraciones permiten que el grupo Auto Scaling escale
dinámicamente. Amazon EC2 Auto Scaling escala su grupo en el rango de valores especificado por la
capacidad mínima y la capacidad máxima.
5. UNDERPolíticas de escalado, elijaPolítica de escalado de seguimiento de destino.
6. Para definir una política, haga lo siguiente:

a. Especifique un nombre para la política.


b. En Tipo de métrica, elija una métrica.

Si eligióRecuento Application Load Balancer de aplicaciones por destinoEn, seleccione un grupo


de destinoGrupo de destinos.
c. Especifique un valor de destino para la métrica en Target value.
d. (Opcional) Especifique un valor de preparación de instancia para Instances need (Instancias
necesarias). Esto le permite controlar el tiempo hasta que una instancia recién lanzada pueda
contribuir a las métricas de CloudWatch.
e. (Opcional) Seleccione Disable scale in to create only a scale-out policy (Deshabilitar el escalado
descendente para crear solo una política de escalado ascendente). De este modo, si lo desea,
puede crear por separado una política de escalado descendente de otro tipo.
7. Continúe con la creación del grupo de Auto Scaling. La política de escalado se creará después de que
se haya creado el grupo Auto Scaling.

Para crear una política de escalado de seguimiento de destino para un grupo de Auto Scaling
existente

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto a su grupo de Auto Scaling.

Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto
Scaling) que muestra información sobre el grupo seleccionado.

141
Auto Scaling de Amazon EC2 Guía del usuario
Políticas de escalado de seguimiento de destino

3. Compruebe que la capacidad mínima y la capacidad máxima estén configuradas correctamente. Por
ejemplo, si el grupo ya tiene el tamaño máximo, especifique un nuevo valor máximo de escalado
ascendente. Auto Scaling de Amazon EC2 no escalará el grupo de por debajo de la capacidad mínima
ni por encima de la capacidad máxima. Para actualizar el grupo, en la pestaña Details (Detalles),
cambie la configuración actual para la capacidad mínima y máxima.
4. En la páginaEscalado automáticoPestaña, enPolíticas de escalado, elijaCrear directiva de escalado
dinámico.
5. Para definir una política, haga lo siguiente:

a. En Policy type (Tipo de política), deje el valor predeterminado de Target tracking scaling
(Escalado de seguimiento de destino).
b. Especifique un nombre para la política.
c. En Tipo de métrica, elija una métrica. Solo puede elegir un tipo de métrica. Para utilizar más de
una métrica, cree varias políticas.

Si eligióRecuento Application Load Balancer de aplicaciones por destinoEn, seleccione un grupo


de destinoGrupo de destinos.
d. Especifique un valor de destino para la métrica en Target value.
e. (Opcional) Especifique un valor de preparación de instancia para Instances need (Instancias
necesarias). Esto le permite controlar el tiempo hasta que una instancia recién lanzada pueda
contribuir a las métricas de CloudWatch.
f. (Opcional) Seleccione Disable scale in to create only a scale-out policy (Deshabilitar el escalado
descendente para crear solo una política de escalado ascendente). De este modo, si lo desea,
puede crear por separado una política de escalado descendente de otro tipo.
6. Seleccione Create (Crear).

Cree una política de escalado de seguimiento de destino (AWS


CLI)
UsarAWS CLIDe la manera siguiente, para configurar políticas de escalado de seguimiento de destino para
su grupo de Auto Scaling.

Tareas
• Paso 1: Creación de un grupo de Auto Scaling (p. 142)
• Paso 2: Crear una política de escalado de seguimiento de destino (p. 142)

Paso 1: Creación de un grupo de Auto Scaling


Usarcreate-auto-scaling-groupPara crear un grupo de Auto Scaling denominadomy-asgUso de la
configuración de lanzamientomy-launch-config. Si no dispone de una configuración de inicio que
desee utilizar, puede crear una llamando acreate-launch-configuration.

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


--launch-configuration-name my-launch-config \
--vpc-zone-identifier "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782" \
--max-size 5 --min-size 1

Paso 2: Crear una política de escalado de seguimiento de destino


Después de crear el grupo de Auto Scaling, puede crear una política de escalado de seguimiento de
destino que indique a Amazon EC2 Auto Scaling que aumente y reduzca el número de instancias EC2 en
ejecución en el grupo de manera dinámica cuando cambie la carga en la aplicación.

142
Auto Scaling de Amazon EC2 Guía del usuario
Políticas de escalado de seguimiento de destino

Ejemplo: Archivo de configuración de seguimiento de destino

A continuación, se incluye un ejemplo de configuración de seguimiento de destino que mantiene la


utilización media de la CPU en un 40 por ciento. Guarde esta configuración en un archivo llamado
config.json.

{
"TargetValue": 40.0,
"PredefinedMetricSpecification":
{
"PredefinedMetricType": "ASGAverageCPUUtilization"
}
}

Para obtener más información, consultePredefinedMetricSpecificationen laReferencia de la API de Amazon


EC2 Auto Scaling.

También puede personalizar la métrica utilizada para el escalado mediante la creación de una
especificación de métrica personalizada y la adición de valores para cada parámetro desde CloudWatch.
A continuación, se muestra un ejemplo de configuración de seguimiento de destino que mantiene la
utilización media de la métrica especificada en un 40 por ciento.

{
"TargetValue":40.0,
"CustomizedMetricSpecification":{
"MetricName":"MyUtilizationMetric",
"Namespace":"MyNamespace",
"Dimensions":[
{
"Name":"MyOptionalMetricDimensionName",
"Value":"MyOptionalMetricDimensionValue"
}
],
"Statistic":"Average",
"Unit":"Percent"
}
}

Para obtener más información, consulte CustomizedMetricSpecification en la Referencia de la API de Auto


Scaling de Amazon EC2.

Ejemplo: cpu40-target-tracking-scaling-policy

Usarput-scaling-policy, junto con el comandoconfig.jsonque ha creado anteriormente, para crear una


política de escalado denominadacpu40-target-tracking-scaling-policyEste proceso mantiene la
utilización media de la CPU del grupo de Auto Scaling en un 40 por ciento.

aws autoscaling put-scaling-policy --policy-name cpu40-target-tracking-scaling-policy \


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

Si tiene éxito, este comando devuelve los ARN y nombres de las dos alarmas de CloudWatch creadas en
su nombre.

{
"PolicyARN": "arn:aws:autoscaling:region:account-id:scalingPolicy:228f02c2-c665-4bfd-
aaac-8b04080bea3c:autoScalingGroupName/my-asg:policyName/cpu40-target-tracking-scaling-
policy",
"Alarms": [

143
Auto Scaling de Amazon EC2 Guía del usuario
Directivas de escalado simples y de paso

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

Políticas de escalado simples y de pasos para


Amazon EC2 Auto Scaling
Con el escalado sencillo y por pasos, puede elegir las métricas de escalado y los valores de umbral de las
alarmas de CloudWatch que invocan el proceso de escalado. También puede definir cómo debe escalarse
el grupo de Auto Scaling cuando se infringe un umbral durante un determinado número de períodos de
evaluación.

Se recomienda encarecidamente que utilice una política de escalado de seguimiento de destino para
escalar una métrica, como la utilización media de la CPU o laRequestCountPerTargetdel Application
Load Balancer. Las métricas que disminuyen cuando aumenta la capacidad y aumentan cuando disminuye
la capacidad se pueden usar para realizar el escalado ascendente o descendente proporcionalmente o
en el número de instancias que utilizan el seguimiento de destino. Esto ayuda a garantizar que Amazon
EC2 Auto Scaling siga de cerca la curva de demanda de sus aplicaciones. Para obtener más información,
consulte Políticas de escalado de seguimiento de destino (p. 138). Todavía tiene la opción de usar
escalado por pasos como una política adicional para una configuración más avanzada. Por ejemplo, puede
configurar una respuesta más agresiva cuando se alcance un determinado nivel.

Contenido
• Diferencias entre las políticas de escalado por pasos y las políticas de escalado simple (p. 144)
• Ajustes de pasos para escalar pasos (p. 145)
• Tipos de ajuste de escalado (p. 147)
• Calentamiento de las instancias (p. 148)
• Crear una alarma de CloudWatch (consola) (p. 148)
• Crear directivas de escalado de pasos (consola) (p. 149)
• Cree políticas de escalado y alarmas de CloudWatch (AWS CLI) (p. 151)
• Paso 1: Creación de un grupo de Auto Scaling (p. 151)
• Paso 2: Creación de políticas de escalado (p. 151)
• Políticas de escalado por pasos (p. 151)
• Políticas de escalado sencillas (p. 152)
• Paso 3: Creación de alarmas de CloudWatch (p. 153)

Diferencias entre las políticas de escalado por pasos y las


políticas de escalado simple
Las políticas de escalado por pasos y las políticas de escalado sencillas son dos de las opciones de
escalado dinámico que puede utilizar. Ambas requieren que cree alarmas de CloudWatch para las políticas

144
Auto Scaling de Amazon EC2 Guía del usuario
Directivas de escalado simples y de paso

de escalado. Ambas requieren que especifique los umbrales alto y bajo para las alarmas. Ambas requieren
que defina si desea agregar o quitar instancias, y cuántas, o establecer el grupo en un tamaño exacto.

La principal diferencia entre los tipos de políticas son los ajustes por pasos que se obtienen con las
políticas de escalado por pasos. CuandoAjustes de pasosSi aumenta o disminuye la capacidad actual del
grupo de Auto Scaling, los ajustes varían en función del tamaño de la interrupción de alarma.

En la mayoría de los casos, las políticas de escalado por pasos son una mejor opción que las políticas de
escalado sencillas, incluso si tiene un único ajuste de escalado.

El principal problema del escalado sencillo, es que una vez que comienza una actividad de escalado, la
política debe esperar a que se complete la actividad de escalado o la sustitución de comprobación de
estado y a que finalice el periodo de recuperación (p. 153) para responder a las alarmas adicionales. Los
periodos de recuperación ayudan a evitar que se inicien actividades de escalado adicionales antes de que
los efectos de las actividades anteriores sean visibles.

Por el contrario, con el escalado por pasos, la política puede seguir respondiendo a alarmas adicionales,
incluso mientras se está realizando una actividad de escalado o una sustitución de comprobación de
estado. Por lo tanto, Amazon EC2 Auto Scaling evalúa todas las alarmas de infracción cuando recibe los
mensajes de alarma.

Al principio, Amazon EC2 Auto Scaling únicamente admitía las políticas de escalado sencillo. Si creó su
política de escalado antes de que se incorporaran las políticas de seguimiento de destino y las políticas por
pasos, se tratará como si fuera una política de escalado sencillo.

Ajustes de pasos para escalar pasos


Cuando se crea una política de escalado por pasos, se especifican uno o varios ajustes de pasos que
escalan automáticamente el número de instancias dinámicamente en función del tamaño de la interrupción
de alarma. Cada ajuste por pasos especifica los elementos siguientes:

• El límite inferior del valor de la métrica


• El límite superior del valor de la métrica
• La cantidad que se va a escalar, en función del tipo de ajuste de escalado

CloudWatch agrega los puntos de datos de las métricas en función de la estadística de la métrica asociada
a la alarma de CloudWatch. Cuando se incumple la alarma, se activa la política de escalado adecuada.
Amazon EC2 Auto Scaling aplica el tipo de agregación a los puntos de datos de las métricas más recientes
de CloudWatch (en lugar de a los datos de las métricas sin procesar). También compara este valor
agregado de la métrica con el límite inferior y superior definido por los ajustes por pasos para determinar
qué ajuste por pasos debe realizar.

Usted especifica los límites superiores e inferiores en relación con el umbral de infracción. Por ejemplo,
supongamos que tiene un grupo de Auto Scaling que tiene una capacidad actual y una capacidad deseada
de 10. Tiene una alarma de CloudWatch con un umbral de infracción del 50 por ciento y políticas de
escalado ascendente y políticas de escalado ascendente. Tiene un conjunto de ajustes de pasos con un
tipo de ajuste PercentChangeInCapacity (o Percent of group (Porcentaje de grupo) en la consola) para
cada política:

Ejemplo: Ajustes por pasos para la política de escalado ascendente

Límite inferior Límite superior Ajuste

0 10 0

10 20 10

145
Auto Scaling de Amazon EC2 Guía del usuario
Directivas de escalado simples y de paso

Límite inferior Límite superior Ajuste

20 nulo 30

Ejemplo: Ajustes por pasos para la política de escalado ascendente

Límite inferior Límite superior Ajuste

-10 0 0

-20 -10 -10

nulo -20 -30

Esto crea la siguiente configuración de escalado.

Metric value

-infinity 30% 40% 60% 70% infinity


-----------------------------------------------------------------------
-30% | -10% | Unchanged | +10% | +30%
-----------------------------------------------------------------------

Los siguientes puntos resumen el comportamiento de la configuración de escalado en relación con la


capacidad deseada y actual del grupo:

• La capacidad deseada y actual se mantiene mientras que el valor agregado de la métrica sea superior a
40 e inferior a 60.
• Si el valor de la métrica llega a 60, la capacidad deseada del grupo aumenta en 1 instancia hasta 11
instancias, en función del segundo ajuste por pasos de la política de escalado ascendente (añadir el 10
por ciento de 10 instancias). Una vez que la nueva instancia está en ejecución y ha finalizado el tiempo
de preparación especificado, la capacidad actual del grupo aumenta hasta 11 instancias. Si el valor de la
métrica aumenta a 70 incluso después de este aumento de capacidad, la capacidad deseada del grupo
aumenta en otras 3 instancias, hasta 14 instancias. Este valor se basa en el tercer ajuste por pasos de
la política de escalado ascendente (agregar un 30% de 11 instancias, 3,3 instancias, redondeado a 3
instancias).
• Si el valor de la métrica llega a 40, la capacidad deseada del grupo se reduce en 1 instancia hasta 13
instancias, en función del segundo ajuste por pasos de la política de escalado descendente (quitar el
10 por ciento de 14 instancias, 1,4 instancias, redondeado a 1 instancia). Si el valor de la métrica cae a
30 incluso después de esta disminución de la capacidad, la capacidad deseada del grupo disminuye en
otras 3 instancias, hasta 10 instancias. Este valor se basa en el tercer ajuste por pasos de la política de
escalado descendente (quitar un 30% de 13 instancias, 3,9 instancias, redondeado a 3 instancias).

Cuando especifique los ajustes por pasos de la política de escalado, tenga en cuenta lo siguiente:

• Si utiliza la AWS Management Console, debe especificar los límites superior e inferior como valores
absolutos. Si está usando elAWS CLIPuede especificar los límites superior e inferior en relación con el
umbral de infracción.
• Los intervalos de los ajustes por pasos no se pueden solapar ni contener huecos.
• Solo puede haber un ajuste por pasos con un límite inferior nulo (infinito negativo). Si un ajuste por
pasos tiene un límite inferior negativo, debe haber un ajuste por pasos con un límite inferior nulo.
• Solo puede haber un ajuste por pasos con un límite superior nulo (infinito positivo). Si un ajuste por
pasos tiene un límite superior positivo, debe haber un ajuste por pasos con un límite superior nulo.

146
Auto Scaling de Amazon EC2 Guía del usuario
Directivas de escalado simples y de paso

• Los límites superior e inferior no pueden ser nulos en el mismo ajuste por pasos.
• Si el valor de la métrica es superior al umbral de infracción, el límite inferior es inclusivo y el límite
superior es exclusivo. Si el valor de la métrica es inferior al umbral de infracción, el límite inferior es
exclusivo y el límite superior es inclusivo.

Tipos de ajuste de escalado


Puede definir una política de escalado que realice la acción de escalado idónea en función del tipo de
ajuste de escalado elegido. Puede especificar el tipo de ajuste como porcentaje de la capacidad actual del
grupo de Auto Scaling o en unidades de capacidad. Normalmente, una unidad de capacidad significa una
instancia, a menos que esté utilizando la característica de ponderación de instancias.

Amazon EC2 Auto Scaling admite los siguientes tipos de ajuste de escalado sencillo y por pasos:

• ChangeInCapacity: permite aumentar o reducir la capacidad actual del grupo en el valor especificado.
Un valor positivo aumenta la capacidad y un valor negativo reduce la capacidad. Por ejemplo: Si la
capacidad actual del grupo es 3 y el ajuste es 5, entonces cuando se ejecute esta política, agregamos 5
unidades a la capacidad hasta un total de 8 unidades de capacidad.
• ExactCapacity: permite cambiar la capacidad actual del grupo al valor especificado. Especifique un
valor positivo con este tipo de ajuste. Por ejemplo: Si la capacidad actual del grupo es de 3 y el ajuste es
de 5, cuando se ejecute esta política, cambiamos la capacidad a 5 unidades de capacidad.
• PercentChangeInCapacity: permite aumentar o reducir la capacidad actual del grupo en el
porcentaje especificado. Un valor positivo aumenta la capacidad y un valor negativo reduce la
capacidad. Por ejemplo: Si la capacidad actual del grupo es 10 y el ajuste es del 10 por ciento, entonces
cuando se ejecute esta política, agregamos 1 unidad de capacidad a la capacidad hasta un total de 11
unidades de capacidad.
Note

Si el valor resultante no es un entero, se redondea como se indica a continuación:


• Los valores mayores que 1 se redondean al valor inferior. Por ejemplo, 12.7 se redondea a
12.
• Los valores comprendidos entre 0 y 1 se redondean a 1. Por ejemplo, .67 se redondea a 1.
• Los valores comprendidos entre 0 y -1 se redondean a -1. Por ejemplo, -.58 se redondea a
-1.
• Los valores menores que -1 se redondean al valor superior. Por ejemplo, -6.67 se redondea
a -6.

Con PercentChangeInCapacity, también puede especificar el número mínimo de instancias que


escalar mediante el parámetro MinAdjustmentMagnitude. Suponga, por ejemplo, que crea una política
que agrega un 25 por ciento y especifica un incremento mínimo de 2 instancias. Si tiene un grupo de
Auto Scaling con 4 instancias y se ejecuta la política de escalado, el 25 por ciento de 4 es 1 instancia. Sin
embargo, puesto que ha especificado un incremento mínimo de 2, se añaden 2 instancias.

Cuando se utiliza la ponderación de instancias (p. 73), cambia el efecto de establecer el parámetro
MinAdjustmentMagnitude en un valor distinto de cero. El valor está en unidades de capacidad. Para
establecer el número mínimo de instancias que escalar, establezca este parámetro en un valor que sea al
menos tan grande como la ponderación de instancia más grande.

Si está utilizando la ponderación de instancias, tenga en cuenta que la capacidad actual del grupo de Auto
Scaling puede exceder la capacidad deseada según sea necesario. Si el número absoluto que se va a
disminuir o la cantidad que el porcentaje indica que se va a disminuir, es menor que la diferencia entre
la capacidad actual y la capacidad deseada, no se ejecuta ninguna acción de escalado. Debe tener en
cuenta estos comportamientos cuando observe los resultados de una política de escalado después de
dispararse una alarma. Por ejemplo, supongamos que la capacidad deseada sea 30 y la capacidad actual

147
Auto Scaling de Amazon EC2 Guía del usuario
Directivas de escalado simples y de paso

sea 32. Cuando se activa la alarma, si la política de escalado disminuye la capacidad deseada en 1, no se
ejecuta ninguna acción de escalado.

Calentamiento de las instancias


Si está creando una política por pasos, puede especificar el número de segundos que se tarda en preparar
una instancia recién lanzada. Hasta que finaliza el tiempo de preparación especificado, la instancia no se
tiene en cuenta para las métricas agregadas del grupo de Auto Scaling.

Usando el ejemplo de la sección de Ajustes por pasos, suponga ahora que la métrica llega hasta 60 y
después hasta 62 mientras la nueva instancia sigue en proceso de preparación. La capacidad actual
sigue siendo de 10 instancias, por lo que se añade 1 instancia (10 por ciento de 10 instancias). Sin
embargo, la capacidad deseada del grupo ya tiene 11 instancias y, por lo tanto, la política de escalado no
aumenta más la capacidad deseada. Si la métrica llega a 70 mientras la nueva instancia sigue en proceso
de preparación, deberíamos agregar 3 instancias (el 30 por ciento de 10 instancias). Sin embargo, la
capacidad deseada del grupo es ya 11, por lo que añadimos solo 2 instancias, para una nueva capacidad
deseada de 13 instancias.

Durante el escalado ascendente, no consideramos las instancias que se están preparando como parte de
la capacidad actual del grupo. Por lo tanto, varias interrupciones de alarmas que estén en el intervalo del
mismo ajuste por pasos producirán una sola actividad de escalado. Con esto nos aseguramos de no añadir
más instancias de las que necesita.

Durante el escalado descendente, consideramos las instancias que están terminando como parte de la
capacidad actual del grupo. Por lo tanto, no eliminaremos más instancias del grupo de Auto Scaling que las
necesarias.

Una actividad de escalado descendente no se puede iniciar mientras haya una actividad de escalado
ascendente en curso.

Crear una alarma de CloudWatch (consola)


Puede utilizar el siguiente procedimiento para crear las alarmas de CloudWatch que utiliza Amazon EC2
Auto Scaling para determinar cuándo escalar el grupo de Auto Scaling. Cada alarma de CloudWatch
observa una sola métrica y envía mensajes a Amazon EC2 Auto Scaling cuando la métrica infringe el
umbral de alarma.

Para crear una alarma de CloudWatch que supervise el uso de la CPU

1. Abra la consola de CloudWatch en https://console.aws.amazon.com/cloudwatch/.


2. Si es necesario, cambie la región. En la barra de navegación, seleccione la región donde residen sus
grupos de Auto Scaling.
3. En el panel de navegación, elija Alarmas y, a continuación, elija Crear alarma.
4. Elija Select metric (Seleccionar métrica).
5. En la páginaTodas las métricasPestaña, elijaEC2,Por grupo de Auto ScalingY escriba el nombre
del grupo de Auto Scaling en el campo de búsqueda. A continuación, seleccione CPUUtilization
y elija Seleccionar métrica. Aparece la página Specify metric and conditions (Especificar métrica y
condiciones), que muestra un gráfico y otra información sobre la métrica.
6. En Period (Periodo), elija el periodo de evaluación para la alarma, por ejemplo, 1 minuto. Al evaluar la
alarma, cada periodo se agrega a un punto de datos.
Note

Un periodo más corto crea una alarma con más sensibilidad.


7. En Condiciones, haga lo siguiente:

• En Threshold type (Tipo de umbral), elija Static (Estático).

148
Auto Scaling de Amazon EC2 Guía del usuario
Directivas de escalado simples y de paso

• En Cuando CPUUtilization sea, especifique si desea que el valor de la métrica sea mayor que,
mayor o igual que, menor que, o menor o igual que el umbral para desencadenar la alarma. A
continuación, en than (que), escriba el valor del umbral que desea utilizar para activar la alarma.
8. En Configuración adicional, haga lo siguiente:

• En Puntos de datos para alarma, escriba el número de puntos de datos (periodos de evaluación)
durante los que el valor de la métrica debe cumplir las condiciones del umbral para desencadenar
la alarma. Por ejemplo, dos periodos consecutivos de 5 minutos tardarían 10 minutos en
desencadenar la alarma.
• En Tratamiento de datos faltantes, elija Tratar datos faltantes como incorrectos (umbral de
incumplimiento). Para obtener más información, consulteConfigurar cómo tratan las alarmas de
CloudWatch los datos faltantesen laGuía del usuario de Amazon CloudWatch.
9. Seleccione Siguiente.
10. (Opcional) EnNotificaciónPuede elegir o crear el tema de Amazon SNS que desea utilizar para recibir
notificaciones. De lo contrario, puede quitar la notificación ahora y agregar una más adelante si es
necesario.
11. Elija Next (Siguiente).
12. Escriba un nombre (por ejemplo, Step-Scaling-AlarmHigh-AddCapacity) y, si quiere, una
descripción de la alarma y, a continuación, elija Next (Siguiente).
13. Elija Create alarm (Crear alarma).

Ejemplo: Alarma CloudWatch que se activa cada vez que la CPU infringe el umbral del 80 por ciento

Crear directivas de escalado de pasos (consola)


El siguiente procedimiento muestra cómo usar la consola de Auto Scaling de Amazon EC2 para crear dos
políticas de escalado por pasos: una política de escalado ascendente que aumente la capacidad del grupo
en un 30 por ciento y una política de escalado descendente que reduzca la capacidad del grupo a dos
instancias.

Mientras configura las políticas de escalado, puede crear las alarmas al mismo tiempo. Alternativamente,
puede utilizar alarmas creadas desde la consola de CloudWatch en la sección anterior.

Para crear una política de escalado por pasos para escalado ascendente

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto a su grupo de Auto Scaling.

149
Auto Scaling de Amazon EC2 Guía del usuario
Directivas de escalado simples y de paso

Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto
Scaling) que muestra información sobre el grupo seleccionado.
3. Compruebe que los límites de tamaño mínimo y máximo estén establecidos correctamente. Por
ejemplo, si su grupo ya tiene el tamaño máximo, tendrá que especificar un nuevo valor máximo
de escalado ascendente. Auto Scaling de Amazon EC2 no escalará el grupo de por debajo de la
capacidad mínima ni por encima de la capacidad máxima. Para actualizar el grupo, en la pestaña
Details (Detalles), cambie la configuración actual para la capacidad mínima y máxima.
4. En la páginaEscalado automáticoPestaña, enPolíticas de escalado, elijaCrear directiva de escalado
dinámico.
5. Para definir una política para escalado ascendente (aumentar la capacidad), haga lo siguiente:

a. En Policy type (Tipo de política), elija Step scaling (Escalado de pasos).


b. Especifique un nombre para la política.
c. En Alarma de CloudWatch, elija su alarma. Si todavía no ha creado una alarma, elija Crear una
alarma de CloudWatch y complete Step 4 (p. 148) a través de Step 13 (p. 149) para crear una
alarma que monitoree el uso de la CPU. Establezca el umbral de alarma en un valor mayor o igual
al 80 por ciento.
d. Especifique el cambio en el tamaño de grupo actual que hará esta política cuando se ejecute
utilizando Take the action (Realizar la acción). Puede agregar un número específico de instancias
o un porcentaje del tamaño de grupo existente, o establecer el grupo en un tamaño exacto.

Por ejemplo, elija Add, escriba 30 en el siguiente campo y, a continuación, elija percent of
group. De forma predeterminada, el límite inferior de este ajuste por pasos es el umbral de
alarma y el límite superior es infinito positivo.
e. Para agregar otro paso, elija Add step (Agregar paso) y, a continuación, defina la cantidad por la
que se va a escalar y los límites inferior y superior del paso en relación con el umbral de alarma.
f. Para establecer un número mínimo de instancias que escalar, actualice el campo numérico en
Add capacity units in increments of at least (Agregar unidades de capacidad en incrementos de al
menos) 1 capacity units (unidades de capacidad).
g. Especifique un valor de preparación de instancia paraLas instancias necesitan, lo que le permite
controlar la cantidad de tiempo hasta que una instancia recién lanzada puede contribuir a las
métricas de CloudWatch.
6. Seleccione Create (Crear).

Para crear una política de escalado por pasos para escalado descendente

1. SeleccionarCrear directiva de escalado dinámicoPara continuar donde lo dejó después de crear una
política de escalado horizontal.
2. Para definir una política de escalado descendente (disminuir la capacidad), haga lo siguiente:

a. En Policy type (Tipo de política), elija Step scaling (Escalado de pasos).


b. Especifique un nombre para la política.
c. En Alarma de CloudWatch, elija su alarma. Si todavía no ha creado una alarma, elija Crear una
alarma de CloudWatch y complete Step 4 (p. 148) a través de Step 13 (p. 149) para crear una
alarma que monitoree el uso de la CPU. Establezca el umbral de alarma en un valor inferior o
igual al 40 por ciento.
d. Especifique el cambio en el tamaño de grupo actual que hará esta política cuando se ejecute
utilizando Take the action (Realizar la acción). Puede eliminar un número específico de instancias
o un porcentaje del tamaño de grupo existente, o establecer el grupo en un tamaño exacto.

Por ejemplo, elija Remove, escriba 2 en el siguiente campo y, a continuación, elija capacity
units. De forma predeterminada, el límite superior de este ajuste por pasos es el umbral de
alarma y el límite inferior es infinito negativo.

150
Auto Scaling de Amazon EC2 Guía del usuario
Directivas de escalado simples y de paso

e. Para agregar otro paso, elija Add step (Agregar paso) y, a continuación, defina la cantidad por la
que se va a escalar y los límites inferior y superior del paso en relación con el umbral de alarma.
3. Seleccione Create (Crear).

Cree políticas de escalado y alarmas de CloudWatch (AWS CLI)


UsarAWS CLIDe la manera siguiente, para configurar políticas de escalado simple o por pasos para su
grupo de Auto Scaling.

Tareas
• Paso 1: Creación de un grupo de Auto Scaling (p. 151)
• Paso 2: Creación de políticas de escalado (p. 151)
• Paso 3: Creación de alarmas de CloudWatch (p. 153)

Paso 1: Creación de un grupo de Auto Scaling


Utilice el siguientecreate-auto-scaling-groupPara crear un grupo de Auto Scaling denominadomy-asgUso
de la configuración de lanzamientomy-launch-config. Si no dispone de una configuración de inicio que
desee utilizar, puede crear una llamando acreate-launch-configuration.

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


--launch-configuration-name my-launch-config \
--vpc-zone-identifier "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782" \
--max-size 5 --min-size 1

Paso 2: Creación de políticas de escalado


Puede crear políticas de escalado sencillas o por pasos que indiquen al grupo de Auto Scaling lo que debe
hacer cuando cambie la carga de la aplicación.

Políticas de escalado por pasos

Ejemplo: my-step-scale-out-policy

Utilice el siguienteput-scaling-policyPara crear una política de escalado por pasos denominadamy-


step-scale-out-policy, con un tipo de ajuste dePercentChangeInCapacityque aumenta la
capacidad del grupo de en función de los siguientes ajustes de paso (suponiendo un umbral de alarma de
CloudWatch del 60 por ciento):

• Aumente el recuento de instancias en un 10 por ciento cuando el valor de la métrica sea mayor o igual al
70 por ciento pero inferior al 80 por ciento
• Aumente el recuento de instancias en un 20 por ciento cuando el valor de la métrica sea mayor o igual al
80 por ciento pero inferior al 90 por ciento
• Aumente el recuento de instancias en un 30 por ciento cuando el valor de la métrica sea mayor o igual al
90 por ciento pero inferior al 90 por ciento.

aws autoscaling put-scaling-policy \


--auto-scaling-group-name my-asg \
--policy-name my-step-scale-out-policy \
--policy-type StepScaling \
--adjustment-type PercentChangeInCapacity \
--metric-aggregation-type Average \

151
Auto Scaling de Amazon EC2 Guía del usuario
Directivas de escalado simples y de paso

--step-adjustments
MetricIntervalLowerBound=10.0,MetricIntervalUpperBound=20.0,ScalingAdjustment=10 \

MetricIntervalLowerBound=20.0,MetricIntervalUpperBound=30.0,ScalingAdjustment=20 \
MetricIntervalLowerBound=30.0,ScalingAdjustment=30 \
--min-adjustment-magnitude 1

Registre el nombre de recurso de Amazon (ARN) de la política. Lo necesita para crear una alarma de
CloudWatch para la política.

{
"PolicyARN": "arn:aws:autoscaling:region:123456789012:scalingPolicy:4ee9e543-86b5-4121-
b53b-aa4c23b5bbcc:autoScalingGroupName/my-asg:policyName/my-step-scale-in-policy
}

Ejemplo: my-step-scale-in-policy

Utilice el siguienteput-scaling-policyPara crear una política de escalado por pasos denominadamy-step-


scale-in-policy, con un tipo de ajuste deChangeInCapacityque disminuye la capacidad del grupo
en 2 instancias.

aws autoscaling put-scaling-policy \


--auto-scaling-group-name my-asg \
--policy-name my-step-scale-in-policy \
--policy-type StepScaling \
--adjustment-type ChangeInCapacity \
--step-adjustments MetricIntervalUpperBound=0.0,ScalingAdjustment=-2

Registre el nombre de recurso de Amazon (ARN) de la política. Lo necesita para crear una alarma de
CloudWatch para la política.

{
"PolicyARN": "arn:aws:autoscaling:region:123456789012:scalingPolicy:ac542982-
cbeb-4294-891c-a5a941dfa787:autoScalingGroupName/my-asg:policyName/my-step-scale-out-policy
}

Políticas de escalado sencillas

También puede crear políticas de escalado sencillo utilizando los siguientes comandos de la CLI en lugar
de los anteriores. Tenga en cuenta que se establecerá un periodo de recuperación debido al uso de
políticas de escaldo sencillo.

Ejemplo: my-simple-scale-out-policy

Utilice el siguienteput-scaling-policypara crear una política de escalado simple llamadamy-simple-


scale-out-policy, con un tipo de ajuste dePercentChangeInCapacityque aumenta la capacidad
del grupo en un 30 por ciento.

aws autoscaling put-scaling-policy --policy-name my-simple-scale-out-policy \


--auto-scaling-group-name my-asg --scaling-adjustment 30 \
--adjustment-type PercentChangeInCapacity

Registre el nombre de recurso de Amazon (ARN) de la política. Lo necesita para crear una alarma de
CloudWatch para la política.

Ejemplo: my-simple-scale-in-policy

152
Auto Scaling de Amazon EC2 Guía del usuario
Tiempo de recuperación de escalado

Utilice el siguienteput-scaling-policypara crear una política de escalado simple llamadamy-simple-


scale-in-policy, con un tipo de ajuste deChangeInCapacityque disminuye la capacidad del grupo
en una instancia.

aws autoscaling put-scaling-policy --policy-name my-simple-scale-in-policy \


--auto-scaling-group-name my-asg --scaling-adjustment -1 \
--adjustment-type ChangeInCapacity --cooldown 180

Registre el nombre de recurso de Amazon (ARN) de la política. Lo necesita para crear una alarma de
CloudWatch para la política.

Paso 3: Creación de alarmas de CloudWatch


En el paso 2, creó políticas de escalado que ofrecen instrucciones al grupo de Auto Scaling acerca de
cómo aumentar y reducir las instancias cuando cambien las condiciones especificadas. En este paso,
creará alarmas identificando las métricas que desea vigilar, definiendo las condiciones del escalado y
asociando después las alarmas a las políticas de escalado.

Ejemplo: AddCapacity

Utilice el siguiente CloudWatchput-metric-alarmPara crear una alarma que aumente el tamaño del grupo de
Auto Scaling en función de un valor de umbral de CPU promedio del 60% durante al menos dos periodos
de evaluación consecutivos de dos minutos. Para usar su propia métrica personalizada, especifique su
nombre en --metric-name y su espacio de nombres en --namespace.

aws cloudwatch put-metric-alarm --alarm-name Step-Scaling-AlarmHigh-AddCapacity \


--metric-name CPUUtilization --namespace AWS/EC2 --statistic Average \
--period 120 --evaluation-periods 2 --threshold 60 \
--comparison-operator GreaterThanOrEqualToThreshold \
--dimensions "Name=AutoScalingGroupName,Value=my-asg" \
--alarm-actions PolicyARN

Ejemplo: RemoveCapacity

Utilice el siguiente CloudWatchput-metric-alarmPara crear una alarma que reduzca el tamaño del grupo
de Auto Scaling en función del valor de umbral de CPU promedio del 40% durante al menos dos periodos
de evaluación consecutivos de dos minutos. Para usar su propia métrica personalizada, especifique su
nombre en --metric-name y su espacio de nombres en --namespace.

aws cloudwatch put-metric-alarm --alarm-name Step-Scaling-AlarmLow-RemoveCapacity \


--metric-name CPUUtilization --namespace AWS/EC2 --statistic Average \
--period 120 --evaluation-periods 2 --threshold 40 \
--comparison-operator LessThanOrEqualToThreshold \
--dimensions "Name=AutoScalingGroupName,Value=my-asg" \
--alarm-actions PolicyARN

Reutilización de escalado descendente Amazon EC2


Auto Scaling
Un recuperación de escalado ayuda a evitar que su grupo de Auto Scaling lance o termine instancias
adicionales antes de que los efectos de las actividades anteriores sean visibles.

Cuando se utiliza el escalado sencillo, después de que el grupo de escalAuto Scaling se escale mediante
una política de escalado sencillo, se espera a que finalice un periodo de recuperación antes de que
puedan comenzar otras actividades de escalado. Un periodo de recuperación adecuado ayuda a prevenir

153
Auto Scaling de Amazon EC2 Guía del usuario
Tiempo de recuperación de escalado

el inicio de una actividad de escalado adicional basada en métricas obsoletas. De forma predeterminada,
todas las políticas de escalado sencillo utilizan el periodo de recuperación predeterminado asociado al
grupo de Auto Scaling, pero puede configurar un periodo de recuperación diferente para determinadas
políticas, como se describe en las secciones siguientes. Para obtener más información acerca del escalado
simple, consulte Directivas de escalado simples y de paso (p. 144).
Important

En la mayoría de los casos, una política de escalado de seguimiento de destino o una política de
escalado por pasos es mejor para escalar el rendimiento que esperar a que transcurra un período
de tiempo fijo después de una actividad de escalado. Para una política de escalado que cambie
el tamaño del grupo de Auto Scaling proporcionalmente a medida que el valor de la métrica de
escalado disminuya o aumente, recomendamosSeguimiento de destino . (p. 138)sobre escalado
simple o escalado por pasos.

Durante un período de recuperación, cuando una acción programada comienza a la hora programada o
cuando se inician las actividades de escalado debido al seguimiento de destino o las políticas de escalado
de pasos, pueden desencadenar una actividad de escalado inmediatamente sin esperar a que finalice el
período de recuperación. Si una instancia adopta un estado incorrecto, Amazon EC2 Auto Scaling tampoco
espera a que se complete el periodo de recuperación antes de sustituir la instancia en mal estado.

Cuando escala manualmente el grupo de Auto Scaling, el valor predeterminado no es esperar a que
finalice el periodo de recuperación, pero puede invalidar este comportamiento y respetar el periodo de
recuperación cuando llama a la API.

Contenido
• Periodo de recuperación predeterminado (p. 154)
• Período de reutilización específico de la escala (p. 155)
• Ejemplo de escenario de reutilización de escalado simple (p. 155)
• Periodos de recuperación e instancias múltiples (p. 156)
• Periodos de recuperación y enlaces de ciclo de vida (p. 156)

Periodo de recuperación predeterminado


Un periodo de recuperación predeterminado se aplica automáticamente a todas las actividades de
escalado para las políticas de escalado sencillo y puede solicitar, si lo desea, que se aplique a las
actividades de escalado manual. Puede configurar el periodo de tiempo en función del periodo de
preparación de las instancias u otras necesidades de la aplicación.

Cuando utiliza elAWS Management Consolepara actualizar un grupo de Auto Scaling, o cuando utilice
elAWS CLIPuede definir el parámetro de recuperación predeterminado opcional o un SDK para crear

154
Auto Scaling de Amazon EC2 Guía del usuario
Tiempo de recuperación de escalado

o actualizar un grupo de Auto Scaling. Si no se proporciona un valor para el periodo de recuperación


predeterminado, su valor predeterminado es de 300 segundos.

Para modificar un periodo de recuperación predeterminado (consola)

Cree el grupo de Auto Scaling de la forma habitual. Después de crear el grupo de Auto Scaling, edite el
grupo para especificar el período de recuperación predeterminado.

Para modificar un periodo de recuperación predeterminado (AWS CLI)

Utilice uno de los siguientes comandos:

• create-auto-scaling-group
• update-auto-scaling-group

Período de reutilización específico de la escala


Además de especificar el periodo de recuperación predeterminado para su grupo de Auto Scaling, puede
crear periodos de recuperación que se apliquen a una política de escalado sencillo. Un período de
recuperación específico del escalado invalida el periodo de recuperación predeterminado.

Un uso común para un periodo de recuperación específico del escalado es con una política de escalado
descendente. Como esta política termina instancias, Amazon EC2 Auto Scaling necesita menos tiempo
para determinar si debe terminar instancias adicionales. La terminación de instancias debe ser una
operación mucho más rápida que el lanzamiento de instancias. Por lo tanto, el periodo de recuperación
predeterminado de 300 segundos es demasiado largo. En este caso, un periodo de recuperación
específico del escalado con un valor inferior de 180 segundos para su política de escalado descendente
puede ayudarle a reducir los costos al permitir que el grupo se escale más rápido.

Para especificar un periodo de recuperación específico del escalado, utilice el parámetro de recuperación
opcional al crear o actualizar una política de escalado sencillo. Para obtener más información, consulte
Directivas de escalado simples y de paso (p. 144).

Ejemplo de escenario de reutilización de escalado simple


Considere el siguiente escenario: dispone de una aplicación web que se ejecuta enAWS. Esta aplicación
web se compone de tres niveles básicos: web, aplicación y base de datos. Para asegurarse de que la
aplicación siempre tiene recursos para satisfacer la demanda de tráfico, debe crear dos grupos de Auto
Scaling: uno para la capa web y otro para la capa de aplicación.

Para garantizar que el grupo de la capa de aplicación tenga el número adecuado de instancias EC2,
cree una política de escalado sencillo para escalar ascendente cada vez que el valor de la métrica
de CloudWatch asociada a la política de escalado supere un umbral especificado durante periodos
consecutivos especificados. Cuando la alarma de CloudWatch activa la política de escalado, el grupo de
Auto Scaling se lanza y configura otra instancia.

Estas instancias utilizan un script de configuración para instalar y configurar el software antes de que la
instancia se ponga en servicio. Por tanto, transcurren alrededor de dos o tres minutos desde el momento
en que se lanza la instancia hasta que está completamente en servicio. El tiempo real depende de varios
factores, como el tamaño de la instancia y si hay scripts de inicio que deben completarse.

155
Auto Scaling de Amazon EC2 Guía del usuario
Tiempo de recuperación de escalado

Ahora se produce un pico de tráfico, que hace que se active la alarma de CloudWatch. Cuando esto
sucede, el grupo de Auto Scaling lanza una instancia para ayudar con el aumento de la demanda. Sin
embargo, hay un problema: la instancia tarda un par de minutos en lanzarse. Durante ese tiempo, la
alarma de CloudWatch podría seguir activándose cada minuto para cualquier alarma de resolución
estándar, lo que provocaría que el grupo de Auto Scaling lanzara otra instancia cada vez que se active la
alarma.

Sin embargo, si se dispone de un periodo de recuperación, el grupo de Auto Scaling lanza una instancia
y, a continuación, bloquea las actividades de escalado debido a las políticas de escalado sencillas hasta
que transcurre el tiempo especificado. (El valor predeterminado es de 300 segundos). De este modo, se da
tiempo a las instancias recién lanzadas para que empiecen a controlar el tráfico de la aplicación. Una vez
que finalice el período de recuperación, las actividades de escalado que se activan después del período
de recuperación pueden reanudarse. Si la alarma de CloudWatch de se vuelve a activar, el grupo de Auto
Scaling lanza otra instancia y vuelve a aplicarse el periodo de recuperación. Sin embargo, si la instancia
adicional fue suficiente para reducir la métrica, el grupo permanecerá con su tamaño actual.

Periodos de recuperación e instancias múltiples


En la sección anterior se han proporcionado ejemplos que ilustran cómo afectan los periodos de
recuperación a los grupos de Auto Scaling cuando se lanza o termina una sola instancia. Sin embargo, es
habitual que los grupos de Auto Scaling lancen más de una instancia al mismo tiempo. Por ejemplo, puede
elegir que el grupo de Auto Scaling lance tres instancias cuando se alcance el umbral de una métrica
específica.

Con varias instancias, el periodo de recuperación (tanto el predeterminado como el específico del
escalado) surte efecto a partir del momento en que finaliza el lanzamiento o la terminación de la última
instancia.

Periodos de recuperación y enlaces de ciclo de vida


Tiene la opción de añadir enlaces de ciclo de vida a sus grupos de Auto Scaling. Estos enlaces le permiten
controlar la forma en que las instancias se lanzan y terminan dentro de un grupo de Auto Scaling para
que pueda realizar acciones personalizadas en una instancia antes de que entre en servicio o antes de
que termine. Cuando se produce una acción del ciclo de vida y una instancia entra en estado de espera,
se detienen las actividades de escalado a causa de las políticas de escalado sencillo. Para obtener más
información, consulte Enganches de ciclo de vida de Amazon EC2 Auto Scaling (p. 184).

Los enlaces de ciclo de vida pueden afectar al tiempo de inicio de los periodos de recuperación
configurados para el grupo Auto Scaling. Por ejemplo, suponga que tiene un grupo de Auto Scaling que
tiene un enlace de ciclo de vida que admite una acción personalizada cuando se lanza una instancia.
Cuando la aplicación experimenta un aumento de la demanda debido a una política de escalado sencillo,
el grupo lanza una instancia para agregar capacidad. Como hay un enlace de ciclo de vida, la instancia
se pone en estado Pending:Wait, lo que significa que aún no está disponible para controlar el tráfico.

156
Auto Scaling de Amazon EC2 Guía del usuario
Escalado basado en Amazon SQS

Cuando la instancia entra en el estado de espera, se detienen las actividades de escalado debido a las
políticas de escalado sencillo. Cuando la instancia pasa a tener el estado InService, se inicia el periodo
de recuperación. Cuando finaliza el periodo de recuperación, las actividades de escalado que se activan
después del periodo de recuperación pueden reanudarse.

No todos los tiempos de reutilización se aplican después de la ejecución de los enlaces del ciclo de vida

Normalmente, cuando una instancia está finalizando, el período de recuperación no comienza hasta
después de que la instancia salga del estado Terminating:Wait (una vez finalizada la ejecución del
enlace del ciclo de vida).

Sin embargo, con Elastic Load Balancing, el grupo de Auto Scaling inicia el periodo de recuperación
cuando la instancia de terminación finaliza el vaciado de conexiones (demora por anulación del registro)
por el balanceador de carga y no espera el enlace del ciclo de vida. Esto es útil para grupos que tienen
políticas de escalado simples tanto para escalar como para desescalar. La intención de un período de
recuperación es permitir que la siguiente actividad de escalado ocurra tan pronto como los efectos de las
actividades anteriores sean visibles. Si una instancia está finalizando y, a continuación, la demanda de
la aplicación aumenta repentinamente, cualquier actividad de escalado debido a políticas de escalado
simples que estén en pausa puede reanudarse una vez que se haya agotado el connection draining y
finalice el período de recuperación. De lo contrario, esperar para completar las tres actividades (drenaje
de conexión, gancho de ciclo de vida y período de tiempo de reutilización) aumenta significativamente la
cantidad de tiempo que el grupo Auto Scaling necesita para pausar la escala.

Escalado basado en Amazon SQS


En esta sección se muestra cómo escalar su grupo de Auto Scaling en respuesta a los cambios en la carga
del sistema en una cola de Amazon Simple Queue Service (Amazon SQS). Para obtener más información
acerca de cómo puede utilizar Amazon SQS, consulte laGuía para desarrolladores de Amazon Simple
Queue Service.

Hay algunas situaciones en las que es posible que tenga que pensar en el escalado en respuesta a la
actividad en una cola de Amazon SQS. Por ejemplo, supongamos que tiene una aplicación web que
permite a los usuarios cargar imágenes y utilizarlas en línea. En este escenario, cada imagen requiere
cambiar el tamaño y la codificación antes de poder publicarla. La aplicación se ejecuta en instancias EC2
de un grupo de Auto Scaling y está configurado para tramitar las tasas típicas de carga. Las instancias
con error se terminan y se sustituyen para mantener los niveles de instancia actuales en todo momento.
La aplicación coloca los datos de mapa de bits sin procesar de las imágenes en una cola para su
procesamiento. Procesa las imágenes y, a continuación, publica las imágenes procesadas donde puedan
verlas los usuarios. La arquitectura de este escenario funciona bien si el número de operaciones de carga
de imágenes no varía con el tiempo. Sin embargo, si el número de operaciones de carga cambia con el
tiempo, podría considerar la posibilidad de utilizar el escalado dinámico para escalar la capacidad del
grupo de Auto Scaling.

Utilizar el seguimiento de destino con la métrica correcta


Si utiliza una política de escalado de seguimiento de destino basada en una métrica de cola de Amazon
SQS personalizada, el escalado dinámico puede ajustarse a la curva de demanda de la aplicación de
forma más eficaz. Para obtener más información sobre cómo elegir métricas para el seguimiento de
destino, consulte Elección de métricas (p. 139).

El problema con el uso de una métrica de CloudWatch de Amazon SQS


comoApproximateNumberOfMessagesVisiblePara el seguimiento de destino es que el número de
mensajes en la cola podría no cambiar en proporción al tamaño del grupo de Auto Scaling que procesa los
mensajes de la cola. Eso se debe a que el número de mensajes de su cola de SQS no es el único factor
que define el número de instancias necesarias. El número de instancias del grupo de Auto Scaling puede
controlarse mediante varios factores, como el tiempo que se tarda en procesar un mensaje y la cantidad de
latencia (retraso de la cola) aceptable.

157
Auto Scaling de Amazon EC2 Guía del usuario
Escalado basado en Amazon SQS

La solución es utilizar una métrica de tareas pendientes por instancia con el valor de destino igual a las
tareas pendientes aceptables por instancia que desea mantener. Puede calcular estos números como se
indica a continuación:

• Cargo atrasado por instancia: Para calcular su trabajo atrasado por instancia, comience con
elApproximateNumberOfMessagesPara determinar la longitud de la cola de SQS (número de
mensajes disponibles para recuperación de la cola). Divida ese número por la capacidad de ejecución de
la flota, que para un grupo de Auto Scaling es el número de instancias en elInService, para obtener el
trabajo atrasado por instancia.
• Periodos de recuperación aceptables por instancia: Para calcular su valor de destino, determine en
primer lugar lo que la aplicación puede aceptar en términos de latencia. A continuación, deberá tomar el
valor de latencia aceptable y dividirlo por el tiempo medio que una instancia EC2 tarda en procesar un
mensaje.

Para ilustrarlo con un ejemplo, el ApproximateNumberOfMessages actual es 1500 y la capacidad


de ejecución de la flota es 10. Si el tiempo de procesamiento medio es de 0,1 segundos para cada
mensaje y la mayor latencia aceptable es de 10 segundos, el número de tareas pendientes aceptables por
instancia es de 10/0,1, que equivale a 100. Esto significa que 100 es el valor de destino para su política
de seguimiento de destino. Si la lista de tareas pendientes por instancia se encuentra actualmente en 150
(1500/10), su flota se amplia en cinco instancias para mantener la proporción con el valor de destino.

Los procedimientos siguientes muestran cómo publicar la métrica personalizada y crear la política de
escalado de seguimiento de destino que configura el grupo de Auto Scaling para que el escalado se realice
en función de estos cálculos.

Existen tres puntos principales para esta configuración:

• Un grupo de Auto Scaling para administrar las instancias EC2 para procesar mensajes de una cola de
SQS.
• Una métrica personalizada para enviar a Amazon CloudWatch que mide el número de mensajes de la
cola por instancia EC2 en el grupo de Auto Scaling.
• Una política de seguimiento de destino que configura su grupo de Auto Scaling para escalar basándose
en la métrica personalizada y un valor de destino establecido. Las alarmas de CloudWatch invocan la
política de escalado.

El siguiente diagrama ilustra la arquitectura de esta configuración.

158
Auto Scaling de Amazon EC2 Guía del usuario
Escalado basado en Amazon SQS

Limitaciones y requisitos previos


Para utilizar esta configuración, debe tener en cuenta las siguientes limitaciones:

• Debe utilizar elAWS CLIPara publicar su métrica personalizada en CloudWatch. A continuación, puede
monitorizar su métrica con la AWS Management Console.
• Después de publicar la métrica personalizada, debe usar la herramientaAWS CLIO un SDK para crear
una política de escalado de seguimiento de destino con una especificación de métrica personalizada.

Las siguientes secciones explican cómo usar la AWS CLI para las tareas que necesita realizar. Por
ejemplo, para obtener datos de métrica que reflejen el uso actual de la cola, utilice elget-queue-
attributescomando. Asegúrese de que ha instalado y configurado la CLI.

Antes de comenzar, debe disponer de una cola de Amazon SQS para utilizar. En las siguientes secciones
se presupone que ya tiene una cola (estándar o FIFO), un grupo de Auto Scaling e instancias EC2
ejecutándose en la aplicación que utiliza la cola. Para obtener más información acerca de Amazon SQS,
consulte laGuía para desarrolladores de Amazon Simple Queue Service.

Configurar el escalado basado en Amazon SQS


Tareas
• Paso 1: Crear una métrica personalizada de CloudWatch (p. 159)
• Paso 2: Crear una política de escalado de seguimiento de destino (p. 160)
• Paso 3: Probar su política de escalado (p. 161)

Paso 1: Crear una métrica personalizada de CloudWatch


Una métrica personalizada se define mediante un nombre de métrica y un espacio de nombres de su
elección. Los espacios de nombres para métricas personalizadas no pueden comenzar conAWS/. Para
obtener más información acerca de la publicación de métricas personalizadas, consulte laPublicar métricas
personalizadasEl tema deGuía del usuario de Amazon CloudWatch.

Siga este procedimiento para crear la métrica personalizada leyendo primero la información de su
cuenta de AWS. A continuación, calcule las tareas pendientes para cada métrica de instancia, tal como
se recomienda en una sección anterior. Por último, publique este número en CloudWatch con una
periodicidad de un minuto. Siempre que sea posible, le recomendamos que cuando realizado el escalado
basado en métricas, utilice una granularidad de un minuto para garantizar una respuesta más rápida a los
cambios en la carga del sistema.

Para crear una métrica personalizada de CloudWatch

1. Utilice la SQSget-queue-attributesPara obtener el número de mensajes en espera en la cola


(ApproximateNumberOfMessages).

aws sqs get-queue-attributes --queue-url https://sqs.region.amazonaws.com/123456789/


MyQueue \
--attribute-names ApproximateNumberOfMessages

2. Utilice el comando describe-auto-scaling-groups para obtener la capacidad de ejecución del grupo,


que es el número de instancias que tienen el estado de ciclo de vida InService. Este comando
devuelve las instancias de un grupo de Auto Scaling junto con su estado de ciclo de vida.

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

3. Calcule las tareas pendientes por instancia dividiendo el número aproximado de mensajes disponibles
para su recuperación de la cola por la capacidad de ejecución de la flota.

159
Auto Scaling de Amazon EC2 Guía del usuario
Escalado basado en Amazon SQS

4. Publique los resultados con un nivel de detalle de un minuto como una métrica personalizada de
CloudWatch.

A continuación se muestra un ejemplo de CLIput-metric-datacomando.

aws cloudwatch put-metric-data --metric-name MyBacklogPerInstance --


namespace MyNamespace \
--unit None --value 20 --
dimensions MyOptionalMetricDimensionName=MyOptionalMetricDimensionValue

Después de que la aplicación emita la métrica deseada, los datos se envían a CloudWatch. La métrica
está visible en la consola de CloudWatch. Puede acceder a ella iniciando sesión en laAWS Management
Consoley navegar a la página CloudWatch. A continuación, puede ver la métrica desplazándose a la
página de métricas o buscándola usando el campo de búsqueda. Para obtener información sobre cómo ver
las métricas de, consulte.Ver métricas disponiblesen laGuía del usuario de Amazon CloudWatch.

Paso 2: Crear una política de escalado de seguimiento de destino


Después de publicar la métrica personalizada, cree una política de escalado de seguimiento de destino
con una especificación de métrica personalizada.

Para crear una política de escalado de seguimiento de destino

1. Utilice el siguiente comando para especificar un valor de destino para su política de escalado en un
archivo config.json del directorio principal.

Para el TargetValue, calcule las tareas pendientes aceptables por cada métrica de instancia e
introdúzcala aquí. Para calcular este número, decida un valor de latencia normal y divídalo por el
tiempo medio que se tarda en procesar un mensaje.

$ cat ~/config.json
{
"TargetValue":100,
"CustomizedMetricSpecification":{
"MetricName":"MyBacklogPerInstance",
"Namespace":"MyNamespace",
"Dimensions":[
{
"Name":"MyOptionalMetricDimensionName",
"Value":"MyOptionalMetricDimensionValue"
}
],
"Statistic":"Average",
"Unit":"None"
}
}

2. Usarput-scaling-policy, junto con el comandoconfig.jsonEl archivo creado en el paso anterior, para


crear la política de escalado.

aws autoscaling put-scaling-policy --policy-name sqs100-target-tracking-scaling-policy


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

Esto crea dos alarmas: una para el escalado ascendente y otra para el escalado descendente.
También devuelve el Nombre de recurso de Amazon (ARN) de la política que se registra con
CloudWatch, que CloudWatch, utiliza para invocar el escalado siempre que la métrica se incumple.

160
Auto Scaling de Amazon EC2 Guía del usuario
Verificación de una actividad de escalado

Paso 3: Probar su política de escalado


Una vez que finalice la configuración, verifique que la política de escalado funcione. Puede probarla
aumentando el número de mensajes en la cola de SQS y asegúrese después de que el grupo de Auto
Scaling ha lanzado una instancia EC2 adicional. También puede probarla reduciendo el número de
mensajes en la cola de SQS y asegurándose después de que el grupo de Auto Scaling haya terminado
una instancia EC2.

Para probar la función de escalado descendente

1. Siga los pasos deTutorial: Enviar un mensaje a una cola de Amazon SQSPara agregar mensajes a su
cola de. Asegúrese de que ha aumentado el número de mensajes en la cola de forma que las tareas
pendientes por cada métrica de instancia supere el valor de destino.

Este proceso puede tardar unos minutos hasta que los cambios activen la alarma de CloudWatch.
2. Usardescribe-auto-scaling-groupsPara verificar que el grupo ha lanzado una instancia.

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

Para probar la función de escalado descendente

1. Siga los pasos deTutorial: Enviar un mensaje a una cola de Amazon SQSPara eliminar mensajes de
la cola. Asegúrese de que ha disminuido el número de mensajes en la cola de forma que las tareas
pendientes por cada métrica de instancia esté por debajo del valor de destino.

Este proceso puede tardar unos minutos hasta que los cambios activen la alarma de CloudWatch.
2. Usardescribe-auto-scaling-groupsPara verificar que el grupo ha terminado una instancia.

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

Verificando una actividad de escalado para un grupo


de Auto Scaling
Una vez creada una política de escalado, Amazon EC2 Auto Scaling comienza a evaluar la política con
respecto a la métrica. La alarma de la métrica pasa al estado ALARM cuando la métrica supera el umbral
durante un número especificado de periodos de evaluación. Esto significa que una política de escalado
podría activar una acción de escalado poco después de crearla. Cuando Amazon EC2 Auto Scaling
cambie la capacidad en respuesta a una política de escalado, puede verificar la actividad de escalado en
su cuenta. Si desea recibir una notificación por correo electrónico de Amazon EC2 Auto Scaling que le
informe de que se ha activado una acción de escalado, siga las instrucciones deObtener notificaciones de
Amazon SNS cuando su grupo de Auto Scaling se escala (p. 259).

Para ver las actividades de escalado de un grupo de Auto Scaling(consola)

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto al grupo de Auto Scaling.

Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto
Scaling) que muestra información sobre el grupo seleccionado.
3. En la páginaActividad, enHistorial de actividad, elEstadoMuestra si su grupo de Auto Scaling ha
lanzado las instancias o las ha terminado correctamente.

161
Auto Scaling de Amazon EC2 Guía del usuario
Deshabilitar una política de escalado

4. En la páginaAdministración de instancias, enInstancias, elCiclo de vidacontiene el estado de las


instancias. La instancia tarda poco tiempo en lanzarse. Una vez que se inicia la instancia, su estado
de ciclo de vida cambia a InService.

La columna Health status (Estado) muestra el resultado de la comprobación de estado de instancias


EC2 correspondiente a su instancia.

Para ver las actividades de escalado de un grupo de Auto Scaling (AWS CLI)

Utilice el siguientedescribir-escalar-actividadescomando.

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

A continuación, se muestra un ejemplo del resultado.

Las actividades de escalado se ordenan por hora de inicio. En primer lugar, se describen las actividades
aún en curso.

{
"Activities": [
{
"ActivityId": "5e3a1f47-2309-415c-bfd8-35aa06300799",
"AutoScalingGroupName": "my-asg",
"Description": "Terminating EC2 instance: i-06c4794c2499af1df",
"Cause": "At 2020-02-11T18:34:10Z a monitor alarm TargetTracking-my-asg-AlarmLow-
b9376cab-18a7-4385-920c-dfa3f7783f82 in state ALARM triggered policy my-target-tracking-
policy changing the desired capacity from 3 to 2. At 2020-02-11T18:34:31Z an instance
was taken out of service in response to a difference between desired and actual capacity,
shrinking the capacity from 3 to 2. At 2020-02-11T18:34:31Z instance i-06c4794c2499af1df
was selected for termination.",
"StartTime": "2020-02-11T18:34:31.268Z",
"EndTime": "2020-02-11T18:34:53Z",
"StatusCode": "Successful",
"Progress": 100,
"Details": "{\"Subnet ID\":\"subnet-5ea0c127\",\"Availability Zone\":\"us-west-2a
\"...}",
"AutoScalingGroupARN": "arn:aws:autoscaling:us-
west-2:123456789012:autoScalingGroup:283179a2-
f3ce-423d-93f6-66bb518232f7:autoScalingGroupName/my-asg"
},
...
]
}

Para obtener información acerca de los tipos de errores que puede encontrar y cómo gestionarlos,
consulteSolución de problemas de Auto Scaling de Amazon EC2 (p. 309).

Deshabilitar una política de escalado para un grupo de


Auto Scaling
En este tema se describe cómo deshabilitar temporalmente una política de escalado para que no inicie
cambios en el número de instancias que contiene el grupo de Auto Scaling. Cuando deshabilita una
política de escalado, los detalles de configuración se conservan, de modo que puede volver a habilitar
rápidamente la política. Esto es más fácil que eliminar temporalmente una política cuando no la necesita y
volver a crearla más tarde.

Cuando se deshabilita una política de escalado automática, el grupo de Auto Scaling no realiza el escalado
ascendente o descendente para las alarmas de métrica que se incumplen mientras la política de escalado
está deshabilitada. Sin embargo, las actividades de escalado que siguen en curso no se detienen.

162
Auto Scaling de Amazon EC2 Guía del usuario
Deshabilitar una política de escalado

Tenga en cuenta que las políticas de escalado deshabilitadas siguen teniendo en cuenta para las cuotas
en el número de políticas de escalado que puede agregar a un grupo de Auto Scaling.

Para deshabilitar una política de escalado(consola)

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto al grupo de Auto Scaling.

Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto
Scaling) que muestra información sobre el grupo seleccionado.
3. En la pestaña Automatic scaling (Escalado automático), en Scaling policies (Políticas de escalado),
seleccione una política de escalado y, a continuación, elija Actions (Acciones), Disable (Deshabilitar).

Cuando esté listo para volver a habilitar la política de escalado, repita estos pasos y, a continuación, elija
Actions (Acciones), Enable (Habilitar). Después de volver a habilitar una política de escalado, el grupo de
Auto Scaling puede iniciar inmediatamente una acción de escalado si hay alguna alarma actualmente en
estado ALARMA.

Para deshabilitar una política de escalado (AWS CLI)

Usarput-scaling-policycon el comando--no-enabledde la siguiente manera. Especifique todas las


opciones en el comando tal como las especificaría al crear la política.

aws autoscaling put-scaling-policy --auto-scaling-group-name my-asg \


--policy-name my-scaling-policy --policy-type TargetTrackingScaling \
--estimated-instance-warmup 360 \
--target-tracking-configuration '{ "TargetValue": 70, "PredefinedMetricSpecification":
{ "PredefinedMetricType": "ASGAverageCPUUtilization" } }' \
--no-enabled

Para volver a habilitar una política de escalado (AWS CLI)

Usarput-scaling-policycon el comando--enabledde la siguiente manera. Especifique todas las opciones


en el comando tal como las especificaría al crear la política.

aws autoscaling put-scaling-policy --auto-scaling-group-name my-asg \


--policy-name my-scaling-policy --policy-type TargetTrackingScaling \
--estimated-instance-warmup 360 \
--target-tracking-configuration '{ "TargetValue": 70, "PredefinedMetricSpecification":
{ "PredefinedMetricType": "ASGAverageCPUUtilization" } }' \
--enabled

Para describir una política de escalado (AWS CLI)

Usardescripción-políticasPara verificar el estado habilitado de una política de escalado.

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


--policy-names my-scaling-policy

A continuación, se muestra un ejemplo del resultado.

{
"ScalingPolicies": [
{
"AutoScalingGroupName": "my-asg",
"PolicyName": "my-scaling-policy",

163
Auto Scaling de Amazon EC2 Guía del usuario
Eliminación de una política de escalado

"PolicyARN": "arn:aws:autoscaling:us-
west-2:123456789012:scalingPolicy:1d52783a-b03b-4710-
bb0e-549fd64378cc:autoScalingGroupName/my-asg:policyName/my-scaling-policy",
"PolicyType": "TargetTrackingScaling",
"StepAdjustments": [],
"Alarms": [
{
"AlarmName": "TargetTracking-my-asg-AlarmHigh-9ca53fdd-7cf5-4223-938a-
ae1199204502",
"AlarmARN": "arn:aws:cloudwatch:us-
west-2:123456789012:alarm:TargetTracking-my-asg-AlarmHigh-9ca53fdd-7cf5-4223-938a-
ae1199204502"
},
{
"AlarmName": "TargetTracking-my-asg-AlarmLow-7010c83d-d55a-4a7a-
abe0-1cf8b9de6d6c",
"AlarmARN": "arn:aws:cloudwatch:us-
west-2:123456789012:alarm:TargetTracking-my-asg-AlarmLow-7010c83d-d55a-4a7a-
abe0-1cf8b9de6d6c"
}
],
"TargetTrackingConfiguration": {
"PredefinedMetricSpecification": {
"PredefinedMetricType": "ASGAverageCPUUtilization"
},
"TargetValue": 70.0,
"DisableScaleIn": false
},
"Enabled": true
}
]
}

Eliminación de una política de escalado


Puede eliminar una política de escalado cuando ya no la necesite. En función del tipo de política de
escalado, es posible que también tenga que eliminar las alarmas de CloudWatch. Al eliminar una política
de escalado de seguimiento de destino, también se eliminan las alarmas de CloudWatch asociadas.
Eliminar una política de escalado por pasos o una política de escalado sencilla elimina la acción de alarma
subyacente, pero no elimina la alarma de CloudWatch, aunque ya no tenga una acción asociada.

Para eliminar una política de escalado(consola)

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto al grupo de Auto Scaling.

Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto
Scaling) que muestra información sobre el grupo seleccionado.
3. En la pestaña Automatic scaling (Escalado automático), en Scaling policies (Políticas de escalado),
seleccione una política de escalado y, a continuación, elija Actions (Acciones), Delete (Eliminar).
4. Cuando se le indique que confirme, seleccione Yes, Delete.
5. (Opcional) Si ha eliminado una política de escalado por pasos o una política de escalado sencilla, siga
estos pasos para eliminar la alarma de CloudWatch que se asoció a la política. Puede omitir estos
pasos secundarios para mantener la alarma para uso futuro.

a. Abra la consola de CloudWatch en https://console.aws.amazon.com/cloudwatch/.


b. En el panel de navegación, elija Alarms.
c. Elija la alarma (por ejemplo, Step-Scaling-AlarmHigh-AddCapacity) y elija Action (Acción),
Delete (Eliminar).

164
Auto Scaling de Amazon EC2 Guía del usuario
Eliminación de una política de escalado

d. Cuando se le pida confirmación, elija Delete (Eliminar).

Para obtener las políticas de escalado de un grupo de Auto Scaling (AWS CLI)

Antes de eliminar una política de escalado, utilice la siguientedescripción-políticasPara ver qué políticas
de escalado se crearon para el grupo de Auto Scaling. Puede utilizar la salida al eliminar la política y las
alarmas de CloudWatch.

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

Puede filtrar los resultados por el tipo de política de escalado mediante el parámetro --query. Esta
sintaxis de query funciona en Linux y MacOS. En Windows, cambie la comillas simples por comillas
dobles.

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


--query 'ScalingPolicies[?PolicyType==`TargetTrackingScaling`]'

A continuación, se muestra un ejemplo del resultado.

[
{
"AutoScalingGroupName": "my-asg",
"PolicyName": "cpu40-target-tracking-scaling-policy",
"PolicyARN": "PolicyARN",
"PolicyType": "TargetTrackingScaling",
"StepAdjustments": [],
"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"
}
],
"TargetTrackingConfiguration": {
"PredefinedMetricSpecification": {
"PredefinedMetricType": "ASGAverageCPUUtilization"
},
"TargetValue": 40.0,
"DisableScaleIn": false
},
"Enabled": true
}
]

Para eliminar una política de escalado (AWS CLI)

Utilice el siguientedelete-policycomando.

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


--policy-name cpu40-target-tracking-scaling-policy

Para eliminar la alarma de CloudWatch (AWS CLI)

165
Auto Scaling de Amazon EC2 Guía del usuario
AWS CLIEjemplos de políticas de escalado

Para políticas de escalado por pasos y sencillas, utilice laeliminar alarmasPara eliminar la alarma de
CloudWatch asociada a la política. Puede omitir este paso si desea mantener la alarma para usarla en
el futuro. Puede eliminar una o más alarmas a la vez. Por ejemplo, utilice el siguiente comando para
eliminar las alarmas Step-Scaling-AlarmHigh-AddCapacity y Step-Scaling-AlarmLow-
RemoveCapacity.

aws cloudwatch delete-alarms --alarm-name Step-Scaling-AlarmHigh-AddCapacity Step-Scaling-


AlarmLow-RemoveCapacity

Ejemplo de directivas de escalado para elAWS


Command Line Interface(AWS CLI)
Puede crear políticas de escalado para Amazon EC2 Auto Scaling a través de laAWS Management
Console,AWS CLI, o SDK.

En los siguientes ejemplos se muestra cómo crear políticas de escalado para Amazon EC2 Auto Scaling
con elAWS CLI put-scaling-policycomando. Para obtener ejercicios introductorios sobre la creación de
políticas de escalado con la AWS CLI, consulte Políticas de escalado de seguimiento de destino (p. 138)
y Directivas de escalado simples y de paso (p. 144).

Ejemplo 1: Para aplicar una política de escalado de seguimiento de destino con una especificación de
métrica predefinida

aws autoscaling put-scaling-policy --policy-name cpu40-target-tracking-scaling-policy \


--auto-scaling-group-name my-asg --policy-type TargetTrackingScaling \
--target-tracking-configuration file://config.json
{
"TargetValue": 40.0,
"PredefinedMetricSpecification": {
"PredefinedMetricType": "ASGAverageCPUUtilization"
}
}

Ejemplo 2: Para aplicar una política de escalado de seguimiento de destino con una especificación de
métrica personalizada

aws autoscaling put-scaling-policy --policy-name sqs100-target-tracking-scaling-policy \


--auto-scaling-group-name my-asg --policy-type TargetTrackingScaling \
--target-tracking-configuration file://config.json
{
"TargetValue": 100.0,
"CustomizedMetricSpecification": {
"MetricName": "MyBacklogPerInstance",
"Namespace": "MyNamespace",
"Dimensions": [{
"Name": "MyOptionalMetricDimensionName",
"Value": "MyOptionalMetricDimensionValue"
}],
"Statistic": "Average",
"Unit": "None"
}
}

Ejemplo 3: Para aplicar una política de escalado de seguimiento de destino solo para escalado horizontal

aws autoscaling put-scaling-policy --policy-name alb1000-target-tracking-scaling-policy \


--auto-scaling-group-name my-asg --policy-type TargetTrackingScaling \

166
Auto Scaling de Amazon EC2 Guía del usuario
AWS CLIEjemplos de políticas de escalado

--target-tracking-configuration file://config.json
{
"TargetValue": 1000.0,
"PredefinedMetricSpecification": {
"PredefinedMetricType": "ALBRequestCountPerTarget",
"ResourceLabel": "app/my-alb/778d41231b141a0f/targetgroup/my-alb-target-
group/943f017f100becff"
},
"DisableScaleIn": true
}

Ejemplo 4: Para aplicar una política de escalado por pasos para escalado ascendente

aws autoscaling put-scaling-policy \


--auto-scaling-group-name my-asg \
--policy-name my-step-scale-out-policy \
--policy-type StepScaling \
--adjustment-type PercentChangeInCapacity \
--metric-aggregation-type Average \
--step-adjustments
MetricIntervalLowerBound=10.0,MetricIntervalUpperBound=20.0,ScalingAdjustment=10 \

MetricIntervalLowerBound=20.0,MetricIntervalUpperBound=30.0,ScalingAdjustment=20 \
MetricIntervalLowerBound=30.0,ScalingAdjustment=30 \
--min-adjustment-magnitude 1

Registre el nombre de recurso de Amazon (ARN) de la política. Necesitará el ARN para poder crear la
alarma de CloudWatch.

Ejemplo 5: Para aplicar una política de escalado por pasos para escalado descendente

aws autoscaling put-scaling-policy \


--auto-scaling-group-name my-asg \
--policy-name my-step-scale-in-policy \
--policy-type StepScaling \
--adjustment-type ChangeInCapacity \
--step-adjustments MetricIntervalUpperBound=0.0,ScalingAdjustment=-2

Registre el nombre de recurso de Amazon (ARN) de la política. Necesitará el ARN para poder crear la
alarma de CloudWatch.

Ejemplo 6: Para aplicar una política de escalado sencillo para escalado ascendente

aws autoscaling put-scaling-policy --policy-name my-simple-scale-out-policy \


--auto-scaling-group-name my-asg --scaling-adjustment 30 \
--adjustment-type PercentChangeInCapacity --min-adjustment-magnitude 2

Registre el nombre de recurso de Amazon (ARN) de la política. Necesitará el ARN para poder crear la
alarma de CloudWatch.

Ejemplo 7: Para aplicar una política de escalado sencillo para escalado descendente

aws autoscaling put-scaling-policy --policy-name my-simple-scale-in-policy \


--auto-scaling-group-name my-asg --scaling-adjustment -1 \
--adjustment-type ChangeInCapacity --cooldown 180

Registre el nombre de recurso de Amazon (ARN) de la política. Necesitará el ARN para poder crear la
alarma de CloudWatch.

167
Auto Scaling de Amazon EC2 Guía del usuario
Escalado predictivo

Escaling predictivo para Amazon EC2 Auto Scaling


Utilice el escalado predictivo para aumentar el número de instancias EC2 en su grupo Auto Scaling antes
de los patrones diarios y semanales en los flujos de tráfico.

El escalado predictivo es adecuado para situaciones en las que tiene:

• El tráfico cíclico, como el uso elevado de recursos durante las horas laborables y el uso reducido de
recursos durante las tardes y fines de semana
• Patrones recurrentes de carga de trabajo de activación y desactivación, como procesamiento por lotes,
pruebas o análisis periódicos de datos
• Las aplicaciones que tardan mucho tiempo en inicializarse, lo que provoca un notable impacto de
latencia en el rendimiento de las aplicaciones durante eventos de escalabilidad horizontal

En general, si tiene patrones regulares de aumentos de tráfico y aplicaciones que tardan mucho tiempo
en inicializarse, debe considerar el uso de escalado predictivo. El escalado predictivo puede ayudarle a
escalar más rápido al lanzar la capacidad antes de la carga prevista, en comparación con el uso de solo
escalado dinámico, que es de naturaleza reactiva. El escalado predictivo también puede ahorrarle dinero
en su factura de EC2, ya que le ayuda a evitar la necesidad de aprovisionar en exceso la capacidad.

Por ejemplo, considere una aplicación que tenga un uso alto durante el horario laboral y bajo uso durante
la noche. Al comienzo de cada día laborable, el escalado predictivo puede agregar capacidad antes de la
primera afluencia de tráfico. Esto ayuda a su aplicación a mantener una alta disponibilidad y performance
al pasar de un período de menor utilización a un período de mayor utilización. No tiene que esperar a que
el escalado dinámico reaccione a los cambios de tráfico. Tampoco tiene que dedicar tiempo a revisar los
patrones de carga de su aplicación e intentar programar la cantidad correcta de capacidad mediante el
escalado programado.

UsarAWS Management Console, elAWS CLIo uno de los SDK para agregar una política de escalado
predictivo a cualquier grupo de Auto Scaling.

Contenido
• Funcionamiento del escalado predictivo (p. 168)
• Prácticas recomendadas (p. 169)
• Crear una política de escalado predictivo (consola) (p. 169)
• Cree una política de escalado predictivo (AWS CLI) (p. 171)
• Limitations (p. 173)
• Exploración de datos y previsión (p. 173)
• Anular valores de previsión mediante acciones programadas (p. 175)

Funcionamiento del escalado predictivo


El escalado predictivo utiliza el aprendizaje automático para predecir los requisitos de capacidad en
función de los datos históricos de CloudWatch. El algoritmo de aprendizaje automático consume los datos
históricos disponibles y calcula la capacidad que mejor se ajusta al patrón de carga histórico, y luego
aprende continuamente basándose en nuevos datos para hacer previsiones futuras más precisas.

Para utilizar el escalado predictivo, primero debe crear una política de escalado con un par de métricas y
una utilización de destino. La creación de Forecast se inicia inmediatamente después de crear la política
si hay al menos 24 horas de datos históricos. El escalado predictivo busca patrones en los datos métricos
de CloudWatch de los 14 días anteriores para crear una previsión horaria para las próximas 48 horas.
Los datos de Forecast se actualizan diariamente en función de los datos de métricas más recientes de
CloudWatch.

168
Auto Scaling de Amazon EC2 Guía del usuario
Prácticas recomendadas

Puede configurar el escalado predictivo enSólo previsiónpara que pueda evaluar la previsión antes
de permitir el escalado predictivo para escalar activamente la capacidad. A continuación, puede ver
la previsión y los datos de métricas recientes de CloudWatch en forma de gráfico desde la consola de
Amazon EC2 Auto Scaling. También puede obtener acceso a los datos de previsión mediante laAWS CLIo
uno de los SDK de.

Cuando esté listo para comenzar a escalar con escalado predictivo, cambie la directiva deSólo
previsiónModo dePrevisión y escalaModo. Después de cambiar aPrevisión y escala, el grupo Auto Scaling
comienza a escalar en función de la previsión.

Mediante la previsión, Amazon EC2 Auto Scaling escala el número de instancias al principio de cada hora:

• Si la capacidad real es inferior a la capacidad prevista, Amazon EC2 Auto Scaling escala su grupo de
Auto Scaling para que su capacidad deseada sea igual a la capacidad prevista.
• Si la capacidad real es mayor que la capacidad prevista, Amazon EC2 Auto Scaling no escalará la
capacidad.
• Los valores que establezca para la capacidad mínima y máxima del grupo Auto Scaling se respetan si la
capacidad prevista está fuera de este rango.

Prácticas recomendadas
• Confirme si el escalado predictivo es adecuado para su carga de trabajo. Una carga de trabajo es un
buen ajuste para el escalado predictivo si presenta patrones de carga recurrentes específicos del día
de la semana o de la hora del día. Para comprobar esto, configure las políticas de escalado predictivo
enSólo previsiónModo.
• Evalúe la previsión y su precisión antes de permitir que el escalado predictivo escale activamente
su aplicación. Para iniciar la previsión, el escalado predictivo necesita al menos 24 horas de datos
históricos. Sin embargo, los pronósticos son más efectivos si los datos históricos abarcan las dos
semanas completas. Si actualiza la aplicación creando un nuevo grupo de Auto Scaling y eliminando el
anterior, el nuevo grupo de Auto Scaling necesita 24 horas de datos de carga históricos antes de que el
escalado predictivo pueda volver a generar pronósticos. En este caso, es posible que tenga que esperar
unos días para obtener una previsión más precisa.
• Cree varias políticas de escalado predictivo enSólo previsiónpara probar los efectos potenciales de
diferentes métricas. Puede crear varias directivas de escalado predictivo para cada grupo de Auto
Scaling, pero sólo una de las directivas se puede utilizar para el escalado activo.
• Si elige un par de métricas personalizadas, debe definir sus métricas. No puede usar métricas
personalizadas, pero puede usar una combinación diferente de métrica de carga y métrica de escala.
Para evitar problemas, asegúrese de que la métrica de carga que elija representa la carga completa de
la aplicación.
• Utilice escalado predictivo con escalado dinámico. El escalado dinámico se utiliza para escalar
automáticamente la capacidad en respuesta a los cambios en la utilización de recursos. Su uso con
escalado predictivo le ayuda a seguir de cerca la curva de demanda de su aplicación, escalando durante
períodos de bajo tráfico y escalando hacia fuera cuando el tráfico es mayor de lo esperado. Cuando
varias directivas de escalado están activas, cada directiva determina la capacidad deseada de forma
independiente y la capacidad deseada se establece en el máximo de ellas. Por ejemplo, si se requieren
10 instancias para permanecer en la utilización de destino en una política de escalado de seguimiento
de destino y se requieren 8 instancias para permanecer en la utilización de destino en una política de
escalado predictivo, entonces la capacidad deseada del grupo se establece en 10.

Crear una política de escalado predictivo (consola)


Puede configurar directivas de escalado predictivo en un grupo de Auto Scaling después de crear el grupo.

169
Auto Scaling de Amazon EC2 Guía del usuario
Crear una política de escalado predictivo (consola)

Para crear una política de escalado predictivo

1. Abra la consola de Auto Scaling de Amazon EC2 enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación junto a su grupo de Auto Scaling.

Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto
Scaling) que muestra información sobre el grupo seleccionado.
3. En la páginaEscalado automático, enPolíticas de escalado, elijaCrear una política de escalado
predictivo.
4. Para definir una política, haga lo siguiente:

a. Introduzca un nombre para la política.


b. ActivarEscalado según las previsionespara conceder permiso a Amazon EC2 Auto Scaling para
empezar a escalar de inmediato.

Para mantener la directiva enSólo previsiónen modo, conserveEscalado según las


previsionesDesactivado.
c. ParaMétricasElija sus métricas en la lista de opciones. Las opciones sonCPU,Entrada de
red,Salida de red,Recuento Application Load Balancer, yPar de métricas personalizadas.

Si eligióRecuento Application Load Balancer de aplicaciones por destinoElija, a continuación,


seleccione un grupo de destino enGrupo de destinos. Recuento Application Load Balancer de
aplicaciones por destinosolo se admite si ha adjuntado un grupo de destino del Application Load
Balancer al grupo Auto Scaling.

Si eligióPar de métricas personalizadasElija métricas individuales en las listas desplegables


deMétrica de cargayMétrica de escalado.
5. ParaObjetivo de utilizaciónIntroduzca el valor objetivo que debe mantener Amazon EC2 Auto Scaling.
Amazon EC2 Auto Scaling amplía su capacidad hasta que la utilización media esté en la utilización de
destino, o hasta que alcance el número máximo de instancias que haya especificado.

Si su métrica de escalado es... Entonces la utilización del objetivo representa...

CPU El porcentaje de CPU que cada instancia debería utilizar


idealmente.

Entrada de red Número medio de bytes por minuto que cada instancia debería
recibir idealmente.

Salida de red Número medio de bytes por minuto que cada instancia debería
enviar idealmente.

Recuento Application Load Número medio de solicitudes por minuto que cada instancia
Balancer de aplicaciones por debería recibir idealmente.
destino

6. (Opcional) ParaLanzamiento previo de instancias, elija con qué antelación desea que se inicien las
instancias antes de que el pronóstico exija que aumente la carga.
7. (Opcional) ParaComportamiento de capacidad máxima, elija si desea permitir que Amazon EC2 Auto
Scaling escale hacia fuera superior a la capacidad máxima del grupo cuando la capacidad prevista
supere el máximo definido. Activar esta configuración permite que la escala se produzca durante los
períodos en los que se prevé que el tráfico sea el máximo.
8. (Opcional) ParaCapacidad máxima del búfer por encima de la capacidad previstaElija la cantidad de
capacidad adicional que se utiliza cuando la capacidad prevista está cerca o supera la capacidad
máxima. El valor se especifica como un porcentaje en relación con la capacidad prevista. Por ejemplo,

170
Auto Scaling de Amazon EC2 Guía del usuario
Cree una política de escalado predictivo (AWS CLI)

si el búfer es 10, esto significa un búfer del 10 por ciento, por lo que si la capacidad prevista es 50 y la
capacidad máxima es 40, la capacidad máxima es 55.

Si se establece en 0, Amazon EC2 Auto Scaling puede escalar la capacidad por encima de la
capacidad máxima hasta igualar pero no superar la capacidad prevista.
9. SeleccionarCrear una política de escalado predictivo.

Cree una política de escalado predictivo (AWS CLI)


UsarAWS CLIPara configurar políticas de escalado predictivo para su grupo de Auto Scaling. Para obtener
más información acerca de las métricas de CloudWatch que puede especificar para una política de
escalado predictivo, consultePredictivEscalingMetricSpecificationen laReferencia de API de Auto Scaling
de Amazon EC2.

Ejemplo 1: Una política de escalado predictivo que crea


previsiones pero no escala
En el siguiente ejemplo de directiva se muestra una configuración de directiva completa que
utiliza métricas de utilización de CPU para escalar predictivo con una utilización de destino
de40.ForecastOnlyse utiliza de forma predeterminada, a menos que especifique explícitamente qué
modo utilizar. Guarde esta configuración en un archivo llamado config.json.

{
"MetricSpecifications": [
{
"TargetValue": 40,
"PredefinedMetricPairSpecification": {
"PredefinedMetricType": "ASGCPUUtilization"
}
}
]
}

Para crear esta directiva, ejecute el comandoput-scaling-policyCon el archivo de configuración


especificado, tal y como se muestra en el siguiente ejemplo.

aws autoscaling put-scaling-policy --policy-name cpu40-predictive-scaling-policy \


--auto-scaling-group-name my-asg --policy-type PredictiveScaling \
--predictive-scaling-configuration file://config.json

Si se ejecuta correctamente, este comando devuelve el nombre de recurso de Amazon (ARN) de la


política.

{
"PolicyARN": "arn:aws:autoscaling:region:account-id:scalingPolicy:2f4f5048-d8a8-4d14-
b13a-d1905620f345:autoScalingGroupName/mygroup:policyName/cpu40-predictive-scaling-policy",
"Alarms": []
}

Ejemplo 2: Una política de escalado predictivo que pronostica y


escala
Para una política que permite a Auto Scaling de Amazon EC2 prever y escalar, añada la
propiedadModecon un valor deForecastAndScale. En el ejemplo siguiente se muestra una configuración

171
Auto Scaling de Amazon EC2 Guía del usuario
Cree una política de escalado predictivo (AWS CLI)

de directiva que utiliza métricas de recuento de solicitudes de Application Load Balancer. La utilización de
destino es1000, y el escalado predictivo se establece enForecastAndScaleModo.

{
"MetricSpecifications": [
{
"TargetValue": 1000,
"PredefinedMetricPairSpecification": {
"PredefinedMetricType": "ALBRequestCount",
"ResourceLabel": "app/my-alb/778d41231b141a0f/targetgroup/my-alb-target-
group/943f017f100becff"
}
}
],
"Mode": "ForecastAndScale"
}

Para crear esta directiva, ejecute el comandoput-scaling-policyCon el archivo de configuración


especificado, tal y como se muestra en el siguiente ejemplo.

aws autoscaling put-scaling-policy --policy-name alb1000-predictive-scaling-policy \


--auto-scaling-group-name my-asg --policy-type PredictiveScaling \
--predictive-scaling-configuration file://config.json

Si se ejecuta correctamente, este comando devuelve el nombre de recurso de Amazon (ARN) de la


política.

{
"PolicyARN": "arn:aws:autoscaling:region:account-
id:scalingPolicy:19556d63-7914-4997-8c81-d27ca5241386:autoScalingGroupName/
mygroup:policyName/alb1000-predictive-scaling-policy",
"Alarms": []
}

Ejemplo 3: Una política de escalado predictivo que puede escalar


por encima de la capacidad máxima
En el ejemplo siguiente se muestra cómo crear una directiva que puede escalar más allá del límite de
tamaño máximo del grupo cuando se necesita para manejar una carga superior a la normal. De forma
predeterminada, Amazon EC2 Auto Scaling no escala la capacidad de EC2 por encima de la capacidad
máxima definida. Sin embargo, podría ser útil dejarlo escalar más alto con un poco más de capacidad para
evitar problemas de performance o disponibilidad.

Para proporcionar espacio para que Amazon EC2 Auto Scaling aprovisione capacidad adicional
cuando se prevea que la capacidad sea igual o muy cercana al tamaño máximo de su grupo,
especifique la propiedadMaxCapacityBreachBehavioryMaxCapacityBufferPropiedades, como
se muestra en el ejemplo siguiente. Debe especificarMaxCapacityBreachBehaviorcon un valor
deIncreaseMaxCapacity. El número máximo de instancias que puede tener el grupo depende del valor
deMaxCapacityBuffer.

{
"MetricSpecifications": [
{
"TargetValue": 70,
"PredefinedMetricPairSpecification": {
"PredefinedMetricType": "ASGCPUUtilization"
}

172
Auto Scaling de Amazon EC2 Guía del usuario
Limitations

}
],
"MaxCapacityBreachBehavior": "IncreaseMaxCapacity",
"MaxCapacityBuffer": 10
}

En este ejemplo, la política está configurada para utilizar un búfer del 10 por ciento
("MaxCapacityBuffer": 10), por lo que si la capacidad prevista es 50 y la capacidad máxima es 40, la
capacidad máxima es 55. Una política que puede escalar la capacidad por encima de la capacidad máxima
hasta igualar pero no superar la capacidad prevista tendría un búfer de 0 ("MaxCapacityBuffer": 0).

Para crear esta directiva, ejecute el comandoput-scaling-policyCon el archivo de configuración


especificado, tal y como se muestra en el siguiente ejemplo.

aws autoscaling put-scaling-policy --policy-name cpu70-predictive-scaling-policy \


--auto-scaling-group-name my-asg --policy-type PredictiveScaling \
--predictive-scaling-configuration file://config.json

Si se ejecuta correctamente, este comando devuelve el nombre de recurso de Amazon (ARN) de la


política.

{
"PolicyARN": "arn:aws:autoscaling:region:account-id:scalingPolicy:d02ef525-8651-4314-
bf14-888331ebd04f:autoScalingGroupName/mygroup:policyName/cpu70-predictive-scaling-policy",
"Alarms": []
}

Limitations
El escalado predictivo requiere 24 horas de historial métrico antes de que pueda generar pronósticos.

Actualmente no se puede utilizar la escala predictiva con grupos de Auto Scaling que tienen una directiva
de instancias mixtas.

Actualmente no puede especificar sus métricas personalizadas en una política de escalado predictivo.

Exploración de datos y previsión


Una vez creada la previsión, puede ver gráficos que muestren los datos históricos de las últimas ocho
semanas y la previsión para los próximos dos días. Para obtener información detallada sobre una
previsión y su historial, abra el grupo Auto Scaling desde la consola Amazon EC2 Auto Scaling y elija la
opciónEscalado automáticoen el panel inferior. Los gráficos estarán disponibles poco después de que se
cree la política.

Cada gráfico muestra los valores de previsión frente a los valores reales y a un tipo de datos concreto.
LaCargarmuestra el pronóstico de carga y los valores reales para la métrica de carga que elija.
LaCapacidadmuestra el número de instancias que se pronostican en función de la utilización de destino
y el número real de instancias iniciadas. Varios colores muestran los puntos de datos de métrica reales y
los valores de previsión pasados y futuros. La línea naranja muestra los puntos de datos de la métrica real.
La línea verde muestra la previsión generada para el período de previsión futuro. La línea azul muestra el
pronóstico para periodos anteriores.

173
Auto Scaling de Amazon EC2 Guía del usuario
Exploración de datos y previsión

Puede ajustar el intervalo de tiempo para los datos anteriores eligiendo su valor preferido en la parte
superior derecha del gráfico:2 días,1 week,2 semanas,4 semanas,6 semanas, o bien8 semanas. Cada
punto del gráfico representa una hora de datos. Al pasar el ratón por encima de un punto de datos, la
información contextual muestra el valor de un determinado momento, en UTC.

Para agrandar el panel del gráfico, elija el icono de expansión en la parte superior derecha del gráfico.
Para volver a la vista predeterminada, vuelva a seleccionar el icono.

También puede utilizar laAWS CLIComando de laget-predictive-scaling-forecastpara obtener datos de


pronóstico. Los datos devueltos por esta llamada pueden ayudarle a identificar periodos de tiempo en los
que es posible que desee anular la previsión. Para obtener más información, consulte Anular valores de
previsión mediante acciones programadas (p. 175).
Note

Le recomendamos que habilite las métricas de grupo de Auto Scaling. Si estas métricas no están
habilitadas, faltarán datos de capacidad real en el gráfico de previsión de capacidad. No se aplica
ningún costo por habilitar estas métricas.
Para habilitar las métricas del grupo de Auto Scaling, abra el grupo de Auto Scaling en la consola
de Amazon EC2 y desde laMonitoreo, seleccione laColección de métricas de grupo de Auto
Scaling,Habilitar. Para obtener más información, consulte Habilitar métricas de grupo de Auto
Scaling (consola) (p. 251).

174
Auto Scaling de Amazon EC2 Guía del usuario
Anulación de las previsiones

Important

Si el grupo Auto Scaling es nuevo, espere 24 horas para que Amazon EC2 Auto Scaling cree la
primera previsión.

Anular valores de previsión mediante acciones


programadas
A veces, es posible que tenga información adicional sobre los requisitos futuros de la aplicación que el
cálculo de la previsión no puede tener en cuenta. Por ejemplo, los cálculos de previsión podrían subestimar
la capacidad necesaria para un próximo evento de marketing. Puede utilizar acciones programadas
para anular temporalmente la previsión durante periodos de tiempo futuros. Las acciones programadas
se pueden ejecutar de forma periódica, o en una fecha y hora específicas cuando hay fluctuaciones de
demanda de una sola vez.

Por ejemplo, puede crear una acción programada con una capacidad mínima superior a la prevista. En
tiempo de ejecución, Amazon EC2 Auto Scaling actualiza la capacidad mínima de su grupo de Auto
Scaling. Dado que el escalado predictivo optimiza la capacidad, se respeta una acción programada con
una capacidad mínima superior a los valores de previsión. Esto evita que la capacidad sea menor de
lo esperado. Para dejar de anular la previsión, utilice una segunda acción programada para devolver la
capacidad mínima a su configuración original.

El siguiente procedimiento describe los pasos para anular la previsión durante periodos de tiempo futuros.

Contenido
• Paso 1: (Opcional) Analizar datos de series de tiempo (p. 175)
• Paso 2: Crear dos acciones programadas (p. 177)

Paso 1: (Opcional) Analizar datos de series de tiempo


Comience analizando los datos de las series temporales de previsión. Este es un paso opcional, pero es
útil si desea comprender los detalles de la previsión.

1. Recupere la previsión

Una vez creada la previsión, puede consultar un período de tiempo específico en la previsión. El
objetivo de la consulta es obtener una vista completa de los datos de la serie temporal para un período
de tiempo específico.

La consulta puede incluir hasta dos días de datos de previsión futuros. Si ha estado utilizando
escalado predictivo durante un tiempo, también puede acceder a los datos de pronóstico anteriores.
Sin embargo, la duración máxima entre la hora de inicio y la hora de finalización es de 30 días.

Para obtener la previsión utilizando elget-predictive-scaling-forecast AWS CLI, proporcione los


siguientes parámetros en el comando:

• Escriba el nombre del grupo de Auto Scaling en el cuadro de texto--auto-scaling-group-


nameParámetro de.
• Introduzca el nombre de la directiva en el cuadro--policy-nameParámetro de.
• Introduzca la hora de inicio en el cuadro--start-timePara devolver solo los datos de previsión
para después o en la hora especificada.
• Introduzca la hora de finalización en el cuadro--end-timePara devolver solo los datos de previsión
antes de la hora especificada.

175
Auto Scaling de Amazon EC2 Guía del usuario
Anulación de las previsiones

aws autoscaling get-predictive-scaling-forecast --auto-scaling-group-name my-asg \


--policy-name cpu40-predictive-scaling-policy \
--start-time "2021-05-19T17:00:00Z" \
--end-time "2021-05-19T23:00:00Z"

Si se ejecuta correctamente, el comando devolverá datos similares a los del ejemplo siguiente.

{
"LoadForecast": [
{
"Timestamps": [
"2021-05-19T17:00:00+00:00",
"2021-05-19T18:00:00+00:00",
"2021-05-19T19:00:00+00:00",
"2021-05-19T20:00:00+00:00",
"2021-05-19T21:00:00+00:00",
"2021-05-19T22:00:00+00:00",
"2021-05-19T23:00:00+00:00"
],
"Values": [
153.0655799339254,
128.8288551285919,
107.1179447150675,
197.3601844551528,
626.4039934516954,
596.9441277518481,
677.9675713779869
],
"MetricSpecification": {
"TargetValue": 40.0,
"PredefinedMetricPairSpecification": {
"PredefinedMetricType": "ASGCPUUtilization"
}
}
}
],
"CapacityForecast": {
"Timestamps": [
"2021-05-19T17:00:00+00:00",
"2021-05-19T18:00:00+00:00",
"2021-05-19T19:00:00+00:00",
"2021-05-19T20:00:00+00:00",
"2021-05-19T21:00:00+00:00",
"2021-05-19T22:00:00+00:00",
"2021-05-19T23:00:00+00:00"
],
"Values": [
2.0,
2.0,
2.0,
2.0,
4.0,
4.0,
4.0
]
},
"UpdateTime": "2021-05-19T01:52:50.118000+00:00"
}

La respuesta incluye dos previsiones:LoadForecastyCapacityForecast.LoadForecastmuestra


la previsión de carga por hora.CapacityForecastmuestra los valores de previsión de la

176
Auto Scaling de Amazon EC2 Guía del usuario
Anulación de las previsiones

capacidad que se necesita cada hora para manejar la carga pronosticada mientras se mantiene
unTargetValuede 40,0 (40% de utilización media de la CPU).
2. Identificar el período de tiempo objetivo

Identifique la hora u horas en las que debe producirse la fluctuación de la demanda de una sola vez.
Recuerde que las fechas y horas mostradas en el pronóstico están en UTC.

Paso 2: Crear dos acciones programadas


A continuación, cree dos acciones programadas para un período de tiempo específico en el que la
aplicación tendrá una carga superior a la prevista. Por ejemplo, si tiene un evento de marketing que
impulsará el tráfico hacia su sitio durante un período de tiempo limitado, puede programar una acción única
para actualizar la capacidad mínima cuando comienza. A continuación, programe otra acción para devolver
la capacidad mínima a la configuración original cuando finalice el evento.

Para crear dos acciones programadas para eventos de una sola vez (consola)

1. Abra la consola de Auto Scaling de Amazon EC2 enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación junto a su grupo de Auto Scaling.

Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto
Scaling) que muestra información sobre el grupo seleccionado.
3. En la pestaña Automatic scaling (Escalado automático), en Scheduled actions (Acciones
programadas), elija Create scheduled action (Crear acción programada).
4. Rellene los siguientes ajustes para la acción programada:

a. Escriba unaNombrepara la acción programada.


b. ParaMín (Mínimo)Introduzca la nueva capacidad mínima para su grupo de Auto Scaling. LaMín
(Mínimo)Debe ser menor o igual que el tamaño máximo del grupo. Si su valor paraMín (Mínimo)es
mayor que el tamaño máximo del grupo, debe actualizarMax (Máximo).
c. En Recurrence (Recurrencia), elija Once (Una vez).
d. ParaTime zone (Zona horarioa), elija una zona horaria. Si no se elige ninguna zona horaria,ETC/
UTCse utiliza de forma predeterminada.
e. Definir unaHora de inicio específica.
5. Seleccione Create (Crear).

La consola muestra las acciones programadas para el grupo de Auto Scaling.


6. Configure una segunda acción programada para devolver la capacidad mínima a la configuración
original al final del evento. El escalado predictivo solo puede escalar la capacidad cuando el valor
establecido paraMín (Mínimo)es inferior a los valores de previsión.

Para crear dos acciones programadas para eventos de una sola vez (AWS CLI)

Para utilizar elAWS CLIpara crear las acciones programadas, utilice elput-scheduled-actioncomando.

Por ejemplo, definamos una programación que mantenga una capacidad mínima de tres instancias el 19
de mayo a las 5:00 PM durante ocho horas. Los siguientes comandos muestran cómo implementar este
escenario.

La primeraput-scheduled-actionindica a Amazon EC2 Auto Scaling que actualice la capacidad mínima del
grupo de Auto Scaling especificado a las 5:00 PM (UTC) del 19 de mayo de 2021.

aws autoscaling put-scheduled-update-group-action --scheduled-action-name my-event-start \

177
Auto Scaling de Amazon EC2 Guía del usuario
Escalado programado

--auto-scaling-group-name my-asg --start-time "2021-05-19T17:00:00Z" --minimum-


capacity 3

El segundo comando indica a Amazon EC2 Auto Scaling que establezca la capacidad mínima del grupo en
una a la 1:00 a.m. UTC del 20 de mayo de 2021.

aws autoscaling put-scheduled-update-group-action --scheduled-action-name my-event-end \


--auto-scaling-group-name my-asg --start-time "2021-05-20T01:00:00Z" --minimum-
capacity 1

Después de agregar estas acciones programadas al grupo Auto Scaling, Amazon EC2 Auto Scaling realiza
lo siguiente:

• A las 5:00 PM UTC del 19 de mayo de 2021, se ejecuta la primera acción programada. Si el grupo
tiene actualmente menos de tres instancias, el grupo se escala de manera horizontal a tres instancias.
Durante este tiempo y durante las próximas ocho horas, Amazon EC2 Auto Scaling puede seguir
escalando hacia fuera si la capacidad prevista es superior a la capacidad real o si existe una política de
escalado dinámico vigente.
• A la 1:00 AM UTC del 20 de mayo de 2021, se ejecuta la segunda acción programada. Esto devuelve la
capacidad mínima a su configuración original al final del evento.

Escalado basado en programaciones recurrentes


Para anular la previsión para el mismo período de tiempo cada semana, cree dos acciones programadas y
proporcione la lógica de hora y fecha utilizando una expresión cron.

El formato de expresión cron consta de cinco campos separados por espacios: [Minuto] [Hora]
[Día_del_mes] [Mes_del_año] [Día_del_semana]. Los campos pueden contener cualquier valor permitido,
incluidos los caracteres especiales.

Por ejemplo, la siguiente expresión cron ejecuta la acción cada martes a las 06:30. El asterisco se utiliza
como comodín para que coincida con todos los valores de un campo.

30 6 * * 2

Véase también
Para obtener más información acerca de cómo crear, enumerar, editar y eliminar acciones programadas,
consulteEscale programado para Amazon EC2 Auto Scaling (p. 178).

Escale programado para Amazon EC2 Auto Scaling


El escalado programado le ayuda a configurar su propio calendario de escalado de acuerdo con los
cambios de carga predecibles. Por ejemplo, digamos que cada semana el tráfico de su aplicación web
empieza a aumentar los miércoles, sigue siendo alto el jueves y comienza a disminuir el viernes. Puede
configurar una programación de Auto Scaling de Amazon EC2 para aumentar la capacidad los miércoles y
reducirla los viernes.

Para utilizar la escala programada, creeAcciones programadas de. Las acciones programadas se ejecutan
de manera automática en función de la fecha y la hora. Cuando crea una acción programada, especifica
cuándo debe ocurrir la actividad de escalado y los nuevos tamaños deseados, mínimos y máximos para
la acción de escalado. Puede crear acciones programadas que realizan el escalado de forma puntual o
periódica.

Contenido

178
Auto Scaling de Amazon EC2 Guía del usuario
Considerations

• Considerations (p. 179)


• Programaciones recurrentes (p. 179)
• Crear y administrar acciones programadas (consola) (p. 180)
• Cree y administre acciones programadas (AWS CLI) (p. 182)
• Limitations (p. 183)

Considerations
Cuando cree una acción programada, tenga en cuenta lo siguiente:

• Una acción programada establece los tamaños deseado, mínimo y máximo en lo especificado por
la acción programada en la fecha y hora especificadas. La solicitud puede incluir opcionalmente
solo uno de estos tamaños. Por ejemplo, puede crear una acción programada con sólo la capacidad
deseada especificada. Sin embargo, en algunos casos, debe incluir los tamaños mínimo y máximo para
asegurarse de que la nueva capacidad deseada que especificó en la acción no está fuera de estos
límites.
• De forma predeterminada, las programaciones periódicas establecidas se muestran en tiempo universal
coordinado (UTC). Puede cambiar la zona horaria para que se corresponda con la zona horaria local
o con una zona horaria de otra parte de la red. Cuando se especifica una zona horaria que observa el
horario de verano (DST), la acción se ajusta automáticamente para horario de verano.
• Puede desactivar temporalmente el escalado programado para un grupo de Auto Scaling suspendiendo
elScheduledActionsProceso de. Esto le ayuda a evitar que las acciones programadas estén activas
sin tener que eliminarlas. A continuación, puede reanudar el escalado programado cuando desee volver
a utilizarlo. Para obtener más información, consulte Suspensión y reanudación de un proceso para un
grupo de Auto Scaling (p. 232).
• El orden de ejecución de las acciones programadas se garantiza dentro del mismo grupo, pero no para
las acciones programadas en los distintos grupos.
• Una acción programada, por lo general, se ejecuta en cuestión de segundos. Sin embargo, la acción
puede retrasarse durante un máximo de dos minutos desde la hora de inicio programada. Como
las acciones programadas dentro de un grupo de Auto Scaling se ejecutan en el orden en el que se
especifican, las acciones con horas de inicio programadas cercanas pueden tardar más en ejecutarse.

Programaciones recurrentes
Puede crear acciones programadas que realizan el Auto Scaling de forma periódica.

Para crear una programación periódica utilizando la herramientaAWS CLIo un SDK, especifique una
expresión cron y una zona horaria para describir cuándo se va a repetir esa acción de programación. De
forma opcional, puede especificar una fecha y una hora para la hora de inicio, la hora de finalización o para
ambas.

Para crear una programación periódica utilizando la herramientaAWS Management Console, especifique
el patrón de recurrencia, la zona horaria, la hora de inicio y la hora de finalización opcional de la
acción programada. Todas las opciones de patrón de recurrencia se basan en expresiones cron.
Alternativamente, puede escribir su propia expresión cron personalizada.

El formato de expresión cron admitido consta de cinco campos separados por espacios en blanco:
[Minuto] [Hora] [Día_del_mes] [Mes_del_año] [Día_del_mes] [Mes_del_mes] [Mes_del_año] Por ejemplo,
la expresión Cron30 6 * * 2Configura una acción programada que se repite cada martes a las 06:30.
El asterisco se utiliza como comodín para que coincida con todos los valores de un campo. Para obtener
otros ejemplos de expresiones cron, consultehttps://crontab.guru/examples.html. Para obtener información
sobre cómo escribir sus propias expresiones cron en este formato, consulteCrontab.

Elija cuidadosamente los horarios de inicio y de finalización. Tenga en cuenta lo siguiente:

179
Auto Scaling de Amazon EC2 Guía del usuario
Crear y administrar acciones programadas (consola)

• Si especifica una hora de inicio, Amazon EC2 Auto Scaling realiza la acción en ese momento y, a
continuación, realiza la acción basada en la periodicidad especificada.
• Si especifica una hora de finalización, la acción deja de repetirse después de esta hora. Una acción
programada no se mantiene en su cuenta una vez que ha alcanzado su hora de finalización.
• La hora de inicio y la hora de finalización se deben establecer en UTC cuando se utiliza el comandoAWS
CLIo un SDK de.

Crear y administrar acciones programadas (consola)


Utilice los procedimientos de esta sección para crear y administrar acciones programadas mediante la
herramienta deAWS Management Console.

Si crea una acción programada mediante la consola y especifica una zona horaria que observe el horario
de verano (DST), tanto la programación periódica como las horas de inicio y finalización se ajustan
automáticamente para el horario de verano.

Creación de una acción programada


Realice el siguiente procedimiento para crear una acción programada para escalar su grupo de Auto
Scaling.

Para crear una acción programada para un grupo de Auto Scaling

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto a su grupo de Auto Scaling.

Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto
Scaling) que muestra información sobre el grupo seleccionado.
3. En la pestaña Automatic scaling (Escalado automático), en Scheduled actions (Acciones
programadas), elija Create scheduled action (Crear acción programada).
4. Escriba unaNombrePara la acción programada.
5. ParaCapacidad deseada,Mín (Mínimo),Max (Máximo), elija el nuevo tamaño deseado del grupo y la
nueva capacidad mínima y máxima.
6. ParaRecurrenciaEn, elija una de las opciones disponibles.

• Si desea escalar según una programación periódica, elija la frecuencia con la que Amazon EC2
Auto Scaling debe ejecutar la acción programada.
• Si elige una opción que comienza por Every (Cada), la expresión de cron se crea
automáticamente.
• Si eligeCron, especifique una expresión de cron que especifique cuándo se realiza la acción.
• Si desea escalar una sola vez, elijaOnce.
7. ParaTime zone (Zona horarioa), elija una zona horaria. El valor predeterminado es Etc/UTC.
Note

Todas las zonas horarias enumeradas provienen de la base de datos de zona


horaria de IANA. Para obtener más información, consultehttps://en.wikipedia.org/wiki/
List_of_tz_database_time_zones.
8. Definir una fecha y horaHora de inicio específica.

• Si elige una programación periódica, la hora de inicio define cuándo se ejecuta la primera acción
programada de la serie recurrente.
• Si eligióOnceComo la recurrencia, la hora de inicio define la fecha y la hora para que se ejecute la
acción de programación.

180
Auto Scaling de Amazon EC2 Guía del usuario
Crear y administrar acciones programadas (consola)

9. (Opcional) Para programaciones periódicas, puede especificar una hora de finalización


seleccionandoDefinir la hora de finalizacióny, a continuación, elegir una fecha y hora paraEnd by.
10. Seleccione Create (Crear). La consola muestra las acciones programadas para el grupo de Auto
Scaling.

Verificar la hora, la fecha y la zona horaria


Para comprobar si la hora, la fecha y la zona horaria están configuradas correctamente, compruebe laHora
de inicio,Hora de finalización, yTime zone (Zona horarioa)Los valores deAcciones programadasTabla
INTOEscalado automáticoPara el grupo de Auto Scaling.

Amazon EC2 Auto Scaling muestra los valores deHora de inicioyHora de finalizaciónen su hora local con
el desplazamiento UTC en vigor en la fecha y hora especificadas. El desplazamiento UTC es la diferencia,
en horas y minutos, de hora local a UTC. El valor deTime zone (Zona horarioa)muestra la zona horaria
solicitada, por ejemplo,America/New_York.

Zonas horarias basadas en la ubicación, comoAmerica/New_Yorkajustar automáticamente el horario de


verano (DST). Sin embargo, una zona horaria basada en UTC comoEtc/UTCes un tiempo absoluto y no
se ajustará para DST.

Por ejemplo, tiene una programación periódica cuya zona horaria esAmerica/New_York. La primera
acción de escalado ocurre en elAmerica/New_Yorkzona horaria antes de que comience el horario de
verano. La siguiente acción de escalado ocurre en elAmerica/New_Yorkzona horaria después de que se
inicia el horario de verano. La primera acción comienza a las 8:00 AM UTC-5 en hora local, mientras que la
segunda vez comienza a las 8:00 AM UTC-4 en hora local.

Actualizar una acción programada


Después de crear una acción programada, puede actualizar cualquiera de sus configuraciones excepto el
nombre.

Para actualizar una acción programada

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto a su grupo de Auto Scaling.

Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto
Scaling) que muestra información sobre el grupo seleccionado.
3. En la pestaña Automatic scaling (Escalado automático), en Scheduled actions (Acciones
programadas), seleccione una acción programada.
4. Elija Actions, Edit.
5. Introduzca los cambios necesarios y elijaGuarde los cambios.

Eliminación de una acción programada


Puede eliminar una acción programada cuando ya no la necesite.

Para eliminar una acción programada

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione el grupo de Auto Scaling.
3. En la pestaña Automatic scaling (Escalado automático), en Scheduled actions (Acciones
programadas), seleccione una acción programada.
4. Elija Actions (Acciones), Delete (Eliminar).
5. Cuando se le indique que confirme, seleccione Yes, Delete.

181
Auto Scaling de Amazon EC2 Guía del usuario
Cree y administre acciones programadas (AWS CLI)

Cree y administre acciones programadas (AWS CLI)


Puede crear y actualizar acciones programadas que realizan el escalado de forma puntual o periódica
mediante la herramientaput-scheduled-update-groupcomando.

Crear una acción programada que se produce sólo una vez


Para escalar automáticamente el grupo Auto Scaling una sola vez, en una fecha y hora especificadas,
utilice la herramienta--start-time "YYYY-MM-DDThh:mm:ssZ"opción.

Ejemplo: Para escalado descendente una sola vez

Para aumentar el número de instancias en ejecución de su grupo de Auto Scaling en un momento


específico, utilice el siguiente comando.

En la fecha y la hora se especifica para--start-time(8:00 AM UTC del 31 de marzo de 2021), si el


grupo tiene actualmente menos de tres instancias, se escala ascendente a tres instancias.

aws autoscaling put-scheduled-update-group-action --scheduled-action-name my-one-time-


action \
--auto-scaling-group-name my-asg --start-time "2021-03-31T08:00:00Z" --desired-
capacity 3

Ejemplo: Para escalado una sola vez

Para reducir el número de instancias en ejecución de su grupo de Auto Scaling en un momento específico,
utilice el siguiente comando.

En la fecha y la hora se especifica para--start-time(4:00 PM UTC del 31 de marzo de 2021), si el


grupo tiene actualmente más de una instancia, se escala en una instancia.

aws autoscaling put-scheduled-update-group-action --scheduled-action-name my-one-time-


action \
--auto-scaling-group-name my-asg --start-time "2021-03-31T16:00:00Z" --desired-
capacity 1

Crear una acción programada que se ejecute en una


programación periódica
Para programar el escalado de forma periódica, utilice la--recurrence "cron expression"opción.

A continuación se muestra un ejemplo de una acción programada que especifica una expresión cron.

En la programación especificada (todos los días a las 9:00 p. m. UTC), si el grupo de tiene actualmente
menos de tres instancias, realiza un escalado descendente hasta tres instancias. Si el grupo tiene
actualmente más de 3 instancias, se escala a 3 instancias.

aws autoscaling put-scheduled-update-group-action --scheduled-action-name my-recurring-


action \
--auto-scaling-group-name my-asg --recurrence "0 9 * * *" --desired-capacity 3

Crear una acción programada recurrente que especifique una


zona horaria
De forma predeterminada, las acciones programadas se establecen en la zona horaria UTC. Para
especificar una zona horaria diferente, incluya la opción--time-zoney especifique el nombre canónico

182
Auto Scaling de Amazon EC2 Guía del usuario
Limitations

para la zona horaria de IANA (America/New_York, por ejemplo). Para obtener más información,
consultehttps://en.wikipedia.org/wiki/List_of_tz_database_time_zones.

A continuación, se muestra un ejemplo que utiliza la--time-zoneal crear una acción programada
recurrente para escalar la capacidad.

Según la programación especificada (todos los lunes a viernes a las 6:00 PM hora local), si el grupo tiene
actualmente menos de 2 instancias, se escala a 2 instancias. Si el grupo tiene actualmente más de 2
instancias, se escala a 2 instancias.

aws autoscaling put-scheduled-update-group-action --scheduled-action-name my-recurring-


action \
--auto-scaling-group-name my-asg --recurrence "0 18 * * 1-5" --time-zone "America/
New_York" \
--desired-capacity 2

Describir acciones programadas


Para describir las acciones programadas para un grupo de Auto Scaling, utilice la siguientedescribe-
scheduled-actionscomando.

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

Si se ejecuta correctamente, este comando proporciona información similar a la siguiente.

{
"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": "2020-12-01T00:30:00Z",
"Time": "2020-12-01T00:30:00Z",
"MinSize": 1,
"MaxSize": 6,
"DesiredCapacity": 4
}
]
}

Eliminación de una acción programada


Para eliminar una acción programada, utilice la siguientedelete-scheduled-actioncomando.

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


--scheduled-action-name my-recurring-action

Limitations
• Los nombres de las acciones programadas deben ser únicos por grupo Auto Scaling.
• Una acción programada debe tener un valor temporal único. Si intenta programar una actividad en un
momento en que otra actividad de escalado ya se ha programado, se rechaza la llamada y devuelve un
error que indica que ya existe una acción programada con esta hora de inicio programada.
• Puede crear un máximo de 125 acciones programadas por grupo de Auto Scaling.

183
Auto Scaling de Amazon EC2 Guía del usuario
Enlaces de ciclo de vida

Enganches de ciclo de vida de Amazon EC2 Auto


Scaling
Amazon EC2 Auto Scaling ofrece la posibilidad de añadir enlaces del ciclo de vida a sus grupos de Auto
Scaling. Estos enlaces permiten que un grupo de Auto Scaling tenga en cuenta los eventos del ciclo de
vida de la instancia Auto Scaling y, a continuación, realice una acción personalizada cuando se produzca
el evento del ciclo de vida correspondiente. Un enlace del ciclo de vida proporciona una cantidad de tiempo
especificada (una hora de forma predeterminada) para completar la acción del ciclo de vida antes de que la
instancia pase al siguiente estado.

Como ejemplo del uso de enlaces del ciclo de vida con instancias de Auto Scaling:

• Cuando ocurre un evento de escalado ascendente, la instancia que se acaba de lanzar completa su
secuencia de inicio y pasa a un estado de espera. Mientras la instancia está en estado de espera,
ejecuta un script para descargar e instalar los paquetes de software de necesarios para la aplicación,
asegurándose de que la instancia esté completamente lista antes de que empiece a recibir tráfico.
Cuando el script ha terminado de instalar el software, envía elcomplete-lifecycle-actionPara continuar.
• Cuando ocurre un evento de escalado descendente, un enlace de ciclo de vida pausa la instancia antes
de que termine y le envía una notificación a través de Amazon EventBridge. Mientras la instancia se
encuentra en estado de espera, puede invocar unAWS LambdaFunción o conéctese a la instancia para
descargar registros u otros datos antes de que la instancia se termine por completo.

Un uso popular de los ganchos del ciclo de vida es controlar cuándo se registran instancias con Elastic
Load Balancing. Al agregar un enlace del ciclo de vida de lanzamiento al grupo Auto Scaling, puede
asegurarse de que las aplicaciones de las instancias estén listas para aceptar tráfico antes de registrarse
en el equilibrador de carga al final del enlace del ciclo de vida.

Contenido
• Cómo funcionan los enlaces de ciclo de vida (p. 184)
• Condiciones y limitaciones (p. 186)
• Recepción de notificaciones de enlace de ciclo de vida (p. 187)
• Repositorio GitHub (p. 187)
• Disponibilidad de enlaces de ciclo de vida (p. 187)
• Configuración de un destino de notificación para un enlace de ciclo de vida (p. 188)
• Añadir enlaces de ciclo de vida (p. 192)
• Completar una acción de ciclo de vida (p. 194)
• Tutorial: Configure un enlace de ciclo de vida que invoque una función Lambda (p. 195)

Note

Amazon EC2 Auto Scaling proporciona su propio ciclo de vida para ayudar con la implementación
de grupos de Auto Scaling. Este ciclo de vida difiere del de otras instancias de EC2. Para obtener
más información, consulte Ciclo de vida de instancias de Amazon EC2 Auto Scaling (p. 8).

Cómo funcionan los enlaces de ciclo de vida


Después de agregar enlaces de ciclo de vida al grupo de Auto Scaling, estos funcionan de la manera
siguiente:

1. El grupo Auto Scaling responde a un evento de escalado ascendente y comienza a lanzar una instancia.

184
Auto Scaling de Amazon EC2 Guía del usuario
Cómo funcionan los enlaces de ciclo de vida

2. El enlace de ciclo de vida cambia la instancia a un estado de espera (Pending:Wait) y, a


continuación, realiza una acción personalizada.

La instancia permanece en un estado de espera hasta que complete la acción del ciclo de
vida mediante la herramientaacción del ciclo de vida completoEl comando de la CLI o el
comandoCompleteLifecycleActionAcción, o hasta que se agote el tiempo de espera. De forma
predeterminada, la instancia permanece en estado de espera durante una hora y, a continuación, el
grupo de Auto Scaling continúa con el proceso de lanzamiento (Pending:Proceed). Si necesita más
tiempo, puede reiniciar el periodo de tiempo de espera registrando un latido. Si completa la acción del
ciclo de vida antes de que expire el período de tiempo de espera, el período finaliza y el grupo Auto
Scaling continúa con el proceso de lanzamiento.
3. La instancia ingresa elInServiceSe inicia el período de gracia de comprobación de estado. Si el
grupo de Auto Scaling está asociado a un balanceador de carga de Elastic Load Balancing, la instancia
se registra en el balanceador de carga y el balanceador de carga comienza a comprobar su estado.
Después de que finalice el periodo de gracia de la comprobación de estado, Amazon EC2 Auto Scaling
comienza a comprobar el estado de la instancia.
4. El grupo Auto Scaling responde a un evento de escalado ascendente y comienza a terminar una
instancia. Si el grupo de Auto Scaling se usa con Elastic Load Balancing, primero se anula el registro de
la instancia que terminará en el balanceador de carga. Si el drenaje de conexiones está habilitado para
el equilibrador de carga, la instancia deja de aceptar nuevas conexiones y espera a que las conexiones
existentes se agoten antes de completar el proceso de anulación del registro.
5. El enlace de ciclo de vida cambia la instancia a un estado de espera (Terminating:Wait) y, a
continuación, realiza una acción personalizada.

La instancia permanece en estado de espera hasta que complete la acción del ciclo de vida o hasta
que finalice el periodo de tiempo de espera (que, de forma predeterminada, es de una hora). Después
de completar el enlace del ciclo de vida o expirar el período de tiempo de espera, la instancia pasa al
siguiente estado (Terminating:Proceed).
6. La instancia ha finalizado.

En la siguiente ilustración se muestran las transiciones entre los estados de la instancia de Auto Scaling en
este proceso.

185
Auto Scaling de Amazon EC2 Guía del usuario
Condiciones y limitaciones

Condiciones y limitaciones
Al utilizar enlaces de ciclo de vida, tenga en cuenta las siguientes consideraciones y limitaciones clave:

• Puede configurar un enlace del ciclo de vida de lanzamiento para abandonar el lanzamiento si se
produce un error inesperado, en cuyo caso Amazon EC2 Auto Scaling finaliza automáticamente y
reemplaza la instancia.
• Amazon EC2 Auto Scaling limita la velocidad a la que permite que las instancias se inicien si los enlaces
del ciclo de vida fallan de forma coherente.
• Puede utilizar enlaces de ciclo de vida con instancias de spot. Sin embargo, un enlace de ciclo de vida
no impide que se termine una instancia si esa capacidad ya no está disponible, lo que puede ocurrir
en cualquier momento con un aviso de interrupción de dos minutos. Para obtener más información,
consulteInterrupciones de instancias de spoten laGuía del usuario de Amazon EC2 para instancias de
Linux.
• Al escalar hacia fuera, Amazon EC2 Auto Scaling no cuenta una nueva instancia para las métricas
agregadas de CloudWatch del grupo Auto Scaling hasta que finalice el gancho del ciclo de vida de
lanzamiento (y se complete el tiempo de calentamiento de la política de escalado). Al escalar en, la
instancia de terminación continúa contando como parte de las métricas agregadas del grupo hasta que
finalice el enlace del ciclo de vida de terminación.
• Cuando un grupo de Auto Scaling lanza o termina una instancia debido a políticas de escalado sencillo,
se aplica un periodo de recuperación. El periodo de recuperación ayuda a garantizar que el grupo de
Auto Scaling no lance ni termine más instancias de las necesarias antes de que los efectos de las
actividades de escalado sencillo anteriores sean visibles. Cuando se produce una acción del ciclo de
vida y una instancia entra en estado de espera, se detienen las actividades de escalado a causa de las
políticas de escalado sencillo. Cuando terminan las acciones del ciclo de vida, comienza el periodo de
recuperación. Si establece un intervalo largo para el período de recuperación, el escalado tardará más
tiempo en reanudarse. Para obtener más información, consulte Reutilización de escalado descendente
Amazon EC2 Auto Scaling (p. 153).
• Existe una cuota que especifica el número máximo de enlaces de ciclo de vida que puede crear por
grupo de Auto Scaling. Para obtener más información, consulte Cuotas de servicio de Amazon EC2 Auto
Scaling (p. 11).
• Para obtener ejemplos del uso de enlaces de ciclo de vida, consulte las siguientes entradas de blog:
Creación de un sistema de copia de seguridad para instancias escaladas mediante el comando Lambda
y Amazon EC2 RunyEjecutar código antes de finalizar una instancia de EC2 Auto Scaling.

Mantener las instancias en un estado de espera


Las instancias pueden permanecer en un estado de espera durante un periodo de tiempo limitado. El valor
predeterminado es una hora (3600 segundos).

Puede ajustar la duración del periodo de las siguientes formas:

• Establezca el tiempo de espera del latido del enlace de ciclo de vida cuando cree dicho enlace.
Con el comando put-lifecycle-hook, use el parámetro --heartbeat-timeout. Con la operación
PutLifecycleHook, utilice el parámetro HeartbeatTimeout.
• Continúe hasta el siguiente estado si termina antes de que finalice el periodo de tiempo de espera
mediante el comando complete-lifecycle-action o la operación CompleteLifecycleAction.
• Posponga el final del periodo de tiempo de espera registrando un latido mediante la herramientarécord,
ciclo de vida, acción-latido del corazóno el comando deRecordLifecycleActionHeartbeat. De
esta forma, se incrementa el tiempo de espera en el valor especificado cuando creó el enlace de ciclo
de vida. Por ejemplo, si el valor de tiempo de espera es de una hora y llama a este comando después
de 30 minutos, la instancia permanece en estado de espera durante una hora adicional o un total de 90
minutos.

186
Auto Scaling de Amazon EC2 Guía del usuario
Recepción de notificaciones de enlace de ciclo de vida

El tiempo máximo que puede mantener una instancia en estado de espera es de 48 horas o 100 veces el
tiempo de espera del latido, lo que sea menor.

Recepción de notificaciones de enlace de ciclo de vida


Puede configurar varias reglas de EventBridge para invocar una función Lambda o enviar una notificación
cuando una instancia entra en un estado de espera y Amazon EC2 Auto Scaling envía un evento para una
acción del ciclo de vida a EventBridge. El evento contiene información sobre la instancia que se va a lanzar
o terminar, y un token que puede utilizar para controlar la acción del ciclo de vida. Para obtener una guía
introductoria de estilo de aprendizaje para crear vínculos de ciclo de vida, consulteTutorial: Configure un
enlace de ciclo de vida que invoque una función Lambda (p. 195). Para obtener ejemplos de los eventos
que se emiten cuando se produce una acción del ciclo de vida, consulteEventos de Auto Scaling (p. 264).

Sin embargo, si tiene datos de usuario o script de cloud init que configura las instancias después de
lanzarlas, no es necesario configurar una notificación. El script puede controlar la acción del ciclo de vida
usando el ID de la instancia en la que se ejecuta. Si aún no lo ha hecho, actualice el script para recuperar
el ID de instancia de la instancia de los metadatos de la instancia. Para obtener más información,
consulteRecuperación de metadatos de instanciaen laGuía del usuario de Amazon EC2 para instancias
de Linux. Puede hacer que el script señale el gancho del ciclo de vida cuando se complete el script de
configuración, para permitir que la instancia continúe al siguiente estado.
Note

La consola Amazon EC2 Auto Scaling no ofrece la opción de definir un destino de notificación
de Amazon SNS o Amazon SQS para el gancho del ciclo de vida. Estos ganchos del ciclo de
vida se deben agregar mediante el comandoAWS CLIo uno de los SDK de. Para obtener más
información, consulte Configuración de notificaciones (p. 188).

Repositorio GitHub
Puedes visitar nuestraRepositorio GitHubPara descargar plantillas y scripts para enlaces de ciclo de vida.

Disponibilidad de enlaces de ciclo de vida


En la siguiente tabla se muestran los enlaces de ciclo de vida disponibles para varios escenarios.

Evento Inicio o Duración Actualización Reequilibrio de Piscinas


terminación de máxima de de instancias: la capacidad: calientes:
la instancia¹ la instancia: Instancias de Instancias de Instancias que
Instancias de reemplazo reemplazo entran y salen
reemplazo de la piscina
caliente

Lanzamiento ✓ ✓ ✓ ✓ ✓
de instancias

Terminación de ✓ ✓ ✓ ✓ ✓
instancias de

¹ Se aplica a instancias iniciadas o terminadas cuando se crea o elimina el grupo, cuando el grupo se
escala automáticamente o cuando se ajusta manualmente la capacidad deseada del grupo. No se aplica al
enlazar o separar instancias, mover instancias dentro y fuera del modo de espera o eliminar el grupo con la
opción Forzar eliminación.

187
Auto Scaling de Amazon EC2 Guía del usuario
Configuración de notificaciones

Configuración de un destino de notificación para un


enlace de ciclo de vida
Puede agregar enlaces de ciclo de vida a un grupo de Auto Scaling para realizar acciones personalizadas
cada vez que una instancia entre en estado de espera. Puede configurar destinos de notificación para
realizar estas acciones mediante una variedad de Amazon Web Services en función de su enfoque de
desarrollo preferido.

El primer enfoque utiliza Amazon EventBridge para invocar una función Lambda que realiza la acción
deseada. El segundo enfoque consiste en crear un tema de Amazon Simple Notification Service (Amazon
SNS) en el que se publican las notificaciones. Los clientes pueden suscribirse al tema SNS y recibir
mensajes publicados mediante un protocolo compatible. El último enfoque implica utilizar Amazon Simple
Queue Service (Amazon SQS), un sistema de mensajería que requiere nodos de trabajo para sondear una
cola.

Como práctica recomendada, le recomendamos que utilice EventBridge. Las notificaciones enviadas a
Amazon SNS y Amazon SQS contienen la misma información que las notificaciones que Amazon EC2
Auto Scaling envía a EventBridge. Antes de EventBridge, la práctica estándar era enviar una notificación
a SNS o SQS e integrar otro servicio con SNS o SQS para realizar acciones programáticas. Hoy en día,
EventBridge le ofrece más opciones para los servicios a los que puede dirigirse y facilita el manejo de
eventos mediante la arquitectura sin servidor.

Los siguientes procedimientos tratan cómo configurar el destino de notificación.

Recuerde que si tiene scripts de datos de usuario o directivas de cloud init que configuran las instancias
cuando se lanzan, no es necesario recibir notificaciones cuando se produce la acción del ciclo de vida.

Contenido
• Enrutar notificaciones a Lambda mediante EventBridge (p. 188)
• Recibir notificaciones mediante Amazon SNS (p. 189)
• Recibir notificaciones mediante Amazon SQS (p. 190)
• Ejemplo de mensaje de notificación para Amazon SNS y Amazon SQS (p. 191)

Important

La regla EventBridge, la función Lambda, el tema de Amazon SNS y la cola de Amazon SQS que
utilice con los ganchos del ciclo de vida deben estar siempre en la misma región en la que creó el
grupo Auto Scaling.

Enrutar notificaciones a Lambda mediante EventBridge


Puede invocar una función Lambda cuando se produzca una acción del ciclo de vida mediante
EventBridge. Para obtener información acerca de los eventos EventBridge que se emiten cuando se
produce una acción del ciclo de vida, veaEventos de Auto Scaling (p. 264). Para obtener una guía
introductoria de estilo tutorial que muestra cómo crear una función Lambda simple que escucha los
eventos de lanzamiento y los escribe en un registro de CloudWatch Logs, consulteTutorial: Configure un
enlace de ciclo de vida que invoque una función Lambda (p. 195).

Para utilizar una función Lambda como destino de una regla EventBridge

1. Puede crear una función Lambda mediante laConsola de Lambday anote el nombre de recurso
de Amazon (ARN). Por ejemplo, arn:aws:lambda:region:123456789012:function:my-
function. Necesita el ARN para crear un destino de EventBridge.

188
Auto Scaling de Amazon EC2 Guía del usuario
Configuración de notificaciones

Para obtener más información, consulteIntroducción a Lambdaen laAWS LambdaGuía para


desarrolladores.
2. Cree una regla de EventBridge que coincida con la acción del ciclo de vida mediante el siguiente
procedimientoput-ruleComando de.
Note

Cuando se utiliza elAWS Management ConsolePara crear una regla de eventos, la consola
agrega automáticamente los permisos de IAM necesarios para otorgar permiso a EventBridge
para llamar a la función de Lambda. Si crea una regla de eventos utilizando la AWS CLI, tiene
que otorgar este permiso explícitamente. Para obtener ayuda sobre la creación de una regla
de evento mediante la consola, consulteTutorial: Configure un enlace de ciclo de vida que
invoque una función Lambda (p. 195).

aws events put-rule --name my-rule --event-pattern file://pattern.json --state ENABLED

En el siguiente ejemplo se muestrapattern.jsonPara una acción de ciclo de vida de lanzamiento de


instancias.

{
"source": [ "aws.autoscaling" ],
"detail-type": [ "EC2 Instance-launch Lifecycle Action" ]
}

En el siguiente ejemplo se muestrapattern.jsonPara una acción de ciclo de vida de terminación de


instancias.

{
"source": [ "aws.autoscaling" ],
"detail-type": [ "EC2 Instance-terminate Lifecycle Action" ]
}

3. Cree un destino que invoque la función Lambda cuando se produzca la acción del ciclo de vida
mediante el siguiente procedimientoput-targetsComando de.

aws events put-targets --rule my-rule --targets


Id=1,Arn=arn:aws:lambda:region:123456789012:function:my-function

4. Conceda a la regla permiso para invocar su función Lambda mediante el siguiente


procedimientopermiso de complementoComando de. Este comando confía en el principal de servicio
EventBridge (events.amazonaws.com) y amplía los permisos a la regla especificada.

aws lambda add-permission --function-name my-function --statement-id my-unique-id \


--action 'lambda:InvokeFunction' --principal events.amazonaws.com --source-arn
arn:aws:events:region:123456789012:rule/my-rule

5. Una vez que haya seguido estas instrucciones, continúe en Añadir enlaces de ciclo de vida (p. 192)
como siguiente paso.

Recibir notificaciones mediante Amazon SNS


Puede utilizar Amazon SNS para configurar un destino (un tema de SNS) que reciba notificaciones cuando
se produzca una acción del ciclo de vida. A continuación, Amazon SNS envía las notificaciones a los
destinatarios suscritos. Hasta que no se confirme la suscripción, no se enviarán a los destinatarios las
notificaciones publicadas en el tema.

189
Auto Scaling de Amazon EC2 Guía del usuario
Configuración de notificaciones

Para configurar notificaciones mediante Amazon SNS

1. Puede crear un tema de Amazon SNS mediante laConsola de Amazon SNSo los siguientes ejemplos
deCreación de un tema deComando de. Asegúrese de que el tema se encuentra en la misma región
que el grupo de Auto Scaling que está utilizando. Para obtener más información, consulteIntroducción
a Amazon SNSen laGuía del desarrollador de Amazon Simple Notification Service.

aws sns create-topic --name my-sns-topic

2. Anote el nombre de recurso de Amazon (ARN) del tema, por


ejemplo,arn:aws:sns:region:123456789012:my-sns-topic. Lo necesita para crear el enlace
de ciclo de vida.
3. Cree un rol de servicio de IAM para dar acceso a Amazon EC2 Auto Scaling a su destino de
notificación de Amazon SNS.

Para dar acceso a Amazon EC2 Auto Scaling a su tema de SNS

a. Abra la consola de IAM en https://console.aws.amazon.com/iam/.


b. En el panel de navegación, elijaRoles de,Creación de rol de.
c. En Select type of trusted entity (Seleccione el tipo de entidad de confianza), elija AWS service
(Servicio de ).
d. En Choose the service that will use this role (Elija el servicio que usará este rol), elijaEC2 Auto
Scaling de la lista.
e. En Select your use case (Seleccione su caso de uso), elija EC2 Auto Scaling Notification Access
(Acceso de notificación de EC2 Auto Scaling) y, a continuación, seleccione Next:Permissions
(Siguiente: permisos).
f. Elija Next: Tags (Siguiente: Etiquetas). De manera opcional, puede agregar metadatos
al rol asociando etiquetas como pares de clave-valor. A continuación, elija Next:Review
(Siguiente:Revisar).
g. En la página Review (Revisar), escriba un nombre para el rol (por ejemplo, mi-rol-notificación) y
elija Create role (Crear rol).
h. En la página Roles, elija el rol que acaba de crear para abrir la página
Summary (Resumen). Tome nota del Role ARN (ARN del rol). Por ejemplo,
arn:aws:iam::123456789012:role/my-notification-role. Lo necesita para crear el
enlace de ciclo de vida.
4. Una vez que haya seguido estas instrucciones, continúe en Añadir enlaces de ciclo de vida (AWS
CLI) (p. 193) como siguiente paso.

Recibir notificaciones mediante Amazon SQS


Puede utilizar Amazon SQS para configurar un destino de notificación que reciba mensajes cuando se
produzca una acción del ciclo de vida. Los nodos de trabajo deben entonces sondear una cola SQS para
actuar sobre estas notificaciones.
Important

Las colas FIFO no son compatibles con enlaces de ciclo de vida.

Para configurar notificaciones mediante Amazon SQS

1. Puede crear una cola de Amazon SQS mediante laConsola de Amazon SQS. Asegúrese de que
la cola está en la misma región que el grupo Auto Scaling que está utilizando. Para obtener más
información, consulteIntroducción a Amazon SQSen laGuía del desarrollador de Amazon Simple
Queue Service.

190
Auto Scaling de Amazon EC2 Guía del usuario
Configuración de notificaciones

2. Anote el ARN de la cola, por ejemplo,arn:aws:sqs:region:123456789012:my-sqs-queue. Lo


necesita para crear el enlace de ciclo de vida.
3. Cree un rol de servicio de IAM para dar acceso a Amazon EC2 Auto Scaling a su destino de
notificación de Amazon SQS.

Para conceder a Amazon EC2 Auto Scaling acceso a la cola SQS

a. Abra la consola de IAM en https://console.aws.amazon.com/iam/.


b. En el panel de navegación, elijaRoles de,Creación de rol de.
c. En Select type of trusted entity (Seleccione el tipo de entidad de confianza), elija AWS service
(Servicio de ).
d. En Choose the service that will use this role (Elija el servicio que usará este rol), elijaEC2 Auto
Scaling de la lista.
e. En Select your use case (Seleccione su caso de uso), elija EC2 Auto Scaling Notification Access
(Acceso de notificación de EC2 Auto Scaling) y, a continuación, seleccione Next:Permissions
(Siguiente: permisos).
f. Elija Next: Tags (Siguiente: Etiquetas). De manera opcional, puede agregar metadatos
al rol asociando etiquetas como pares de clave-valor. A continuación, elija Next:Review
(Siguiente:Revisar).
g. En la página Review (Revisar), escriba un nombre para el rol (por ejemplo, mi-rol-notificación) y
elija Create role (Crear rol).
h. En la página Roles, elija el rol que acaba de crear para abrir la página
Summary (Resumen). Tome nota del Role ARN (ARN del rol). Por ejemplo,
arn:aws:iam::123456789012:role/my-notification-role. Lo necesita para crear el
enlace de ciclo de vida.
4. Una vez que haya seguido estas instrucciones, continúe en Añadir enlaces de ciclo de vida (AWS
CLI) (p. 193) como siguiente paso.

Ejemplo de mensaje de notificación para Amazon SNS y Amazon


SQS
Mientras la instancia se encuentra en estado de espera, se publica un mensaje en el objetivo de
notificación de Amazon SNS o Amazon SQS. El mensaje incluye la siguiente información:

• LifecycleActionToken: el token de acción del ciclo de vida.


• AccountId: el ID de cuenta de Amazon Web Services.
• AutoScalingGroupName: el nombre del grupo de Auto Scaling.
• LifecycleHookName: el nombre del enlace de ciclo de vida.
• EC2InstanceId: el ID de la instancia EC2.
• LifecycleTransition: el tipo de enlace de ciclo de vida.
• NotificationMetadata— Los metadatos de notificación.

A continuación, se muestra un ejemplo de mensaje de notificación.

Service: AWS Auto Scaling


Time: 2021-01-19T00:36:26.533Z
RequestId: 18b2ec17-3e9b-4c15-8024-ff2e8ce8786a
LifecycleActionToken: 71514b9d-6a40-4b26-8523-05e7ee35fa40
AccountId: 123456789012
AutoScalingGroupName: my-asg
LifecycleHookName: my-hook

191
Auto Scaling de Amazon EC2 Guía del usuario
Añadir enlaces de ciclo de vida

EC2InstanceId: i-0598c7d356eba48d7
LifecycleTransition: autoscaling:EC2_INSTANCE_LAUNCHING
NotificationMetadata: hook message metadata

Ejemplo de mensaje de notificación de prueba


Cuando agrega por primera vez un enlace de ciclo de vida, se publica un mensaje de notificación de
prueba en el objetivo de notificación. A continuación, se muestra un ejemplo de mensaje de notificación de
prueba.

Service: AWS Auto Scaling


Time: 2021-01-19T00:35:52.359Z
RequestId: 18b2ec17-3e9b-4c15-8024-ff2e8ce8786a
Event: autoscaling:TEST_NOTIFICATION
AccountId: 123456789012
AutoScalingGroupName: my-asg
AutoScalingGroupARN: arn:aws:autoscaling:us-west-2:123456789012:autoScalingGroup:042cba90-
ad2f-431c-9b4d-6d9055bcc9fb:autoScalingGroupName/my-asg

Note

Para ver ejemplos de los eventos entregados desde Amazon EC2 Auto Scaling a EventBridge,
consulteEventos de Auto Scaling (p. 264).

Añadir enlaces de ciclo de vida


Una vez que el destino de notificación esté configurado y listo para usar, agregue el enlace del ciclo de
vida para que la Notificación de eventos se pueda utilizar para realizar la acción personalizada cuando se
produzca el evento del ciclo de vida correspondiente.

Existen dos tipos de ganchos de ciclo de vida que se pueden implementar: ganchos de ciclo de vida de
lanzamiento y ganchos de ciclo de vida de terminación. Utilice un enlace de ciclo de vida de lanzamiento
para preparar instancias para su uso o para retrasar el registro de instancias detrás del equilibrador de
carga antes de que su configuración se haya aplicado por completo. Utilice un enlace de ciclo de vida de
terminación para preparar las instancias en ejecución que se van a cerrar.

Preste atención a los siguientes ajustes al crear el enlace del ciclo de vida:

• Tiempo de espera de latidos: Esta configuración especifica cuánto tiempo debe pasar antes de que se
agote el tiempo de espera del gancho. El rango es de30De a7200segundos. El valor predeterminado
es una hora (3600segundos). Durante el periodo de tiempo de espera, por ejemplo, puede instalar
aplicaciones o descargar registros u otros datos.
• Resultado predeterminado: En esta configuración se define la acción que se debe realizar cuando
termina el tiempo de espera del enlace del ciclo de vida o cuando se produce un error inesperado.
Puede seleccionarAbandonados(predeterminado) oContinuar.
• Si la instancia se lanza, continúa indica que las acciones se realizaron correctamente y que el grupo
de Auto Scaling puede poner la instancia en servicio. Sin embargo, abandon (Abandonar) indica que
las acciones personalizadas no se realizaron correctamente y que Auto Scaling de Amazon EC2
puede terminar la instancia.
• Si la instancia se termina, tanto abandona como continúa permiten que la instancia termine. Sin
embargo, Abandon detiene todas las acciones restantes, como otros enlaces de ciclo de vida,
mientras que continue permite que todos los demás enlaces de ciclo de vida se completen.

Contenido
• Añadir enlaces de ciclo de vida(consola) (p. 193)

192
Auto Scaling de Amazon EC2 Guía del usuario
Añadir enlaces de ciclo de vida

• Añadir enlaces de ciclo de vida (AWS CLI) (p. 193)

Añadir enlaces de ciclo de vida(consola)


Siga estos pasos para agregar un enlace de ciclo de vida a un grupo de Auto Scaling. Puede especificar si
se va a utilizar el enlace cuando se lancen o se terminen las instancias y cuánto tiempo debe esperarse a
que se complete el enlace de ciclo de vida antes de abandonarlo o continuar.

Para agregar un enlace de ciclo de vida

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto a su grupo de Auto Scaling.

Se abre un panel dividido en la parte inferior delGrupos de Auto Scaling(Se ha creado el certificado).
3. En la pestaña Instance management (Administración de instancias), en Lifecycle hooks (Enlaces de
ciclo de vida), elija Create lifecycle hook (Crear enlace de ciclo de vida).
4. Para definir un enlace de ciclo de vida, haga lo siguiente:

a. En Lifecycle hook name (Nombre del enlace de ciclo de vida), especifique un nombre para el
enlace de ciclo de vida.
b. En Lifecycle transition (Transición del ciclo de vida), seleccione Instance launch (Lanzamiento de
instancia) o Instance terminate (Terminación de instancia).
c. Especifique un tiempo de espera en Heartbeat timeout (Tiempo de espera de latido), lo que le
permitirá controlar el tiempo que las instancias deben permanecer en estado de espera.
d. ParaResultado predeterminado, especifique la acción que el grupo de Auto Scaling realiza
cuando transcurra el tiempo de espera del enlace del ciclo de vida o si se produce un error
inesperado.
e. (Opcional) ParaMetadatos de notificación, especifique la información adicional que desee incluir
cuando Auto Scaling de Amazon EC2 envíe un mensaje al destino de notificación.
5. Seleccione Create (Crear).

Añadir enlaces de ciclo de vida (AWS CLI)


Puede crear y actualizar enlaces de ciclo de vida mediante laenlace de ciclo de vidaComando de.

Para realizar una acción de escalado ascendente, utilice el siguiente comando.

aws autoscaling put-lifecycle-hook --lifecycle-hook-name my-hook --auto-scaling-group-


name my-asg \
--lifecycle-transition autoscaling:EC2_INSTANCE_LAUNCHING

Para realizar una acción de escalado descendente, utilice el siguiente comando.

aws autoscaling put-lifecycle-hook --lifecycle-hook-name my-hook --auto-scaling-group-


name my-asg \
--lifecycle-transition autoscaling:EC2_INSTANCE_TERMINATING

Para recibir notificaciones mediante Amazon SNS o Amazon SQS Para obtener más información, consulte
Configuración de un destino de notificación para un enlace de ciclo de vida (p. 188).

Por ejemplo, añada las siguientes opciones para especificar un tema de SNS como destino de la
notificación.

193
Auto Scaling de Amazon EC2 Guía del usuario
Completar una acción de ciclo de vida

--notification-target-arn arn:aws:sns:region:123456789012:my-sns-topic --role-arn


arn:aws:iam::123456789012:role/my-notification-role

El tema recibe una notificación de prueba con el siguiente par de clave-valor.

"Event": "autoscaling:TEST_NOTIFICATION"

Completar una acción de ciclo de vida


Cuando un grupo de Auto Scaling responde a un evento de ciclo de vida, pone la instancia en estado de
espera y envía una notificación de eventos. Puede realizar una acción personalizada mientras la instancia
se encuentra en estado de espera.

Completar una acción del ciclo de vida (AWS CLI)


El siguiente procedimiento es para la interfaz de línea de comandos y no se admite en la consola. La
información que debe reemplazarse, como el ID de instancia o el nombre de un grupo de Auto Scaling,
aparece en cursiva.

Para completar una acción de ciclo de vida

1. Si necesita más tiempo para completar la acción personalizada, utilice el comando record-lifecycle-
action-heartbeat para reiniciar el periodo de tiempo de espera y mantener la instancia en estado de
espera. Puede especificar el token de acción del ciclo de vida que recibió con la notificación, tal y
como se muestra en el siguiente comando.

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

También puede especificar el ID de la instancia que se recuperó en el paso anterior, tal y como se
muestra en el siguiente comando.

aws autoscaling record-lifecycle-action-heartbeat --lifecycle-hook-name my-launch-hook


\
--auto-scaling-group-name my-asg --instance-id i-1a2b3c4d

2. Si termina la acción personalizada antes de que finalice el periodo de tiempo de espera, utilice la
herramientaacción del ciclo de vida completoPara que el grupo de Auto Scaling pueda continuar
lanzando o terminando la instancia. Puede especificar el token de acción del ciclo de vida, tal y como
se muestra en el siguiente comando.

aws autoscaling complete-lifecycle-action --lifecycle-action-result CONTINUE \


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

También puede especificar el ID de la instancia, tal y como se muestra en el siguiente comando.

aws autoscaling complete-lifecycle-action --lifecycle-action-result CONTINUE \


--instance-id i-1a2b3c4d --lifecycle-hook-name my-launch-hook \
--auto-scaling-group-name my-asg

194
Auto Scaling de Amazon EC2 Guía del usuario
Tutorial: Configure un enlace de ciclo de
vida que invoque una función Lambda

Tutorial: Configure un enlace de ciclo de vida que


invoque una función Lambda
En este ejercicio, creará una regla EventBridge que incluya un patrón de filtro que, cuando se coincidan,
invoca unaAWS Lambdacomo el objetivo de la regla. Proporcionamos el patrón de filtro y el código de la
función de muestra a usar.

Si todo está configurado correctamente, al final de este tutorial, la función Lambda realiza una acción
personalizada cuando se lanzan las instancias. La acción personalizada simplemente registra el evento en
el flujo de registro de CloudWatch Logs asociado con la función Lambda.

La función Lambda también realiza una devolución de llamada para permitir que el ciclo de vida de la
instancia continúe si esta acción es exitosa, pero permite que la instancia abandone el lanzamiento y
termine si la acción falla.

Contenido
• Prerequisites (p. 195)
• Paso 1: Crear un rol de IAM con permisos para completar los enlaces del ciclo de vida (p. 195)
• Paso 2: Creación de una función de Lambda (p. 196)
• Paso 3: Crear una regla de EventBridge (p. 197)
• Paso 4: Añadir enlaces de ciclo de vida (p. 197)
• Paso 5: Probar y verificar el evento (p. 198)
• Paso 6: Pasos siguientes (p. 199)
• Paso 7: Eliminar recursos (p. 199)

Prerequisites
Antes de comenzar este aprendizaje, cree un grupo de Auto Scaling, si no dispone todavía de uno. Para
crear un grupo de Auto Scaling, abra laPágina de grupos de Auto ScalingEn la consola de Amazon EC2 y
elijaGrupo de Auto Scaling.

Tenga en cuenta que todos los procedimientos siguientes son para la nueva consola.

Paso 1: Crear un rol de IAM con permisos para completar los


enlaces del ciclo de vida
Antes de crear una función Lambda, primero debe crear un rol de ejecución y una directiva de permisos
para permitir que Lambda complete los enlaces del ciclo de vida.

Para crear la política de

1. Abra el iconoPágina PolíticasEn la consola de IAM y, a continuación, elijaCrear política.


2. Seleccione la pestaña JSON.
3. En el navegadorPolicy DocumentPegue el siguiente documento de política en el cuadro,
reemplazando el texto decursivaCon el número de cuenta y el nombre del grupo de Auto Scaling.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"autoscaling:CompleteLifecycleAction"

195
Auto Scaling de Amazon EC2 Guía del usuario
Tutorial: Configure un enlace de ciclo de
vida que invoque una función Lambda

],
"Resource":
"arn:aws:autoscaling:*:123456789012:autoScalingGroup:*:autoScalingGroupName/my-asg"
}
]
}

4. SeleccionarSiguiente:Etiquetasy, a continuación,Siguiente:Revisar.
5. En Name (Nombre) escriba LogAutoScalingEvent-policy. Elija Create Policy.

Cuando termine de crear la política, podrá crear un rol que la utilice.

Para crear el rol de .

1. En el panel de navegación, elijaRoles de,Creación de rol de.


2. UNDERElija un caso de uso, elijaLambdaEn la lista y, a continuación, elijaSiguiente:Permissions.
3. UNDERAdjuntar directivas de permisos, elijaLogAutoScalingEvent-
PolicyyAWSLambdaBasicExecutionRole.
4. SeleccionarSiguiente:Etiquetasy, a continuación,Siguiente:Revisar.
5. En la páginaReview (Revisar)Página, paraNombre, introduzcaLogAutoScalingEvent-roley
elijaCreación de rol de.

Paso 2: Creación de una función de Lambda


Cree una función Lambda que actuará como destino de los eventos. EventBridge invoca la función de
ejemplo de Lambda, escrita en Node.js, cuando Amazon EC2 Auto Scaling emite un evento coincidente.

Para crear una función Lambda, realice el siguiente procedimiento:

1. Abra el iconoPágina FunctionEn la consola de Lambda.


2. SeleccionarCreación de función de,Author from scratch.
3. En Basic information (Información básica), para Function name (Nombre de función), escriba
LogAutoScalingEvent.
4. SeleccionarCambiar rol de ejecución predeterminadoy, a continuación, paraExecution role (Rol de
ejecución):, elijaUtilizar una función existente.
5. ParaRol existente, elijaRol de LogAutoScalingEvent-.
6. Deje los demás valores predeterminados.
7. Elija Create function (Crear función). Regresará al código y la configuración de la función.
8. Con suLogAutoScalingEventEn la función aún abierta en la consola, enCódigo de función, en el
editor, copie el siguiente código de ejemplo en el archivo denominado index.js.

var aws = require("aws-sdk");


exports.handler = (event, context, callback) => {
console.log('LogAutoScalingEvent');
console.log('Received event:', JSON.stringify(event, null, 2));
var autoscaling = new aws.AutoScaling({region: event.region});
var eventDetail = event.detail;
var params = {
AutoScalingGroupName: eventDetail['AutoScalingGroupName'], /* required */
LifecycleActionResult: 'CONTINUE', /* required */
LifecycleHookName: eventDetail['LifecycleHookName'], /* required */
InstanceId: eventDetail['InstanceId'],
LifecycleActionToken: eventDetail['LifecycleActionToken']
};
var response;

196
Auto Scaling de Amazon EC2 Guía del usuario
Tutorial: Configure un enlace de ciclo de
vida que invoque una función Lambda

autoscaling.completeLifecycleAction(params, function(err, data) {


if (err) {
console.log(err, err.stack); // an error occurred
response = {
statusCode: 500,
body: JSON.stringify('ERROR'),
};
} else {
console.log(data); // successful response
response = {
statusCode: 200,
body: JSON.stringify('SUCCESS'),
};
}
});
return response;
};

Este código simplemente registra el evento para que, al final de este tutorial, pueda ver un evento que
aparezca en el flujo de registro de CloudWatch Logs de asociado a esta función de Lambda.
9. Elija Deploy (Implementar).

Paso 3: Crear una regla de EventBridge


Cree una regla EventBridge para ejecutar su función Lambda.

Para crear una regla con la consola

1. Abra el iconoconsola de EventBridge.


2. En el panel de navegación, elijaReglas,Crear regla.
3. En Name (Nombre) escriba LogAutoScalingEvent-rule.
4. ParaDefinir patrón, elijaPatrón de eventos.
5. ParaPatrón de eventos, elijaPatrón personalizado.
6. Las reglas utilizan patrones de eventos para seleccionar eventos y dirigirlos a los destinos. Copie el
siguiente patrón enPatrón de eventos.

{
"source": [ "aws.autoscaling" ],
"detail-type": [ "EC2 Instance-launch Lifecycle Action" ]
}

7. Para guardar el patrón de eventos, elijaSave (Guardar).


8. En Select event bus (Seleccionar bus de eventos), elija AWS default event bus (Bus de eventos
predeterminado).
9. En Target (Destino), elijaLambda function (Función Lambda).
10. ParaFunción, seleccioneLogAutoScalingEvent. Seleccione Create (Crear).

Paso 4: Añadir enlaces de ciclo de vida


En esta sección, agrega un gancho de ciclo de vida para que Lambda ejecute su función en instancias en
el momento del lanzamiento.

Para agregar un enlace de ciclo de vida

1. Abra el iconoPágina de grupos de Auto ScalingEn la consola de Amazon EC2.

197
Auto Scaling de Amazon EC2 Guía del usuario
Tutorial: Configure un enlace de ciclo de
vida que invoque una función Lambda

2. Seleccione la casilla de verificación situada junto a su grupo de Auto Scaling.

Se abre un panel dividido en la parte inferior delGrupos de Auto Scaling(Se ha creado el certificado).
3. En el panel inferior, en la pestañaAdministración de instancias de, en la pestaña deEnlaces de ciclo de
vida, elijaCrear enlace de ciclo de vida.
4. Para definir un enlace de ciclo de vida, haga lo siguiente:

a. ParaNombre de enlace de ciclo de vida, introduzcaLogAutoScalingEvent-hook.


b. ParaTransición de ciclo de vida, elijaLanzamiento de la instancia.
c. ParaTiempo de espera de latidos, introduzca300Para obtener el número de segundos que se
debe esperar a una devolución de llamada desde la función Lambda.
d. ParaResultado predeterminado, elijaABANDONADOS. Esto significa que el grupo Auto Scaling
terminará una nueva instancia si el gancho agota el tiempo de espera sin recibir una devolución
de llamada de su función Lambda.
e. (Opcional) DejarMetadatos de notificaciónVacío. Los datos de eventos que pasamos a
EventBridge contienen toda la información necesaria para invocar la función Lambda.
5. Seleccione Create (Crear).

Paso 5: Probar y verificar el evento


Para probar el evento, actualice el grupo de Auto Scaling aumentando la capacidad deseada del grupo de
Auto Scaling en 1. Su función Lambda se invoca en pocos segundos después de aumentar la capacidad
deseada.

Para aumentar el tamaño del grupo de Auto Scaling

1. Abra el iconoPágina de grupos de Auto ScalingEn la consola de Amazon EC2.


2. Active la casilla de verificación situada junto al grupo Auto Scaling para ver los detalles en un panel
inferior y seguir viendo las filas superiores del panel superior.
3. En el panel inferior, en la pestañaDetalles deEn la pestaña deDetalles del grupo,Editar.
4. En Desired capacity (Capacidad deseada), aumente el valor actual en 1.
5. Elija Update (Actualizar). Mientras se está iniciando la instancia, elEstadoen el panel superior muestra
un estado deActualización de capacidad.

Después de aumentar la capacidad deseada, puede comprobar que se invocó la función Lambda.

Para ver la salida de la función Lambda

1. Abra el iconoPágina Grupos de registrosde la consola de CloudWatch.


2. Seleccione el nombre del grupo de registros para la función Lambda (/aws/lambda/
LogAutoScalingEvent).
3. Seleccione el nombre del flujo de registro para ver los datos proporcionados por la función para la
acción del ciclo de vida.

A continuación, puede comprobar que la instancia se ha lanzado correctamente a partir de la descripción


de las actividades de escalado.

Para ver la actividad de escalado

1. Vuelva a laGrupos de Auto Scalingy seleccione su grupo de.


2. En la páginaActividad, enHistorial de actividades, elEstadoMuestra si el grupo de Auto Scaling ha
lanzado correctamente una instancia.

198
Auto Scaling de Amazon EC2 Guía del usuario
Tutorial: Configure un enlace de ciclo de
vida que invoque una función Lambda

• Si la acción se realizó correctamente, la actividad de escalado tendrá el estado «Éxito».


• Si falló, después de esperar unos minutos, verá una actividad de escalado con el estado
«Cancelado» y un mensaje de estado de «Instancia no pudo completar la acción del ciclo de vida
del usuario: Acción del ciclo de vida con el token E85EB647-4FE0-4909-B341-A6C42Ejemplo fue
abandonado: Acción del ciclo de vida completada con el resultado de ABANDON».

Para reducir el tamaño del grupo de Auto Scaling

Si no necesita la instancia adicional que lanzó para esta prueba, puede abrir el cuadro de diálogoDetalles
dey disminuirCapacidad deseadapor 1.

Paso 6: Pasos siguientes


Ahora que ha completado este aprendizaje, puede intentar crear un enlace de ciclo de vida de terminación.
Si las instancias del grupo de Auto Scaling terminan, se envía un evento a EventBridge. Para obtener
información acerca del evento que se emite cuando termina una instancia, consulteAcción de ciclo de vida
de terminación de instancia EC2 (p. 266).

Paso 7: Eliminar recursos


Si ha terminado de trabajar con los recursos que ha creado solo para este tutorial, siga los pasos
siguientes para eliminarlos.

Para eliminar el enlace de ciclo de vida

1. Abra el iconoPágina de grupos de Auto ScalingEn la consola de Amazon EC2.


2. Seleccione la casilla de verificación situada junto a su grupo de Auto Scaling.
3. En la páginaAdministración de instancias de, en la pestaña deEnlaces de ciclo de vida, elija el enlace
de ciclo de vida (LogAutoScalingEvent-hook).
4. Elija Actions (Acciones), Delete (Eliminar).
5. SeleccionarEliminarde nuevo para confirmarlo.

Para eliminar la regla de Amazon EventBridge

1. Abra el iconoPágina ReglasEn la consola de Amazon EventBridge.


2. UNDERBus de eventosElija el bus de eventos asociado a la regla (Default).
3. Elija la regla (LogAutoScalingEvent-rule).
4. Elija Actions (Acciones), Delete (Eliminar).
5. SeleccionarEliminarde nuevo para confirmarlo.

Si ha terminado de trabajar con la función de ejemplo, elimínela. También puede eliminar el rol de
ejecución y la directiva de permisos y el grupo de registro que almacena los registros de la función.

Para eliminar una función de Lambda

1. Abra el iconoPágina FunctionEn la consola de Lambda.


2. Elija la función (LogAutoScalingEvent).
3. Elija Actions (Acciones), Delete (Eliminar).
4. En el cuadro de diálogo Eliminar función, elija Eliminar.

199
Auto Scaling de Amazon EC2 Guía del usuario
Piscinas calientes

Para eliminar el grupo de registros

1. Abra el iconoPágina Grupos de registrosde la consola de CloudWatch.


2. Seleccione el grupo de registros de la función (/aws/lambda/LogAutoScalingEvent).
3. Elija Acciones, Eliminar grupo(s) de registro(s).
4. En el cuadro de diálogo Eliminar grupo(s) de registro(s), elija Eliminar.

Para eliminar el rol de ejecución

1. Abra el iconoPágina Rolesde la consola de IAM.


2. Seleccione el rol de la función (LogAutoScalingEvent-role).
3. Elija Delete role (Eliminar rol).
4. En el cuadro de diálogo Eliminar rol, elija Sí, eliminar.

Para eliminar la directiva de IAM

1. Abra el iconoPágina Políticasde la consola de IAM.


2. Seleccione la política de que ha creado (LogAutoScalingEvent-policy).
3. Elija Delete policy.
4. En el navegadorEliminar política de, elijaSí, eliminar.

Grupos de Amazon EC2


Un grupo cálido le permite reducir la latencia de las aplicaciones que tienen tiempos de arranque
excepcionalmente largos, por ejemplo, porque las instancias necesitan escribir cantidades masivas de
datos en el disco. Con los grupos calientes, ya no tiene que aprovisionar en exceso sus grupos de Auto
Scaling para administrar la latencia con el fin de mejorar el rendimiento de las aplicaciones.

En esta sección se muestra cómo agregar un grupo de calentamiento automático a su grupo de Auto
Scaling. Un grupo activo es un grupo de instancias de EC2 preinicializadas que se encuentra junto al
grupo Auto Scaling. Siempre que su aplicación necesite escalar hacia fuera, el grupo Auto Scaling puede
recurrir a la piscina caliente para cumplir con su nueva capacidad deseada. El objetivo de un grupo activo
es garantizar que las instancias estén listas para comenzar a servir rápidamente el tráfico de aplicaciones,
lo que acelera la respuesta a un evento de escalabilidad horizontal. Esto se denominaInicio en caliente.
Important
Crear una piscina caliente cuando no es necesaria puede conducir a costos innecesarios. Si
su primer tiempo de arranque no causa problemas de latencia notables para su aplicación,
probablemente no sea necesario que use un grupo caliente.

Tiene la opción de mantener instancias en el grupo caliente en uno de los dos


estados:StoppedorRunning. Mantener las instancias en unStoppedestado es una manera efectiva
de minimizar los costos. Con las instancias detenidas, sólo paga por los volúmenes que utilice y las
direcciones IP elásticas que no están asignadas a una instancia en ejecución. Pero usted no paga por las
instancias detenidas. Sólo pagará por las instancias cuando se estén ejecutando.

El tamaño de la piscina caliente se calcula como la diferencia entre dos números: la capacidad máxima
del grupo Auto Scaling y la capacidad deseada. Por ejemplo, si la capacidad deseada de su grupo Auto
Scaling es 6 y la capacidad máxima es 10, el tamaño de su piscina caliente será 4 cuando configure
la piscina caliente por primera vez y la piscina se inicialice. La excepción es si especifica un valor
paraCapacidad máxima preparada, en cuyo caso el tamaño de la piscina caliente se calcula como la
diferencia entre elCapacidad máxima preparaday la capacidad deseada. Por ejemplo, si la capacidad
deseada del grupo de Auto Scaling es 6, si la capacidad máxima es 10 y si la opciónCapacidad máxima

200
Auto Scaling de Amazon EC2 Guía del usuario
Antes de empezar

preparadaes 8, el tamaño de su piscina caliente será 2 cuando configure la piscina caliente por primera vez
y la piscina se esté inicializando.

A medida que las instancias salen de la piscina caliente, cuentan para alcanzar la capacidad deseada del
grupo de. Hay dos escenarios en los que las instancias en la piscina caliente se reponen: cuando el grupo
se escala y su capacidad deseada disminuye, o cuando el grupo se escala hacia fuera y se alcanza el
tamaño mínimo de la piscina caliente.

Los ganchos del ciclo de vida controlan cuando las nuevas instancias pasan hacia y desde el grupo
caliente. Estos ganchos le ayudan a asegurarse de que las instancias están completamente configuradas
para su aplicación antes de que se agreguen al grupo caliente al final del gancho del ciclo de vida. En el
siguiente evento de escalado horizontal, las instancias están listas para agregarse al grupo Auto Scaling lo
antes posible. Los enlaces del ciclo de vida también pueden ayudarlo a asegurarse de que las instancias
estén listas para servir al tráfico mientras salen del grupo activo (por ejemplo, rellenando su caché). Para
obtener más información, consulte Ciclo de vida de la instancia (p. 204).

Puede utilizar laAWS Management Console, elAWS CLIo uno de los SDK para agregar un grupo caliente a
un grupo de Auto Scaling.

Contenido
• Antes de empezar (p. 201)
• Añadir una piscina caliente(consola) (p. 201)
• Agregue una piscina caliente (AWS CLI) (p. 202)
• Eliminar una piscina caliente (p. 204)
• Limitations (p. 204)
• Ciclo de vida de la instancia (p. 204)
• Tipos de eventos y patrones de eventos que se utilizan al agregar o actualizar enlaces del ciclo de
vida (p. 207)
• Creación de reglas de EventBridge para eventos (p. 210)
• Ver el estado de la verificación de salud y el motivo de los fallos de la verificación de salud (p. 212)

Antes de empezar
Decida cómo va a utilizar los ganchos del ciclo de vida para preparar las instancias para su uso. Por
ejemplo, puede configurar los ganchos del ciclo de vida para retrasar que las instancias se agreguen al
grupo activo antes de que completen su script de datos de usuario. Otra forma de usar los ganchos del
ciclo de vida es ejecutar código en una función Lambda desencadenada por eventos del ciclo de vida. Para
obtener más información, consulte la siguiente publicaciónEscalar sus aplicaciones más rápidamente con
EC2 Auto Scaling Warm Pools.

Considere ajustar el tiempo de calentamiento en su política de seguimiento de destino o escalado de


pasos a la cantidad mínima de tiempo necesario. A medida que las instancias salen del grupo activo,
Amazon EC2 Auto Scaling no las cuenta para las métricas agregadas de CloudWatch del grupo Auto
Scaling hasta que finalice el gancho del ciclo de vida y finalice el tiempo de calentamiento. Si el tiempo
de calentamiento retrasa unInServicese incluya en las métricas de grupo agregadas, es posible que
la política de escalado se amplíe de forma más agresiva de lo necesario. Para obtener más información,
consulte Escale dinámico para Amazon EC2 Auto Scaling (p. 135).

Añadir una piscina caliente(consola)


En el siguiente procedimiento se muestran los pasos para agregar un grupo de grupo de Auto Scaling.

Para añadir una piscina caliente

1. Abra la consola de Amazon EC2 Auto Scalinghttps://console.aws.amazon.com/ec2autoscaling/.

201
Auto Scaling de Amazon EC2 Guía del usuario
Agregue una piscina caliente (AWS CLI)

2. Seleccione la casilla de verificación situada junto a un grupo existente.

Se abre un panel dividido en la parte inferior delGrupos de Auto Scaling(Se ha creado el certificado).
3. Elija el iconoAdministración de instanciasPestaña.
4. UNDERPiscina caliente, elijaCrear piscina caliente.
5. Para configurar una piscina caliente, haga lo siguiente:

a. ParaEstado de instancia de piscina caliente, elija el estado al que desea realizar la transición de
las instancias cuando entren en el grupo caliente. El valor predeterminado es Stopped.
b. ParaTamaño mínimo de la piscina, escriba el número mínimo de instancias que mantener en el
grupo de.
c. (Opcional) ParaCapacidad máxima preparada, elijaDefinir un número determinado de instanciassi
desea controlar la cantidad de capacidad disponible en la piscina caliente.

Si eligeDefinir un número determinado de instancias, debe introducir el recuento máximo de


instancias. Este valor representa el número máximo de instancias que pueden estar en el grupo
de grupo activo y el grupo de Auto Scaling al mismo tiempo. Si introduce un valor menor que la
capacidad deseada del grupo y elige no especificar un valor paraTamaño mínimo de la piscina, la
capacidad de la piscina caliente será 0.
Note

Mantener el valor predeterminadoIgual a la capacidad máxima del grupo de Auto


Scalingle ayuda a mantener un grupo caliente que tiene un tamaño que coincida con la
diferencia entre la capacidad máxima del grupo Auto Scaling y su capacidad deseada.
Para facilitar la gestión de su piscina caliente, le recomendamos que utilice el valor
predeterminado para que no tenga que recordar ajustar la configuración de su piscina
caliente para controlar el tamaño de la piscina caliente.
6. Seleccione Create (Crear).

Agregue una piscina caliente (AWS CLI)


Los siguientes ejemplos muestran cómo agregar un grupo deAWS CLI put-warm poolComando de. Cada
ejemplo muestra cómo puede especificar el comando en cada uno de los ejemplos de casos.

Contenido
• Ejemplo 1: Mantener las instancias en elStoppedstate (p. 202)
• Ejemplo 2: Mantener las instancias en elRunningstate (p. 203)
• Ejemplo 3: Especificar el número mínimo de instancias en el grupo (p. 203)
• Ejemplo 4: Definición de un tamaño de piscina caliente separado del tamaño máximo del
grupo (p. 203)
• Ejemplo 5: Definición de un tamaño absoluto de piscina caliente (p. 203)

Ejemplo 1: Mantener las instancias en elStoppedstate


La siguiente configuración de grupo caliente es para un grupo caliente que mantiene instancias en
unStoppedEstado. Mientras se detienen las instancias, no tiene que pagar ninguna tarifa de uso de
instancias de EC2, aunque se le cobrará por cualquier otro recurso asociado a las instancias detenidas,
como volúmenes de EBS y direcciones IP elásticas.

aws autoscaling put-warm-pool --auto-scaling-group-name my-asg /


--pool-state Stopped

202
Auto Scaling de Amazon EC2 Guía del usuario
Agregue una piscina caliente (AWS CLI)

Ejemplo 2: Mantener las instancias en elRunningstate


La siguiente configuración de ejemplo es para un grupo activo que mantiene las instancias en
unRunningEstado en lugar deStoppedEstado. Paga las instancias mientras se ejecutan. Los costos
incurridos se basan en el tipo de instancia.

aws autoscaling put-warm-pool --auto-scaling-group-name my-asg /


--pool-state Running

Ejemplo 3: Especificar el número mínimo de instancias en el


grupo
La siguiente configuración de grupo caliente especifica un mínimo de 4 instancias en el grupo caliente, de
modo que este número de instancias esté siempre listo para manejar los picos de tráfico.

aws autoscaling put-warm-pool --auto-scaling-group-name my-asg /


--pool-state Stopped --min-size 4

Ejemplo 4: Definición de un tamaño de piscina caliente separado


del tamaño máximo del grupo
Por lo general, debido a que tiene una buena comprensión de cuánto por encima de su capacidad deseada
para establecer su capacidad máxima, no es necesario definir un tamaño máximo adicional. Amazon EC2
Auto Scaling simplemente crea un grupo cálido que cambia de tamaño dinámicamente en función de
dónde se establezca su capacidad máxima.

Sin embargo, en los casos en los que desee tener control sobre la capacidad máxima del grupo y
no tener un impacto en el tamaño de la piscina caliente, puede usar el--max-group-prepared-
capacityOpción. Es posible que necesite usar esta opción cuando trabaje con grupos de Auto Scaling
muy grandes para administrar los beneficios de costos de tener un grupo caliente. Por ejemplo, un grupo
de Auto Scaling con 1000 instancias, una capacidad máxima de 1500 (para proporcionar capacidad
adicional para picos de tráfico de emergencia) y un grupo cálido de 100 instancias podrían alcanzar sus
objetivos mejor que un grupo cálido de 500 instancias.

La siguiente configuración de piscina caliente es para una piscina caliente que define su tamaño por
separado del tamaño máximo del grupo. Supongamos que el grupo Auto Scaling tiene una capacidad
deseada de 800. El tamaño de la piscina caliente será 100 cuando ejecute este comando y el grupo se
esté inicializando.

aws autoscaling put-warm-pool --auto-scaling-group-name my-asg /


--pool-state Stopped --max-group-prepared-capacity 900

Para mantener un número mínimo de instancias en el grupo de almacenamiento activo, incluya el--min-
sizecon el comando, de la siguiente manera.

aws autoscaling put-warm-pool --auto-scaling-group-name my-asg /


--pool-state Stopped --max-group-prepared-capacity 900 --min-size 25

Ejemplo 5: Definición de un tamaño absoluto de piscina caliente


Si establece los valores para el parámetro--max-group-prepared-capacityy--min-sizeal mismo
valor, la piscina caliente tendrá un tamaño absoluto. La siguiente configuración de piscina caliente es para
una piscina caliente que mantiene un tamaño de piscina caliente constante de 10 instancias.

203
Auto Scaling de Amazon EC2 Guía del usuario
Eliminar una piscina caliente

aws autoscaling put-warm-pool --auto-scaling-group-name my-asg /


--pool-state Stopped --min-size 10 --max-group-prepared-capacity 10

Eliminar una piscina caliente


Cuando ya no necesite la piscina caliente, utilice el siguiente procedimiento para eliminarla.

Para eliminar tu piscina caliente(consola)

1. Abra la consola de Amazon EC2 Auto Scalinghttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto a un grupo existente.

Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto
Scaling) que muestra información sobre el grupo seleccionado.
3. Elija Actions (Acciones), Delete (Eliminar).
4. Cuando se le pida confirmación, elija Delete (Eliminar).

Para eliminar su piscina caliente (AWS CLI)

Utilice el siguientedelete-warm-poolpara eliminar la piscina caliente.

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

Si hay instancias en el grupo activo, o si las actividades de escalado están en curso, utilice la
herramientadelete-warm-poolComando de la con la--force-deleteOpción. Esta opción también
finalizará las instancias de Amazon EC2 y cualquier acción pendiente del ciclo de vida.

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

Limitations
• No puede agregar un grupo activo a grupos de Auto Scaling que tengan una directiva de instancias
mixtas o que inicien instancias puntuales.
• Puede poner una instancia en unStoppedSolo si tiene un volumen de Amazon EBS como su dispositivo
raíz. Las instancias que utilizan almacenes de instancias para el dispositivo raíz no se pueden detener.
• Si su grupo caliente se agota cuando hay un evento de escalabilidad horizontal, las instancias se
iniciarán directamente en el grupo Auto Scaling (unInicio en frío). También puede experimentar
arranques en frío si una zona de disponibilidad está fuera de capacidad.
• Si intenta utilizar grupos activos con grupos de nodos gestionados de Amazon Elastic Container Service
(Amazon ECS) o Elastic Kubernetes Service (Amazon EKS), existe la posibilidad de que estos servicios
programen trabajos en una instancia antes de que llegue al grupo activo.

Ciclo de vida de la instancia


Las instancias del grupo caliente mantienen su propio ciclo de vida independiente para ayudarle a crear las
acciones del ciclo de vida adecuadas para cada transición. Este ciclo de vida está diseñado para facilitar el
uso de Notificaciones de eventos para invocar acciones en un servicio de destino (por ejemplo, una función
Lambda).

Tenga en cuenta que las API que utiliza para crear y administrar enlaces del ciclo de vida no han cambiado
(sólo ha cambiado el ciclo de vida de la instancia).

204
Auto Scaling de Amazon EC2 Guía del usuario
Ciclo de vida de la instancia

Una instancia de Amazon EC2 pasa por diferentes estados desde el momento en que se lanza hasta su
finalización. Puede crear enlaces de ciclo de vida para actuar en estos estados de evento, cuando una
instancia ha pasado de un estado a otro.

En el siguiente diagrama se muestra la transición entre cada estado:

¹ Si optó por colocar instancias calentadas en unRunningestado, instancias en la transición del grupo
calentado deWarmed:PendingDe aWarmed:Runningen lugar de.

Como se muestra en el diagrama anterior:

• Un enlace de ciclo de vida se ejecuta inmediatamente después de que se inicia una instancia en el
grupo caliente, cuando pasa a laWarmed:Pending:WaitEstado.
• Otro enlace del ciclo de vida se ejecuta inmediatamente antes de que una instancia entre en
elInService, cuando transita a la clasePending:WaitEstado.
• Un enlace final del ciclo de vida se ejecuta inmediatamente antes de que se termine la instancia, cuando
pasa a laTerminating:WaitEstado.

Cuando agregue ganchos del ciclo de vida, tenga en cuenta lo siguiente:

• Cuando agrega un enlace de ciclo de vida de lanzamiento, Amazon EC2 Auto Scaling pausa una
instancia que pasa a laWarmed:Pending:WaitEstado y elPending:WaitEstado.
• Si la demanda de la aplicación agota el grupo activo, Amazon EC2 Auto Scaling puede iniciar instancias
directamente en el grupo Auto Scaling si el grupo aún no ha alcanzado su capacidad máxima. En este
caso, el enlace del ciclo de vida de lanzamiento solo detiene la instancia en elPending:WaitEstado.

Estas son algunas de las razones por las que puede crear acciones del ciclo de vida para las instancias
que salen del grupo activo:

• Puede utilizar este tiempo para preparar instancias de EC2 para su uso, por ejemplo, si tiene servicios
que deben iniciarse para que la aplicación funcione correctamente.
• Desea rellenar previamente los datos de la caché para asegurarse de que un nuevo servidor no se inicie
con una caché completamente vacía.
• Desea registrar nuevas instancias como instancias administradas con su servicio de administración de
configuración.

205
Auto Scaling de Amazon EC2 Guía del usuario
Ciclo de vida de la instancia

Destinos de notificación
Amazon EC2 Auto Scaling puede enviar mensajes de notificación de eventos del ciclo de vida a los
siguientes destinos de notificación.

• Funciones de Lambda (a través de EventBridge)


• Temas de Amazon SNS
• Colas de Amazon SQS

La siguiente información puede ayudarle a configurar estos destinos de notificación al crear enlaces del
ciclo de vida basándose en los siguientes procedimientos:

• Enrutar notificaciones a Lambda mediante EventBridge (p. 188)


• Recibir notificaciones mediante Amazon SNS (p. 189)
• Recibir notificaciones mediante Amazon SQS (p. 190)

Reglas de EventBridge: Con Amazon EventBridge puede crear reglas que activen acciones programáticas
en respuesta a eventos de grupo activo. Por ejemplo, puede crear dos reglas de EventBridge, una para
cuando una instancia está entrando en un grupo activo y otra para cuando una instancia sale del grupo de.

Las reglas de EventBridge pueden activar una función Lambda para realizar acciones programáticas en
instancias, dependiendo del caso de uso y la aplicación. La función Lambda se invoca con un evento
entrante emitido por el grupo Auto Scaling. Lambda sabe cuál es la función de Lambda que debe invocar
basándose en el patrón de eventos de la regla EventBridge.

Para obtener más información, consulte Creación de reglas de EventBridge para eventos (p. 210).

Destinos de notificación de Amazon SNS: Puede añadir enlaces del ciclo de vida para recibir notificaciones
de Amazon SNS cuando se produzca una acción del ciclo de vida. Estas notificaciones se envían a los
destinatarios que están suscritos al tema de Amazon SNS que especifique.

Antes de agregar un enlace de ciclo de vida que notifica a un tema de Amazon SNS, debe haber
configurado el tema y un rol de servicio de IAM que otorgue permiso a Amazon EC2 Auto Scaling para
publicar en Amazon SNS.

Para recibir notificaciones por separado sobre las instancias que salen y entran en el grupo activo, también
debe haber configurado el filtrado de Amazon SNS.

Destinos de notificación de Amazon SQS: Puede agregar enlaces del ciclo de vida a un grupo de Auto
Scaling y utilizar Amazon SQS para configurar un destino que reciba notificaciones cuando se produzca
una acción del ciclo de vida. Estas notificaciones se envían a la cola de Amazon SQS que especifique.

Antes de agregar un enlace de ciclo de vida que notifique a una cola de Amazon SQS, debe haber
configurado la cola y un rol de servicio de IAM que otorgue permiso a Amazon EC2 Auto Scaling para
enviar mensajes de notificación a Amazon SQS.

Si desea que el consumidor de cola procese notificaciones separadas sobre las instancias que salen pero
no entran en el grupo activo (o viceversa), también debe haber configurado el consumidor de cola para
analizar el mensaje y, a continuación, actuar sobre el mensaje si un atributo específico coincide con el
valor deseado.

206
Auto Scaling de Amazon EC2 Guía del usuario
Tipos de eventos y patrones de eventos

Tipos de eventos y patrones de eventos que se


utilizan al agregar o actualizar enlaces del ciclo de
vida
Cuando agrega enlaces del ciclo de vida al grupo Auto Scaling, los eventos se envían a EventBridge en
formato JSON. Puede crear una regla EventBridge que utilice un patrón de eventos para filtrar los eventos
entrantes y, a continuación, invoca la función Lambda u otro destino.

Hay dos tipos de eventos que se emiten para los ganchos del ciclo de vida:

• EC2 Instance-launch Lifecycle Action


• EC2 Instance-terminate Lifecycle Action.

Después de agregar un grupo caliente a su grupo Auto Scaling, eldetailsección paraEC2 Instance-
launch Lifecycle Actioneventos contiene nuevosOriginyDestinationCampos de.

Los valores deOriginyDestinationpuede ser el siguiente:

EC2 | AutoScalingGroup | WarmPool

Contenido
• Eventos en piscina caliente (p. 207)
• Ejemplo de patrones de eventos (p. 209)

Eventos en piscina caliente


En esta sección se muestra un ejemplo de eventos de Amazon EC2 Auto Scaling. Los eventos se emiten
en la medida en que sea posible.

Instancias vinculadas a la piscina caliente

En el ejemplo siguiente se muestra un evento para un enlace de ciclo de vida para


elWarmed:Pending:WaitEstado. Representa una instancia que se está lanzando en el grupo caliente.

{
"version": "0",
"id": "18b2ec17-3e9b-4c15-8024-ff2e8ce8786a",
"detail-type": "EC2 Instance-launch Lifecycle Action",
"source": "aws.autoscaling",
"account": "123456789012",
"time": "2021-01-13T00:12:37.214Z",
"region": "us-west-2",
"resources": [
"arn:aws:autoscaling:us-west-2:123456789012:autoScalingGroup:042cba90-
ad2f-431c-9b4d-6d9055bcc9fb:autoScalingGroupName/my-asg"
],
"detail": {
"LifecycleActionToken": "71514b9d-6a40-4b26-8523-05e7eEXAMPLE",
"AutoScalingGroupName": "my-asg",
"LifecycleHookName": "my-lifecycle-hook-for-warming-instances",
"EC2InstanceId": "i-1234567890abcdef0",
"LifecycleTransition": "autoscaling:EC2_INSTANCE_LAUNCHING",
"NotificationMetadata": "additional-info",
"Origin": "EC2",
"Destination": "WarmPool"

207
Auto Scaling de Amazon EC2 Guía del usuario
Tipos de eventos y patrones de eventos

}
}

Instancias que salen de la piscina caliente

En el ejemplo siguiente se muestra un evento para un enlace de ciclo de vida para


elPending:WaitEstado. Representa una instancia que sale de la piscina caliente debido a un evento de
escalado horizontal.

{
"version": "0",
"id": "5985cdde-1f01-9ae2-1498-3c8ea162d141",
"detail-type": "EC2 Instance-launch Lifecycle Action",
"source": "aws.autoscaling",
"account": "123456789012",
"time": "2021-01-19T00:35:52.359Z",
"region": "us-west-2",
"resources": [
"arn:aws:autoscaling:us-west-2:123456789012:autoScalingGroup:042cba90-
ad2f-431c-9b4d-6d9055bcc9fb:autoScalingGroupName/my-asg"
],
"detail": {
"LifecycleActionToken": "19cc4d4a-e450-4d1c-b448-0de67EXAMPLE",
"AutoScalingGroupName": "my-asg",
"LifecycleHookName": "my-lifecycle-hook-for-warmed-instances",
"EC2InstanceId": "i-1234567890abcdef0",
"LifecycleTransition": "autoscaling:EC2_INSTANCE_LAUNCHING",
"NotificationMetadata": "additional-info",
"Origin": "WarmPool",
"Destination": "AutoScalingGroup"
}
}

Instancias que se lanzan fuera de la piscina caliente

En el ejemplo siguiente se muestra un evento para un enlace de ciclo de vida para


elPending:WaitEstado. Representa una instancia que se está iniciando directamente en el grupo Auto
Scaling.

{
"version": "0",
"id": "12345678-1234-1234-1234-123456789012",
"detail-type": "EC2 Instance-launch Lifecycle Action",
"source": "aws.autoscaling",
"account": "123456789012",
"time": "2021-02-01T17:18:06.082Z",
"region": "us-west-2",
"resources": [
"arn:aws:autoscaling:us-west-2:123456789012:autoScalingGroup:042cba90-
ad2f-431c-9b4d-6d9055bcc9fb:autoScalingGroupName/my-asg"
],
"detail": {
"LifecycleActionToken": "87654321-4321-4321-4321-21098EXAMPLE",
"AutoScalingGroupName": "my-asg",
"LifecycleHookName": "my-lifecycle-hook-for-launching-instances",
"EC2InstanceId": "i-1234567890abcdef0",
"LifecycleTransition": "autoscaling:EC2_INSTANCE_LAUNCHING",
"NotificationMetadata": "additional-info",
"Origin": "EC2",
"Destination": "AutoScalingGroup"
}
}

208
Auto Scaling de Amazon EC2 Guía del usuario
Tipos de eventos y patrones de eventos

Ejemplo de patrones de eventos


En la sección anterior se proporcionan eventos de ejemplo emitidos por Amazon EC2 Auto Scaling.

Los patrones de eventos de EventBridge tienen la misma estructura que los eventos con los que coinciden.
El patrón cita los campos para los que se desea encontrar coincidencias y proporciona los valores que está
buscando.

Los siguientes campos del evento forman el patrón de eventos definido en la regla para invocar una
acción:

"source": "aws.autoscaling"

Identifica que el evento proviene de Amazon EC2 Auto Scaling.


"detail-type": "EC2 Instance-launch Lifecycle Action"

Identifica el tipo de evento.


"Origin": "EC2"

Identifica de dónde proviene la instancia.


"Destination": "WarmPool"

Identifica a dónde va la instancia.

Utilice el siguiente patrón de eventos de ejemplo para capturar todos los eventos asociados con las
instancias que entran en el grupo activo.

{
"source": [
"aws.autoscaling"
],
"detail-type": [
"EC2 Instance-launch Lifecycle Action"
],
"detail": {
"Origin": [
"EC2"
],
"Destination": [
"WarmPool"
]
}
}

Utilice el siguiente patrón de eventos de ejemplo para capturar todos los eventos asociados con instancias
que salen del grupo activo debido a un evento de escalabilidad horizontal.

{
"source": [
"aws.autoscaling"
],
"detail-type": [
"EC2 Instance-launch Lifecycle Action"
],
"detail": {
"Origin": [
"WarmPool"
],
"Destination": [
"AutoScalingGroup"

209
Auto Scaling de Amazon EC2 Guía del usuario
Creación de reglas de EventBridge para eventos

]
}
}

Utilice el siguiente patrón de eventos de ejemplo para capturar todos los eventos asociados con instancias
que se inician directamente en el grupo Auto Scaling.

{
"source": [
"aws.autoscaling"
],
"detail-type": [
"EC2 Instance-launch Lifecycle Action"
],
"detail": {
"Origin": [
"EC2"
],
"Destination": [
"AutoScalingGroup"
]
}
}

Utilice el siguiente patrón de eventos de muestra para capturar todos los eventos asociados conEC2
Instance-launch Lifecycle Action, independientemente del origen o destino.

{
"source": [
"aws.autoscaling"
],
"detail-type": [
"EC2 Instance-launch Lifecycle Action"
]
}

Creación de reglas de EventBridge para eventos


En los siguientes procedimientos se explica cómo crear una regla de EventBridge para eventos de piscina
caliente. Esta regla de ejemplo detecta eventos que utilizan el patrón de eventos para las instancias
que entran en el grupo activo y, a continuación, envía esos eventos a unAWS Lambdafunción para el
procesamiento. Un objetivo Lambda es el tema de este procedimiento, pero las reglas pueden invocar
muchos tipos de objetivos. Para obtener información sobre los destinos admitidos, consulteObjetivos de
Amazon EventBridgeen laGuía del usuario de Amazon EventBridge.

Antes de crear la regla, cree la propiedadAWS LambdaPara que la regla se utilice como destino. Cuando
cree la regla, deberá especificar esta función como destino de la regla. Para obtener información sobre
la creación de funciones de Lambda, consulteIntroducción a Lambdaen laAWS LambdaGuía para
desarrolladores. Para obtener una guía introductoria de estilo de aprendizaje para crear vínculos de ciclo
de vida, consulteTutorial: Configure un enlace de ciclo de vida que invoque una función Lambda (p. 195).

Crear una regla de EventBridge (consola)


Para crear una regla de eventos

1. Abra la consola de Amazon EventBridge en https://console.aws.amazon.com/events/.


2. En el panel de navegación, enEventos, elijaReglas.
3. En el navegadorReglassección, elijaCrear regla.

210
Auto Scaling de Amazon EC2 Guía del usuario
Creación de reglas de EventBridge para eventos

4. ParaNombre, introduzca un nombre para la regla. Si lo desea, introduzca una descripción de la regla
enDescripción.
5. UNDERDefinir patrón, elijaPatrón de eventos.
6. ParaPatrón de eventos, elijaPatrón personalizado.
7. Las reglas utilizan patrones de eventos para seleccionar eventos y dirigirlos a los destinos. Copie el
siguiente patrón enPatrón de eventos.

{
"source": [ "aws.autoscaling" ],
"detail-type": [ "EC2 Instance-launch Lifecycle Action" ],
"detail": {
"Origin": [ "EC2" ],
"Destination": [ "WarmPool" ]
}
}

8. Para guardar el patrón de eventos, elijaSave (Guardar).


9. En Select event bus (Seleccionar bus de eventos), elija AWS default event bus (Bus de eventos
predeterminado).
10. UNDERSeleccionar objetivos, paraObjetivo, elijaLambda function. Luego, paraFunciónElija la función
a la que desea enviar los eventos.
11. Cuando termine de introducir la configuración de la regla, elijaCrear.
12. Una vez que haya seguido estas instrucciones, continúe en Añadir enlaces de ciclo de vida (p. 192)
como siguiente paso.

Cree una regla de EventBridge (AWS CLI)


Si aún no lo ha hecho, cree la función de Lambda que desee que la regla utilice como destino. Cuando se
crea la función, anote el nombre de recurso de Amazon (ARN) de la función. Deberá especificar este ARN
cuando especifique el destino de la regla.

Para crear una regla de eventos

1. Para crear una regla que coincida con los eventos de instancias que entran en el grupo activo, utilice
el siguienteput-ruleComando de.

aws events put-rule --name my-rule --event-pattern file://pattern.json --state ENABLED

En el siguiente ejemplo se muestrapattern.jsonpara que coincida con el evento para las instancias
que entran en la piscina caliente.

{
"source": [ "aws.autoscaling" ],
"detail-type": [ "EC2 Instance-launch Lifecycle Action" ],
"detail": {
"Origin": [ "EC2" ],
"Destination": [ "WarmPool" ]
}
}

Si el comando se ejecuta correctamente, EventBridge responde con el ARN de la regla. Anote este
ARN. Deberá introducirlo en el paso 3.
2. Para especificar la función de Lambda que se va a utilizar como destino para la regla, utilice el
siguienteput-targetsComando de.

211
Auto Scaling de Amazon EC2 Guía del usuario
Ver el estado de la verificación de salud y el
motivo de los fallos de la verificación de salud

aws events put-targets --rule my-rule --targets


Id=1,Arn=arn:aws:lambda:region:123456789012:function:my-function

En el comando anterior,my-rulees el nombre que especificó para la regla en el paso 1 y el valor de la


propiedadArnes el ARN de la función que desea que la regla utilice como destino.
3. Para agregar permisos que permitan a la regla invocar la función Lambda de destino, utilice el
siguiente Lambdaadd-permissionComando de.

aws lambda add-permission --function-name my-function --statement-


id AllowInvokeFromExampleEvent \
--action 'lambda:InvokeFunction' --principal events.amazonaws.com --source-arn
arn:aws:events:region:123456789012:rule/my-rule

En el comando anterior:

• my-functiones el nombre de la función de Lambda que desea que la regla utilice como destino.
• AllowInvokeFromExampleEventes un identificador único que se define para describir la
instrucción en la directiva de función Lambda.
• source-arnes el ARN de la regla EventBridge.

Si el comando se ejecuta correctamente, recibirá un resultado similar al siguiente.

{
"Statement": "{\"Sid\":\"AllowInvokeFromExampleEvent\",
\"Effect\":\"Allow\",
\"Principal\":{\"Service\":\"events.amazonaws.com\"},
\"Action\":\"lambda:InvokeFunction\",
\"Resource\":\"arn:aws:lambda:us-west-2:123456789012:function:my-function\",
\"Condition\":
{\"ArnLike\":
{\"AWS:SourceArn\":
\"arn:aws:events:us-west-2:123456789012:rule/my-rule\"}}}"
}

LaStatementEl valor de es una versión de cadena JSON de la instrucción que se agregó a la política
de la función de Lambda.
4. Una vez que haya seguido estas instrucciones, continúe en Añadir enlaces de ciclo de vida (p. 192)
como siguiente paso.

Ver el estado de la verificación de salud y el motivo de


los fallos de la verificación de salud
Las comprobaciones de Health permiten que Amazon EC2 Auto Scaling determine cuándo una instancia
no está en buen estado y debe finalizarse. Para instancias de piscina caliente mantenidas en unStopped,
emplea el conocimiento que Amazon EBS tiene de unStoppedpara identificar las instancias que no están
en buen estado. Lo hace llamando al métodoDescribeVolumeStatusPara determinar el estado del
volumen de EBS asociado a la instancia. Para instancias de piscina caliente mantenidas en unRunning,
se basa en las comprobaciones de estado de EC2 para determinar el estado de la instancia. Aunque no
existe un período de gracia de comprobación de estado para las instancias de grupo activo, Amazon EC2
Auto Scaling no comienza a comprobar el estado de la instancia hasta que finalice el enlace del ciclo de
vida.

212
Auto Scaling de Amazon EC2 Guía del usuario
Ver el estado de la verificación de salud y el
motivo de los fallos de la verificación de salud

Cuando se comprueba que una instancia no está en buen estado, Amazon EC2 Auto Scaling elimina
automáticamente la instancia en mal estado y crea una nueva para reemplazarla. Por lo general, las
instancias se terminan unos minutos después de fallar la comprobación de estado. Para obtener más
información, consulte Reemplazar instancias en mal estado (p. 241).

También se admiten comprobaciones de estado personalizadas. Esto puede resultar útil si tiene su
propio sistema de comprobación de estado que puede detectar el estado de una instancia y enviar esta
información a Amazon EC2 Auto Scaling. Para obtener más información, consulte Uso de comprobaciones
de estado personalizadas (p. 241).

En la consola de Amazon EC2 Auto Scaling puede ver el estado (correcto o incorrecto) de las instancias de
la piscina caliente. También puede ver su estado de salud utilizandoAWS CLIo uno de los SDK de.

Para ver el estado de las instancias(consola)

1. Abra la consola de Amazon EC2 Auto Scalinghttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto al grupo de Auto Scaling.

Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto
Scaling) que muestra información sobre el grupo seleccionado.
3. En la páginaAdministración de instancias, eninstancias de piscina en caliente, elCiclo de vidacontiene
el estado de las instancias.

LaEstadomuestra la evaluación que Amazon EC2 Auto Scaling ha realizado sobre el estado de la
instancia.
Note

Las nuevas instancias comienzan en buen estado. Hasta que finalice el enlace del ciclo de
vida, no se comprueba el estado de una instancia.

Para ver el motivo de los fallos de la verificación de salud(consola)

1. Abra la consola de Amazon EC2 Auto Scalinghttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto al grupo de Auto Scaling.

Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto
Scaling) que muestra información sobre el grupo seleccionado.
3. En la páginaActividad, enHistorial de actividad, elEstadomuestra si su grupo de Auto Scaling ha
lanzado las instancias o las ha terminado correctamente.

Si finalizó cualquier instancia en mal estado, la propiedadCausamuestra la fecha y la hora de la


terminación y el motivo del error de comprobación de estado. Por ejemplo, «En 2021-04-01T 21:48:35
Z, se sacó de servicio una instancia en respuesta a un error en la comprobación de estado del
volumen de EBS».

Para ver el estado de las instancias de grupo caliente (AWS CLI)

Para ver el grupo de Auto ScalingDescribir-cálido piscinaComando de.

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

Resultado de ejemplo.

{
"WarmPoolConfiguration": {
"MinSize": 0,

213
Auto Scaling de Amazon EC2 Guía del usuario
Ver el estado de la verificación de salud y el
motivo de los fallos de la verificación de salud

"PoolState": "Stopped"
},
"Instances": [
{
"InstanceId": "i-0b5e5e7521cfaa46c",
"InstanceType": "t2.micro",
"AvailabilityZone": "us-west-2a",
"LifecycleState": "Warmed:Stopped",
"HealthStatus": "Healthy",
"LaunchTemplate": {
"LaunchTemplateId": "lt-08c4cd42f320d5dcd",
"LaunchTemplateName": "my-template-for-auto-scaling",
"Version": "1"
}
},
{
"InstanceId": "i-0e21af9dcfb7aa6bf",
"InstanceType": "t2.micro",
"AvailabilityZone": "us-west-2a",
"LifecycleState": "Warmed:Stopped",
"HealthStatus": "Healthy",
"LaunchTemplate": {
"LaunchTemplateId": "lt-08c4cd42f320d5dcd",
"LaunchTemplateName": "my-template-for-auto-scaling",
"Version": "1"
}
}
]
}

Para ver el motivo de los fallos de la verificación de saludAWS CLI)

Utilice el siguientedescribir-escalar-actividadesComando de.

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

A continuación se muestra un ejemplo de respuesta, dondeDescriptionindica que su grupo Auto Scaling


ha terminado una instancia yCauseindica el motivo del error de comprobación de estado.

Las actividades de escalado se ordenan por hora de inicio. En primer lugar, se describen las actividades
aún en curso.

{
"Activities": [
{
"ActivityId": "4c65e23d-a35a-4e7d-b6e4-2eaa8753dc12",
"AutoScalingGroupName": "my-asg",
"Description": "Terminating EC2 instance: i-04925c838b6438f14",
"Cause": "At 2021-04-01T21:48:35Z an instance was taken out of service in response to
EBS volume health check failure.",
"StartTime": "2021-04-01T21:48:35.859Z",
"EndTime": "2021-04-01T21:49:18Z",
"StatusCode": "Successful",
"Progress": 100,
"Details": "{\"Subnet ID\":\"subnet-5ea0c127\",\"Availability Zone\":\"us-west-2a
\"...}",
"AutoScalingGroupARN": "arn:aws:autoscaling:us-
west-2:123456789012:autoScalingGroup:283179a2-
f3ce-423d-93f6-66bb518232f7:autoScalingGroupName/my-asg"
},
...
]
}

214
Auto Scaling de Amazon EC2 Guía del usuario
Control de terminación de instancias

Controlar qué instancias de Auto Scaling terminan


durante la escala en
Amazon EC2 Auto Scaling utiliza políticas de terminación para determinar qué instancias finaliza primero
durante los eventos de escalado. Las políticas de terminación definen los criterios de terminación que
utiliza Amazon EC2 Auto Scaling al elegir qué instancias desea finalizar.

Amazon EC2 Auto Scaling utiliza una política de terminación predeterminada, pero puede elegir o crear
sus propias políticas de terminación con sus propios criterios de terminación. Esto le permite asegurarse
de que las instancias se terminan en función de sus necesidades específicas de la aplicación.

Asimismo, Amazon EC2 Auto Scaling proporciona protección de escalado de instancias. Cuando habilita
esta característica, evita que las instancias finalicen durante los eventos de escalado. Puede habilitar la
protección de escalado descendente de instancias cuando cree un grupo de Auto Scaling y puede cambiar
la configuración de las instancias en ejecución. Si habilita la protección de escalado descendente de
instancias en un grupo de Auto Scaling existente, todas las instancias nuevas que se lancen después de
eso tendrán habilitada la protección de escalado descendente.
Note

La protección de escalado de instancias no garantiza que las instancias no se terminen en caso


de error humano; por ejemplo, si alguien finaliza manualmente una instancia mediante la consola
de Amazon EC2 oAWS CLI. Para proteger su instancia contra la terminación accidental, puede
utilizar la protección de terminación de Amazon EC2. Sin embargo, incluso con la protección
de terminación y la protección de escalado de instancia habilitada, los datos guardados en el
almacenamiento de instancias pueden perderse si una comprobación de estado determina que
una instancia no está en buen estado o si el grupo se elimina accidentalmente. Al igual que con
cualquier entorno, una práctica recomendada es realizar copias de seguridad de sus datos con
frecuencia o cuando sea apropiado para sus requisitos de continuidad del negocio.

Contenido
• Escenarios de uso de directivas de terminación (p. 215)
• Uso de políticas de terminación de Amazon EC2 Auto Scaling (p. 217)
• Creación de una política de terminación personalizada con Lambda (p. 221)
• Usar la protección de escalado ascendente de instancias (p. 225)

Escenarios de uso de directivas de terminación


En las secciones siguientes se describen los escenarios en los que Auto Scaling de Amazon EC2 utiliza
políticas de terminación.

Contenido
• Eventos de escalado descendente (p. 215)
• Actualizaciones de instancias (p. 216)
• Reequilibrio de zonas de disponibilidad (p. 216)

Eventos de escalado descendente


Un evento de escalado descendente se produce cuando hay un nuevo valor para la capacidad deseada de
un grupo de Auto Scaling inferior a la capacidad actual del grupo.

Los eventos de escalado desplegable se producen en los siguientes escenarios:

215
Auto Scaling de Amazon EC2 Guía del usuario
Escale políticas de terminación

• Cuando se utilizan políticas de escalado dinámico y el tamaño del grupo disminuye como resultado de
cambios en el valor de una métrica
• Cuando se utiliza la escala programada y el tamaño del grupo disminuye como resultado de una acción
programada
• Cuando disminuye manualmente el tamaño del grupo

En el ejemplo siguiente se muestra cómo funcionan las directivas de terminación cuando hay un evento de
escalado en.

1. En este ejemplo, el grupo de Auto Scaling tiene un tipo de instancia, dos zonas de disponibilidad y una
capacidad deseada de dos instancias. También tiene una política de escalado dinámico que agrega y
elimina instancias cuando la utilización de recursos aumenta o disminuye. Las dos instancias de este
grupo están distribuidas entre las dos zonas de disponibilidad, tal y como se muestra en el siguiente
diagrama.

2. Cuando el grupo de Auto Scaling (Auto Scaling) de Amazon EC2 lanza una nueva instancia. El grupo
Auto Scaling ahora tiene tres instancias, distribuidas en las dos zonas de disponibilidad, como se
muestra en el siguiente diagrama.

3. Cuando se escala el grupo Auto Scaling, Amazon EC2 Auto Scaling finaliza una de las instancias.
4. Si no ha asignado una política de terminación al grupo, Amazon EC2 Auto Scaling utiliza la política
de terminación predeterminada. Selecciona la zona de disponibilidad con dos instancias y termina la
instancia lanzada desde la plantilla de lanzamiento más antigua o la configuración de lanzamiento. Si las
instancias se lanzaron desde la misma plantilla de lanzamiento o configuración de lanzamiento, Amazon
EC2 Auto Scaling selecciona la instancia más próxima a la siguiente hora de facturación y la termina.

Actualizaciones de instancias
Las actualizaciones de instancias se lanzan para actualizar las instancias del grupo de Auto Scaling.
Durante una actualización de instancias, Amazon EC2 Auto Scaling termina las instancias del grupo y, a
continuación, lanza los reemplazos de las instancias terminadas. La directiva de terminación del grupo
Auto Scaling controla qué instancias se reemplazan primero.

Reequilibrio de zonas de disponibilidad


Amazon EC2 Auto Scaling equilibra la capacidad de manera uniforme en las zonas de disponibilidad
habilitadas para su grupo de Auto Scaling. Esto ayuda a reducir el impacto de una interrupción en
la zona de disponibilidad. Si la distribución de la capacidad entre las zonas de disponibilidad queda

216
Auto Scaling de Amazon EC2 Guía del usuario
Trabajar con políticas de terminación

desbalanceada, Amazon EC2 Auto Scaling vuelve a equilibrar el grupo Auto Scaling iniciando instancias en
las zonas de disponibilidad habilitadas con el menor número de instancias y finalizando instancias en otros
lugares. La política de terminación controla qué instancias tienen prioridad para la terminación primero.

Existen varias razones por las que la distribución de instancias entre las zonas de disponibilidad puede
quedar desequilibrada.

Eliminación de instancias

Si desasocia instancias del grupo de Auto Scaling, o termina explícitamente instancias y disminuye
la capacidad deseada, lo que impide que se lancen instancias de reemplazo, el grupo puede quedar
desequilibrado. De lo contrario, Auto Scaling de Amazon EC2 lo compensa reequilibrando las zonas
de disponibilidad.
Usar zonas de disponibilidad diferentes de las especificadas originalmente

Si expande el grupo de escalado automático para incluir zonas de disponibilidad adicionales, o cambia
las zonas de disponibilidad que se utilizan, Amazon EC2 Auto Scaling lanza instancias en las nuevas
zonas de disponibilidad y termina instancias en otras zonas para garantizar que el grupo de escalado
automático abarque las zonas de disponibilidad. uniformemente.
Interrupción de disponibilidad

Las interrupciones de disponibilidad son raras. Sin embargo, si una zona de disponibilidad deja de
estar disponible y se recupera más adelante, el grupo de Auto Scaling puede quedar desequilibrado
entre las zonas de disponibilidad. El Auto Scaling de Amazon EC2 intenta volver a equilibrar
gradualmente el grupo y el reequilibrio podría terminar instancias en otras zonas.

Por ejemplo, imagine que tiene un grupo de Auto Scaling que tiene un tipo de instancia, dos zonas
de disponibilidad y una capacidad deseada de dos instancias. En una situación en la que se produce
un error en una zona de disponibilidad, Amazon EC2 Auto Scaling lanza automáticamente una nueva
instancia en la zona de disponibilidad en buen estado para reemplazar la de la zona de disponibilidad
en mal estado. A continuación, cuando la zona de disponibilidad en mal estado vuelve a estar en buen
estado más adelante, Amazon EC2 Auto Scaling lanza automáticamente una nueva instancia en esta
zona, que a su vez termina una instancia en la zona no afectada.

Note

Durante el reequilibrio, Amazon EC2 Auto Scaling lanza nuevas instancias antes de terminar las
antiguas, por lo que no se pone en peligro el desempeño ni la disponibilidad de su aplicación.
Como Amazon EC2 Auto Scaling intenta lanzar nuevas instancias antes de terminar las antiguas,
el hecho de satisfacer por completo o casi la capacidad máxima especificada podría impedir o
detener completamente las actividades de reequilibrio. Para evitar este problema, el sistema
puede superar temporalmente la capacidad máxima especificada de un grupo en un margen del
10% (o en un margen de una instancia, la que sea mayor) durante una actividad de reequilibrio.
El margen solo se amplía si el grupo tiene o se aproxima a la capacidad máxima y necesita
reequilibrarse, ya sea por una distribución de zonas solicitada por el usuario o para compensar los
problemas de disponibilidad de zona. La extensión se mantiene solamente mientras sea necesaria
para reequilibrar el grupo de.

Uso de políticas de terminación de Amazon EC2 Auto


Scaling
En este tema se proporciona información detallada sobre la política de terminación predeterminada, así
como las opciones disponibles para que pueda elegir diferentes políticas de terminación para satisfacer las
necesidades de su aplicación. Al elegir diferentes políticas de terminación, puede controlar qué instancias
prefiere terminar primero cuando se produzca un evento de escalado. Por ejemplo, puede elegir una

217
Auto Scaling de Amazon EC2 Guía del usuario
Trabajar con políticas de terminación

política de terminación diferente para que Amazon EC2 Auto Scaling dé prioridad a la terminación de las
instancias más antiguas.
Cuando Amazon EC2 Auto Scaling termina instancias, intenta mantener un equilibrio entre las zonas de
disponibilidad utilizadas por el grupo de. El mantenimiento del equilibrio entre las zonas de disponibilidad
tiene prioridad sobre las políticas de terminación. Si una zona de disponibilidad tiene más instancias que
las otras zonas de disponibilidad usadas por el grupo, Amazon EC2 Auto Scaling aplica las políticas de
terminación a las instancias de la zona de disponibilidad desequilibrada. Si las zonas de disponibilidad
utilizadas por el grupo están equilibradas, Amazon EC2 Auto Scaling aplica las políticas de terminación en
todas las zonas de disponibilidad del grupo.

Contenido
• Política de terminación predeterminada (p. 218)
• Directiva de terminación predeterminada y grupos de instancias mixtas (p. 218)
• Usar diferentes políticas de terminación (p. 219)
• Uso de diferentes políticas de terminación (consola) (p. 220)
• El uso de diferentes políticas de terminación (AWS CLI) (p. 220)

Política de terminación predeterminada


La directiva de terminación predeterminada aplica varios criterios de terminación antes de seleccionar
una instancia para finalizar. Cuando Amazon EC2 Auto Scaling termina instancias, determina en primer
lugar qué zonas de disponibilidad tienen más instancias y encuentra al menos una instancia que no está
protegida frente al escalado descendente. Dentro de la zona de disponibilidad seleccionada, se aplica el
siguiente comportamiento predeterminado de directiva de terminación:

1. Determine si cualquiera de las instancias aptas para la terminación usan la configuración o plantilla de
lanzamiento más antigua.
a. [Para grupos de Auto Scaling que utilizan una plantilla de inicio]
Determina si alguna de las instancias utiliza la plantilla de lanzamiento más antigua, a menos que
haya instancias que utilicen una configuración de lanzamiento. Auto Scaling de Amazon EC2 termina
las instancias que utilizan una configuración de lanzamiento antes de terminar las instancias que
utilizan una plantilla de lanzamiento.
b. [Para grupos de Auto Scaling que utilizan una configuración de lanzamiento]
Determine si alguna de las instancias utiliza la configuración de lanzamiento más antigua.
2. Después de aplicar los criterios anteriores, si hay varias instancias desprotegidas que deban terminarse,
determine qué instancias están más próximas a la siguiente hora de facturación. Si hay varias instancias
desprotegidas que están más próximas a la siguiente hora de facturación, termina una de estas
instancias aleatoriamente.

Tenga en cuenta que, al terminar una instancia que está más próxima a la siguiente hora de facturación,
maximiza el uso de las instancias que se cobran por hora. Como alternativa, si su grupo de Auto Scaling
utiliza Amazon Linux, Windows o Ubuntu, su uso de EC2 se factura en incrementos de un segundo.
Para obtener más información, consulte Precios de Amazon EC2.

Directiva de terminación predeterminada y grupos de instancias


mixtas
Cuando un grupo de Auto Scaling condirectiva de instancias mixtas (p. 56)Durante el escalado
descendente, Amazon EC2 Auto Scaling sigue utilizando políticas de terminación para dar prioridad a las
instancias que se van a terminar, pero primero identifica cuáles de los dos tipos (spot o bajo demanda)
deben terminarse. A continuación, aplica las políticas de terminación en cada zona de disponibilidad

218
Auto Scaling de Amazon EC2 Guía del usuario
Trabajar con políticas de terminación

individualmente. También identifica qué instancias (dentro de la opción de compra identificada) en las que
las zonas de disponibilidad que se van a terminar, resultarán en que las zonas de disponibilidad estén más
equilibradas. La misma lógica se aplica a los grupos de Auto Scaling que utilizan una configuración de
instancias mixtas con ponderaciones definidas para los tipos de instancia.

La política de terminación predeterminada cambia ligeramente debido a las diferencias en cómodirectivas


de instancias mixtas (p. 56)Se implementan. Se aplica el siguiente comportamiento nuevo de la directiva
de terminación predeterminada:

1. Determine qué instancias son aptas para la terminación con el fin de alinear las instancias restantes con
elEstrategia de asignación (p. 57)Para la instancia de spot o bajo demanda que se está terminando.

Por ejemplo, después de iniciar las instancias, es posible que cambie el orden de prioridad de los tipos
de instancia preferidos. Cuando se produce un evento de escalado descendente, Amazon EC2 Auto
Scaling intenta apartar gradualmente las instancias bajo demanda de los tipos de instancia que tienen
menor prioridad.
2. Determine si cualquiera de las instancias aptas para la terminación usan la configuración o plantilla de
lanzamiento más antigua.
a. [Para grupos de Auto Scaling que utilizan una plantilla de inicio]

Determina si alguna de las instancias utiliza la plantilla de lanzamiento más antigua, a menos que
haya instancias que utilicen una configuración de lanzamiento. Auto Scaling de Amazon EC2 termina
las instancias que utilizan una configuración de lanzamiento antes de terminar las instancias que
utilizan una plantilla de lanzamiento.
b. [Para grupos de Auto Scaling que utilizan una configuración de lanzamiento]

Determine si alguna de las instancias utiliza la configuración de lanzamiento más antigua.


3. Después de aplicar los criterios anteriores, si hay varias instancias desprotegidas que deban terminarse,
determine qué instancias están más próximas a la siguiente hora de facturación. Si hay varias instancias
desprotegidas que están más próximas a la siguiente hora de facturación, termina una de estas
instancias aleatoriamente.

Usar diferentes políticas de terminación


Para especificar los criterios de terminación que se aplicarán antes de que Amazon EC2 Auto Scaling elija
una instancia para la terminación, puede elegir una de las siguientes políticas de terminación predefinidas:

• Default. Termina las instancias de acuerdo con la política de terminación predeterminada. Esta
directiva resulta útil cuando desea que la estrategia de asignación de subasta se evalúe antes que
cualquier otra directiva, de modo que cada vez que se terminen o reemplacen las instancias puntuales,
siga utilizando las instancias puntuales en los grupos óptimos. También es útil, por ejemplo, cuando
desea mover las configuraciones de inicio y comenzar a usar plantillas de lanzamiento.
• AllocationStrategy. Termine instancias del grupo de Auto Scaling para alinear las instancias
restantes con la estrategia de asignación para el tipo de instancia que se va a terminar (una instancia de
spot o una instancia bajo demanda). Esta política es útil cuando han cambiado los tipos de instancias
que prefiera. Si la estrategia de asignación de spot es lowest-price, puede reequilibrar gradualmente
la distribución de instancias de spot en sus grupos de spot con los precios más bajos. Si la estrategia de
asignación de spot es capacity-optimized, puede reequilibrar gradualmente la distribución de las
instancias de spot en los grupos de spot donde hay más capacidad de spot disponibles. También puede
reemplazar gradualmente las instancias bajo demanda de un tipo de prioridad menor por otras de un tipo
de prioridad mayor.
• OldestLaunchTemplate. Termina las instancias que tienen la plantilla de lanzamiento más antigua.
Con esta política, las instancias que utilizan una plantilla de lanzamiento que no es la actual terminan
primero, seguidas de las instancias que utilizan la versión más antigua de la plantilla de lanzamiento
actual. Esta política es útil cuando va a actualizar un grupo y eliminar progresivamente las instancias de
una configuración anterior.

219
Auto Scaling de Amazon EC2 Guía del usuario
Trabajar con políticas de terminación

• OldestLaunchConfiguration. Termina las instancias que tienen la configuración de lanzamiento


más antigua. Esta política es útil cuando va a actualizar un grupo y eliminar progresivamente las
instancias de una configuración anterior.
• ClosestToNextInstanceHour. Termina las instancias que están más próximas a la siguiente hora
de facturación. Esta política ayuda a maximizar el uso de las instancias que tienen un cargo por hora.
(Solo las instancias que utilizan Amazon Linux, Windows o Ubuntu se facturan en incrementos de un
segundo).
• NewestInstance. Termina la instancia más nueva del grupo. Esta política es útil cuando va a probar
una nueva configuración de lanzamiento, pero no desea mantenerla en producción.
• OldestInstance. Termina la instancia más antigua del grupo. Esta opción es útil cuando va a
actualizar las instancias del grupo Auto Scaling (Auto) a un nuevo tipo de instancia EC2. Puede sustituir
gradualmente las instancias del tipo antiguo por instancias del tipo nuevo.
Note

Amazon EC2 Auto Scaling siempre equilibra primero las instancias en las zonas de
disponibilidad, independientemente de la política de terminación que se utilice. Como
resultado, es posible que encuentre situaciones en las que algunas instancias más recientes
se terminen antes de las instancias más antiguas. Por ejemplo, cuando se agrega una zona de
disponibilidad más recientemente, o cuando una zona de disponibilidad tiene más instancias
que las otras zonas de disponibilidad usadas por el grupo.

Uso de diferentes políticas de terminación (consola)


Una vez creado el grupo Auto Scaling, puede actualizar las políticas de terminación del grupo. La política
de terminación predeterminada se utiliza automáticamente. Puede sustituir la política predeterminada por
una política de terminación diferente (comoOldestLaunchTemplateLas políticas de terminación están
enumeradas en el orden en el que deben aplicarse.

Para elegir diferentes políticas de terminación

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto al grupo de Auto Scaling.

Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto
Scaling) que muestra información sobre el grupo seleccionado.
3. En la pestaña Details (Detalles) elija (Advanced configurations) Configuraciones avanzadas, Edit
(Editar).
4. Para Termination policies (Políticas de terminación), elija una o varias políticas de terminación. Si
elige varias políticas, muéstrelas en el orden en el que deben aplicarse. Si utiliza la política Default
(Predeterminada), sitúela en la última posición de la lista.
Note

En la actualidad, elpolíticas de terminación personalizadas con LambdaLa característica solo


está disponible si utiliza laAWS CLIo un SDK para actualizar el grupo Auto Scaling y no se
puede actualizar desde la consola.
5. Elija Update (Actualizar).

El uso de diferentes políticas de terminación (AWS CLI)


La directiva de terminación predeterminada se utiliza automáticamente a menos que se especifique una
directiva diferente.

Para utilizar una política de terminación diferente

220
Auto Scaling de Amazon EC2 Guía del usuario
Creación de una política de
terminación personalizada con Lambda

Utilice uno de los siguientes comandos:

• create-auto-scaling-group
• update-auto-scaling-group

Puede utilizar políticas de terminación de manera individual o combinarlas en una lista de


políticas. Por ejemplo, utilice el siguiente comando para actualizar un grupo de Auto Scaling
para utilizar la funciónOldestLaunchConfigurationprimero y, a continuación, utilice
laClosestToNextInstanceHourpolítica.

aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-asg --termination-


policies "OldestLaunchConfiguration" "ClosestToNextInstanceHour"

Si utiliza la política de terminación Default, colóquela la última en la lista de políticas de terminación. Por
ejemplo, --termination-policies "OldestLaunchConfiguration" "Default".

Para utilizar una política de terminación personalizada, primero debe crear la política de terminación
medianteAWS Lambda. Para especificar la función Lambda que se va a utilizar como política de
terminación, colóquela la primera en la lista de políticas de terminación. Por ejemplo, --termination-
policies "arn:aws:lambda:us-west-2:123456789012:function:HelloFunction:prod"
"OldestLaunchConfiguration". Para obtener más información, consulte Creación de una política de
terminación personalizada con Lambda (p. 221).

Creación de una política de terminación personalizada


con Lambda
Amazon EC2 Auto Scaling utiliza políticas de terminación para priorizar qué instancias deben terminar
primero al disminuir el tamaño del grupo Auto Scaling (denominadoescalado en). Si desea, el grupo de
Auto Scaling utiliza una política de terminación predeterminada, pero opcionalmente puede elegir o crear
sus propias políticas de terminación. Para obtener más información sobre la elección de una política de
terminación predefinida, consulteUso de políticas de terminación de Amazon EC2 Auto Scaling (p. 217).

En este tema, aprenderá a crear una política de terminación personalizada con unaAWS Lambdaque
Amazon EC2 Auto Scaling invoca en respuesta a determinados eventos. La función Lambda que crea
procesa la información de los datos de entrada enviados por Amazon EC2 Auto Scaling y devuelve una
lista de instancias listas para finalizar.

Una política de terminación personalizada proporciona un mejor control sobre qué instancias se terminan
y cuándo. Por ejemplo, cuando su grupo de Auto Scaling escala, Amazon EC2 Auto Scaling no puede
determinar si hay cargas de trabajo en ejecución que no deban interrumpirse. Con una función Lambda,
puede validar la solicitud de terminación y esperar hasta que finalice la carga de trabajo antes de devolver
el ID de instancia a Amazon EC2 Auto Scaling para su terminación.

Contenido
• Datos de entrada (p. 221)
• Datos de respuesta (p. 223)
• Consideraciones al utilizar una directiva de terminación personalizada (p. 223)
• Creación de la función de Lambda (p. 224)
• Limitations (p. 225)

Datos de entrada
Amazon EC2 Auto Scaling genera una carga útil JSON para eventos de escalado, y también lo hace
cuando las instancias están a punto de terminar como resultado de la duración máxima de la instancia o

221
Auto Scaling de Amazon EC2 Guía del usuario
Creación de una política de
terminación personalizada con Lambda

de las funciones de actualización de instancia. También genera una carga útil JSON para los eventos de
escalado que puede iniciar al reequilibrar el grupo entre las zonas de disponibilidad.

Esta carga contiene información sobre la capacidad que Amazon EC2 Auto Scaling necesita para terminar,
una lista de instancias que sugiere para la terminación y el evento que inició la terminación.

A continuación, se muestra un ejemplo de carga:

{
"AutoScalingGroupARN": "arn:aws:autoscaling:us-east-1:<account-
id>:autoScalingGroup:d4738357-2d40-4038-ae7e-b00ae0227003:autoScalingGroupName/my-asg",
"AutoScalingGroupName": "my-asg",
"CapacityToTerminate": [
{
"AvailabilityZone": "us-east-1b",
"Capacity": 2,
"InstanceMarketOption": "OnDemand"
},
{
"AvailabilityZone": "us-east-1b",
"Capacity": 1,
"InstanceMarketOption": "Spot"
},
{
"AvailabilityZone": "us-east-1c",
"Capacity": 3,
"InstanceMarketOption": "OnDemand"
}
],
"Instances": [
{
"AvailabilityZone": "us-east-1b",
"InstanceId": "i-0056faf8da3e1f75d",
"InstanceType": "t2.nano",
"InstanceMarketOption": "OnDemand"
},
{
"AvailabilityZone": "us-east-1c",
"InstanceId": "i-02e1c69383a3ed501",
"InstanceType": "t2.nano",
"InstanceMarketOption": "OnDemand"
},
{
"AvailabilityZone": "us-east-1c",
"InstanceId": "i-036bc44b6092c01c7",
"InstanceType": "t2.nano",
"InstanceMarketOption": "OnDemand"
},
...
],
"Cause": "SCALE_IN"
}

La carga incluye el nombre del grupo de Auto Scaling, su nombre de recurso de Amazon (ARN) y los
siguientes elementos:

• CapacityToTerminatedescribe cuánto de su capacidad puntual o bajo demanda está configurada


para terminar en una zona de disponibilidad determinada.
• Instancesrepresenta las instancias que Amazon EC2 Auto Scaling sugiere para la terminación en
función de la información deCapacityToTerminate.
• Causedescribe el evento que desencadenó la
terminación:SCALE_IN,INSTANCE_REFRESH,MAX_INSTANCE_LIFETIME, o bienREBALANCE.

222
Auto Scaling de Amazon EC2 Guía del usuario
Creación de una política de
terminación personalizada con Lambda

La siguiente información describe los factores más significativos de cómo Amazon EC2 Auto Scaling
genera elInstancesEn los datos de entrada:

• El mantenimiento del equilibrio entre las zonas de disponibilidad tiene prioridad cuando una instancia
finaliza debido a eventos de escalado y terminaciones basadas en actualización de instancias. Por lo
tanto, si una zona de disponibilidad tiene más instancias que las otras zonas de disponibilidad usadas
por el grupo, los datos de entrada contienen instancias que solo pueden terminarse desde la zona de
disponibilidad desequilibrada. Si las zonas de disponibilidad utilizadas por el grupo están equilibradas,
los datos de entrada contienen instancias de todas las zonas de disponibilidad del grupo.
• Cuando se utiliza unadirectiva de instancias mixtas (p. 56), mantener sus capacidades puntuales y bajo
demanda en equilibrio en función de los porcentajes deseados para cada opción de compra también
tiene prioridad. Primero identificaremos cuál de los dos tipos (spot o bajo demanda) debe terminarse.
A continuación, identificamos qué instancias (dentro de la opción de compra identificada) en las que
las zonas de disponibilidad podemos terminar, lo que hará que las zonas de disponibilidad estén más
equilibradas.

Datos de respuesta
Los datos de entrada y los datos de respuesta funcionan juntos para reducir la lista de instancias que se
van a terminar.

Con la entrada dada, la respuesta de su función Lambda debería ser similar al del siguiente ejemplo:

{
"InstanceIDs": [
"i-02e1c69383a3ed501",
"i-036bc44b6092c01c7",
...
]
}

LaInstanceIDsen la respuesta representan las instancias que están listas para terminar.

Como alternativa, puede devolver un conjunto diferente de instancias que están listas para ser terminadas,
lo que reemplaza las instancias en los datos de entrada. Si no hay instancias listas para terminar cuando
se invoca su función Lambda, también puede optar por no devolver ninguna instancia.

Consideraciones al utilizar una directiva de terminación


personalizada
Tenga en cuenta las siguientes consideraciones al utilizar una política de terminación personalizada:

• Devolver una instancia primero en los datos de respuesta no garantiza su terminación. Si se devuelve
un número superior al requerido de instancias cuando se invoca la función Lambda, Amazon EC2 Auto
Scaling evalúa cada instancia con respecto a las demás políticas de terminación especificadas para el
grupo Auto Scaling. Cuando hay varias directivas de terminación, intenta aplicar la siguiente directiva
de terminación en la lista y, si hay más instancias de las necesarias para terminar, pasa a la siguiente
directiva de terminación, etc. Si no se especifica ninguna otra directiva de terminación, se utiliza la
directiva de terminación predeterminada para determinar qué instancias se van a terminar.
• Si no se devuelven instancias o se agota el tiempo de espera de la función Lambda, Amazon EC2 Auto
Scaling espera un breve tiempo antes de volver a invocar la función. Para cualquier evento de escalado,
sigue intentándolo siempre y cuando la capacidad deseada del grupo sea menor que su capacidad
actual. Por ejemplo, terminaciones basadas en refrescos, sigue intentándolo durante una hora. Después
de eso, si continúa fallando al finalizar cualquier instancia, se produce un error en la operación de
actualización de instancia. Con la duración máxima de la instancia, Amazon EC2 Auto Scaling sigue
intentando terminar la instancia que se identifica que supera su duración máxima.

223
Auto Scaling de Amazon EC2 Guía del usuario
Creación de una política de
terminación personalizada con Lambda

• Debido a que su función se vuelve a intentar repetidamente, asegúrese de probar y corregir cualquier
error permanente en el código antes de usar una función Lambda como una política de terminación
personalizada.
• Si reemplaza los datos de entrada con su propia lista de instancias que desea finalizar y al finalizar
estas instancias se desbalancean las zonas de disponibilidad, Amazon EC2 Auto Scaling reequilibra
gradualmente la distribución de la capacidad entre las zonas de disponibilidad. Primero, invoca su
función Lambda para ver si hay instancias que están listas para ser terminadas para que pueda
determinar si debe comenzar a reequilibrar. Si hay instancias listas para ser terminadas, primero inicia
nuevas instancias. Cuando las instancias terminan de iniciarse, detecta que la capacidad actual del
grupo es superior a la capacidad deseada e inicia un evento de escalado.

Creación de la función de Lambda


Comience por crear la función Lambda, de modo que pueda especificar su nombre de recurso de Amazon
(ARN) en las políticas de terminación de su grupo Auto Scaling.

Para crear una función Lambda (consola)

1. Abra el iconoPágina FuncionesEn la consola de Lambda.


2. En la barra de navegación de la parte superior de la pantalla, elija la misma región que utilizó cuando
creó el grupo de Auto Scaling.
3. SeleccionarCreación de función,Author from scratch.
4. UNDERInformación básica, paraNombre de la funciónIntroduzca el nombre de su función.
5. Elija Create function (Crear función). Se devuelve al código y la configuración de la función.
6. Con la función aún abierta en la consola, enCódigo de función, pegue el código en el editor.
7. Elija Deploy (Implementar).
8. Opcionalmente, cree una versión publicada de la función Lambda seleccionando laVersiones de lay,
a continuación,Publish new version. Para obtener más información acerca del control de versiones en
Lambda, consulteVersiones de función de Lambdaen laAWS LambdaGuía para desarrolladores.
9. Si eligió publicar una versión, elija la opciónAlias deSi desea asociar un alias a esta versión de la
función Lambda. Para obtener más información acerca de los alias en Lambda, consulte.Alias de
función de Lambdaen laAWS LambdaGuía para desarrolladores
10. A continuación, seleccione elConfiguracióny, a continuación,Permisos.
11. Desplácese hastaPolítica basada en recursosHaga clic en y luego enAgregar permisos. Una política
basada en recursos se utiliza para conceder permisos para invocar la función principal que se
especifica en la política. En este caso, el principal será elRol vinculado al servicio de Amazon EC2
Auto ScalingAsociado al grupo de Auto Scaling.
12. En el navegadorInstrucción de política, configure sus permisos:

a. Elija Cuenta de AWS .


b. ParaPrincipal, especifique el ARN del rol vinculado al servicio de llamada, por
ejemplo,arn:aws:iam::<aws-account-id>:role/aws-service-role/
autoscaling.amazonaws.com/AWSServiceRoleForAutoScaling.
c. ParaAcción, elijalambda:InvokeFunction.
d. ParaId. de declaraciónIntroduzca un ID de instrucción único,
comoAllowInvokeByAutoScaling.
e. Seleccione Save.
13. Después de haber seguido estas instrucciones, continúe en para especificar el ARN de su función en
las políticas de terminación del grupo de Auto Scaling. Para obtener más información, consulte El uso
de diferentes políticas de terminación (AWS CLI) (p. 220).

224
Auto Scaling de Amazon EC2 Guía del usuario
Usar la protección de escalado ascendente de instancias

Limitations
• Solo puede especificar una función Lambda en las políticas de terminación para un grupo de Auto
Scaling. Si se especifican varias políticas de terminación, primero se debe especificar la función Lambda.
• La consola Amazon EC2 Auto Scaling aún no admite la especificación de una función Lambda en las
políticas de terminación. Debe utilizar elAWS CLIO un SDK para especificar una función Lambda en las
políticas de terminación de un grupo de Auto Scaling.
• Puede hacer referencia a su función Lambda utilizando un ARN no calificado (sin sufijo) o un
ARN calificado que tenga una versión o un alias como sufijo. Si se utiliza un ARN no calificado
(por ejemplo,function:my-functionLa política basada en recursos debe crearse en la
versión no publicada de la función. Si se utiliza un ARN calificado (por ejemplo,function:my-
function:1orfunction:my-function:prod), su política basada en recursos debe crearse en esa
versión publicada específica de su función.
• No puede utilizar un ARN calificado con el$LATESTsufijo. Si intenta agregar una política de terminación
personalizada que haga referencia a un ARN calificado con el$LATESTSufijo, producirá un error.
• El número de instancias proporcionadas en los datos de entrada está limitado a 30.000
instancias. Si hay más de 30.000 instancias que podrían terminarse, los datos de entrada
incluyen"HasMoreInstances": truePara indicar que se devuelven el número máximo de instancias.
• El tiempo máximo de ejecución de la función Lambda es de dos segundos (2000 milisegundos). Como
práctica recomendada, debe establecer el valor de tiempo de espera de su función Lambda en función
del tiempo de ejecución previsto. Las funciones de Lambda tienen un tiempo de espera predeterminado
de tres segundos, pero esto puede reducirse.
• Amazon EC2 Auto Scaling no finalizará las instancias que tengan habilitada la protección de escalado de
instancias.

Usar la protección de escalado ascendente de


instancias
Para controlar si un grupo de Auto Scaling puede terminar una instancia concreta durante el escalado
descendente, utilice la protección de escalado descendente de instancias. Puede habilitar la configuración
de protección de escalado descendente de instancias en un grupo de Auto Scaling o en una instancia de
Auto Scaling individual. Cuando el grupo de Auto Scaling lanza una instancia, esta hereda la configuración
de protección de escalado descendente de instancias del grupo de Auto Scaling. Puede cambiar la
configuración de protección de escalado descendente de instancias para un grupo de Auto Scaling o para
una instancia de Auto Scaling en cualquier momento.

La protección de escalado descendente de instancias comienza cuando la instancia tiene el estado


InService. Si disocia una instancia que está protegida contra terminación, se pierde la configuración de
protección de escalado descendente de instancias. Cuando vuelve a asociar la instancia al grupo, esta
hereda la configuración de protección de escalado descendente de instancias actual del grupo.

Si todas las instancias de un grupo de Auto Scaling están protegidas contra terminación durante el
escalado descendente y se produce un evento de escalado descendente, se reduce la capacidad deseada.
Sin embargo, el grupo de Auto Scaling no puede terminar el número necesario de instancias hasta que se
deshabilita la configuración de protección de escalado descendente de instancias.

La protección de escalado descendente de instancias no protege las instancias de Auto Scaling de lo


siguiente:

• La terminación manual a través de la consola de Amazon EC2, laterminate-instanceso


elTerminateInstancesaction. Para proteger las instancias de Auto Scaling de contra la terminación
manual, active la protección contra terminación de Amazon EC2. Para obtener más información,
consulteHabilitar la protección contra terminaciónen laGuía del usuario de Amazon EC2 para instancias
de Linux.

225
Auto Scaling de Amazon EC2 Guía del usuario
Usar la protección de escalado ascendente de instancias

• La sustitución de comprobaciones de estado si la instancia no supera las comprobaciones de


estado. Para obtener más información, consulte Comprobaciones de Health para instancias de Auto
Scaling (p. 239). Para impedir que Amazon EC2 Auto Scaling termine las instancias deterioradas,
suspenda el proceso ReplaceUnhealthy. Para obtener más información, consulte Suspensión y
reanudación de un proceso para un grupo de Auto Scaling (p. 232).
• Interrupciones de instancias de spot Las instancias de spot se terminan cuando la capacidad ya no está
disponible o cuando el precio de spot supera el precio máximo.

Tareas
• Habilitar la protección de escalado vertical de instancias para un grupo de (p. 226)
• Modifique la configuración de protección de escalado continuada de instancias para un grupo
de (p. 226)
• Modifique la configuración de protección de escalado continuada de instancias para una
instancia (p. 227)

Habilitar la protección de escalado vertical de instancias para un


grupo de
Puede habilitar la protección de escalado descendente de instancias cuando cree un grupo de
Auto Scaling. De forma predeterminada, la protección de escalado descendente de instancias está
deshabilitada.

Para habilitar la protección de escalado ascendente de instancias(consola)

Al crear el grupo Auto Scaling, en la pestañaConfigure el tamaño del grupo y las políticas de
escaladopágina, enProtección escalable de instancia, seleccione laActive la protección de escalado
ascendente de instanciasopción.

Para habilitar la protección de escalado descendente de instancias (AWS CLI)

Utilice el siguientecreate-auto-scaling-groupPara habilitar la protección de escalado descendente de


instancias.

aws autoscaling create-auto-scaling-group --auto-scaling-group-name my-asg --new-instances-


protected-from-scale-in ...

Modifique la configuración de protección de escalado continuada


de instancias para un grupo de
Puede habilitar o deshabilitar la configuración de protección de escalado descendente de instancias para
un grupo de Auto Scaling. Cuando se habilita la configuración de protección de escalado descendente
de instancias, todas las instancias nuevas que se lancen después de habilitarla tendrán habilitada la
protección de escalado descendente. Las instancias lanzadas anteriormente solo están protegidas de
escalado descendente si habilita la configuración de protección de escalado descendente de instancias
para cada instancia individualmente.

Para cambiar la configuración de protección de escalado continuada de instancias para un grupo


de(consola)

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto al grupo de Auto Scaling.

Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto
Scaling) que muestra información sobre el grupo seleccionado.

226
Auto Scaling de Amazon EC2 Guía del usuario
Usar la protección de escalado ascendente de instancias

3. En la pestaña Details (Detalles) elija (Advanced configurations) Configuraciones avanzadas, Edit


(Editar).
4. En Instance scale-in protection (Protección de escalado descendente de instancias), elija Enable
instance scale-in protection (Habilitar la protección de escalado descendente de instancias).
5. Elija Update (Actualizar).

Para cambiar la configuración de protección de escalado descendente de instancias para un grupo (AWS
CLI)

Utilice el siguienteupdate-auto-scaling-groupPara habilitar la protección de escalado descendente de


instancias para el grupo de Auto Scaling especificado.

aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-asg --new-instances-


protected-from-scale-in

Utilice el siguiente comando para desactivar la protección de escalado descendente de instancias para el
grupo especificado.

aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-asg --no-new-


instances-protected-from-scale-in

Modifique la configuración de protección de escalado continuada


de instancias para una instancia
De forma predeterminada, una instancia obtiene su configuración de protección de escalado descendente
de instancias de su grupo de Auto Scaling. Sin embargo, puede habilitar o deshabilitar la protección de
escalado descendente de instancias para una instancia en cualquier momento.

Para cambiar la configuración de protección de escalado continuada de instancias para una


instancia(consola)

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto a su grupo de Auto Scaling.

Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto
Scaling) que muestra información sobre el grupo seleccionado.
3. En la pestaña Instance management (Administración de instancias), en Instances (Instancias),
seleccione una instancia.
4. Para habilitar la protección de escalado descendente de instancias, elija Actions (Acciones), Set scale
in protection (Establecer protección de escalado descendente). Cuando se lo pidan, seleccione Set
scale-in protection (Establecer protección de escalado descendente).
5. Para deshabilitar la protección de escalado descendente de instancias, seleccione Actions (Acciones),
Remove scale in protection (Eliminar protección de escalado descendente). Cuando se lo pidan,
seleccione Remove scale-in protection (Eliminar protección de escalado descendente).

Para cambiar la configuración de protección de escalado descendente de instancias para una instancia
(AWS CLI)

Utilice el siguienteestablecer la protección de instanciasPara habilitar la protección de escalado


descendente de instancias para la instancia especificada.

aws autoscaling set-instance-protection --instance-ids i-5f2e8a0d --auto-scaling-group-


name my-asg --protected-from-scale-in

227
Auto Scaling de Amazon EC2 Guía del usuario
Eliminación temporal de instancias

Utilice el siguiente comando para desactivar la protección de escalado descendente de instancias para la
instancia especificada.

aws autoscaling set-instance-protection --instance-ids i-5f2e8a0d --auto-scaling-group-


name my-asg --no-protected-from-scale-in

Eliminación temporal de instancias del grupo de


Auto Scaling
Puede poner una instancia que tiene el estado InService en el estado Standby, actualizar o resolver
los problemas de la instancia y, a continuación, poner de nuevo la instancia en servicio. Las instancias
que están a la espera siguen formando parte del grupo de Auto Scaling, pero no controlan activamente el
tráfico del balanceador de carga.

Esta función le ayuda a detener e iniciar las instancias o a reiniciarlas sin preocuparse de que Amazon
EC2 Auto Scaling termine las instancias como parte de sus comprobaciones de estado o durante eventos
de escalado.

Por ejemplo, puede cambiar la imagen de máquina de Amazon (AMI) de un grupo de Auto Scaling en
cualquier momento cambiando la plantilla de lanzamiento o la configuración de lanzamiento. Cualquier
instancia posterior que inicie el grupo Auto Scaling utiliza esta AMI. Sin embargo, el grupo de Auto Scaling
no actualiza las instancias que están actualmente en servicio. Puede finalizar estas instancias y permitir
que Amazon EC2 Auto Scaling las reemplace, o bien utilizar la función de actualización de instancias para
finalizar y reemplazar las instancias. O bien, puede poner las instancias en espera, actualizar el software y,
a continuación, volver a poner las instancias en servicio.

La separación de instancias de un grupo de Auto Scaling es similar a la puesta en espera de las


instancias. Desasociar instancias puede ser útil si desea administrar las instancias como instancias de
EC2 independientes y, posiblemente, terminarlas. Para obtener más información, consulte Para desasociar
instancias EC2 del grupo de Auto Scaling (p. 132).

Contenido
• Cómo funciona el estado de espera (p. 228)
• Estado de una instancia en estado de espera (p. 229)
• Quitar temporalmente una instancia (consola) (p. 229)
• Elimine temporalmente una instancia (AWS CLI) (p. 230)

Important
Se le cobrarán las instancias que se encuentran en estado de espera.

Cómo funciona el estado de espera


El estado de espera funciona como se indica a continuación para ayudarle a eliminar temporalmente una
instancia de su grupo de Auto Scaling:

1. Coloca la instancia en estado de espera. La instancia permanece en este estado hasta que suspenda el
estado de espera.
2. Si hay un grupo de destino del balanceador de carga o un Classic Load Balancer asociados a su
grupo de Auto Scaling, se cancela el registro de la instancia del balanceador de carga. Si se habilita el
vaciado de conexiones para el balanceador de carga, Elastic Load Balancing espera 300 segundos de
forma predeterminada antes de completar el proceso de anulación del registro, para ayudar a que se
completen las solicitudes en tránsito.

228
Auto Scaling de Amazon EC2 Guía del usuario
Estado de una instancia en estado de espera

3. De forma predeterminada, el valor especificado como la capacidad deseada disminuye cuando el


usuario pone una instancia en espera. Esto impide que se lancen instancias adicionales mientras tiene
esta instancia en espera. También puede especificar que la capacidad deseada no se reduzca. Si
especifica esta opción, el grupo Auto Scaling lanza una instancia para reemplazar la instancia que está
en espera. La intención es ayudarlo a mantener la capacidad de su aplicación mientras una o más
instancias están en espera.
4. Puede actualizar la instancia o solucionar el problema.
5. Al salir del estado en espera, la instancia vuelve a estar en servicio.
6. La capacidad deseada aumenta cuando vuelve a poner en servicio una instancia que estaba en espera.
Si no redujo la capacidad cuando puso la instancia en espera, el grupo de Auto Scaling detecta que
hay más instancias de las necesarias. y aplica la política de terminación en vigor para reducir el tamaño
del grupo. Para obtener más información, consulte Controlar qué instancias de Auto Scaling terminan
durante la escala en (p. 215).
7. Si hay un grupo de destino del balanceador de carga o un Classic Load Balancer asociados a su grupo
de Auto Scaling, la instancia se registra con el balanceador de carga.

La siguiente ilustración muestra las transiciones entre los estados de la instancia en este proceso:

Para obtener más información acerca del ciclo de vida completo de las instancias de un grupo de Auto
Scaling, consulteCiclo de vida de instancias de Amazon EC2 Auto Scaling (p. 8).

Estado de una instancia en estado de espera


Amazon EC2 Auto Scaling no realiza comprobaciones de estado en las instancias que se encuentran en
estado de espera. Mientras la instancia se encuentra en un estado de espera, su estado de mantenimiento
refleja el estado que tenía antes de que se pusiera en modo de espera. Auto Scaling de Amazon EC2 no
realiza una comprobación de estado en la instancia hasta que se vuelve a poner en servicio.

Por ejemplo, si pone una instancia que está en buen estado en modo de espera y después termina la
instancia, Amazon EC2 Auto Scaling sigue registrando la instancia como en buen estado. Si intenta volver
a poner en servicio una instancia terminada que estaba en espera, Amazon EC2 Auto Scaling realiza una
comprobación de estado de la instancia, determina que se va a terminar y que el estado es incorrecto
y lanza una instancia de reemplazo. Para obtener una introducción a las comprobaciones de estado,
consulte.Comprobaciones de Health para instancias de Auto Scaling (p. 239).

Quitar temporalmente una instancia (consola)


El siguiente procedimiento muestra el proceso general para actualizar una instancia que se encuentra
actualmente en servicio.

Para eliminar temporalmente una instancia

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto al grupo de Auto Scaling.

229
Auto Scaling de Amazon EC2 Guía del usuario
Elimine temporalmente una instancia (AWS CLI)

Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto
Scaling) que muestra información sobre el grupo seleccionado.
3. En la pestaña Instance management (Administración de instancias), en Instances (Instancias),
seleccione una instancia.
4. Seleccione Actions, Set to Standby.
5. En el cuadro de diálogo Set to Standby (Establecer en espera), seleccione la casilla de verificación
para lanzar una instancia de sustitución. Déjela desactivada para reducir la capacidad deseada.
Seleccione Set to Standby.
6. Puede actualizar la instancia o solucionar su problema según sea necesario. Cuando haya terminado,
continúe con el siguiente paso para poner de nuevo la instancia en servicio.
7. Seleccione la instancia y haga clic en Actions, Set to InService. En el cuadro de diálogo Set to
InService (Establecer en servicio), elija Set to InService (Establecer en servicio).

Elimine temporalmente una instancia (AWS CLI)


El siguiente procedimiento muestra el proceso general para actualizar una instancia que se encuentra
actualmente en servicio.

Para eliminar temporalmente una instancia

1. Utilice el siguientedescribe-auto-scaling-instancesPara identificar la instancia que se debe actualizar.

aws autoscaling describe-auto-scaling-instances

A continuación se muestra un ejemplo de respuesta.

{
"AutoScalingInstances": [
{
"ProtectedFromScaleIn": false,
"AvailabilityZone": "us-west-2a",
"LaunchTemplate": {
"LaunchTemplateName": "my-launch-template",
"Version": "1",
"LaunchTemplateId": "lt-050555ad16a3f9c7f"
},
"InstanceId": "i-05b4f7d5be44822a6",
"AutoScalingGroupName": "my-asg",
"HealthStatus": "HEALTHY",
"LifecycleState": "InService"
},
...
]
}

2. Mueva la instancia a un estado Standby mediante el siguiente comando enter-standby. La--


should-decrement-desired-capacityLa opción Auto Scaling reduce la capacidad deseada para
que el grupo Auto Scaling no lance una instancia de sustitución.

aws autoscaling enter-standby --instance-ids i-05b4f7d5be44822a6 \


--auto-scaling-group-name my-asg --should-decrement-desired-capacity

A continuación se muestra un ejemplo de respuesta.

230
Auto Scaling de Amazon EC2 Guía del usuario
Elimine temporalmente una instancia (AWS CLI)

"Activities": [
{
"Description": "Moving EC2 instance to Standby: i-05b4f7d5be44822a6",
"AutoScalingGroupName": "my-asg",
"ActivityId": "3b1839fe-24b0-40d9-80ae-bcd883c2be32",
"Details": "{\"Availability Zone\":\"us-west-2a\"}",
"StartTime": "2014-12-15T21:31:26.150Z",
"Progress": 50,
"Cause": "At 2014-12-15T21:31:26Z instance i-05b4f7d5be44822a6 was moved to
standby
in response to a user request, shrinking the capacity from 4 to 3.",
"StatusCode": "InProgress"
}
]
}

3. (Opcional) Compruebe que la instancia está enStandbyutilizando el siguientedescribe-auto-scaling-


instancescomando.

aws autoscaling describe-auto-scaling-instances --instance-ids i-05b4f7d5be44822a6

A continuación se muestra un ejemplo de respuesta. Observe que el estado de la instancia ahora es


Standby.

{
"AutoScalingInstances": [
{
"ProtectedFromScaleIn": false,
"AvailabilityZone": "us-west-2a",
"LaunchTemplate": {
"LaunchTemplateName": "my-launch-template",
"Version": "1",
"LaunchTemplateId": "lt-050555ad16a3f9c7f"
},
"InstanceId": "i-05b4f7d5be44822a6",
"AutoScalingGroupName": "my-asg",
"HealthStatus": "HEALTHY",
"LifecycleState": "Standby"
},
...
]
}

4. Puede actualizar la instancia o solucionar su problema según sea necesario. Cuando haya terminado,
continúe con el siguiente paso para poner de nuevo la instancia en servicio.
5. Vuelva a poner la instancia en servicio usando la siguienteExit-standbycomando.

aws autoscaling exit-standby --instance-ids i-05b4f7d5be44822a6 --auto-scaling-group-


name my-asg

A continuación se muestra un ejemplo de respuesta.

{
"Activities": [
{
"Description": "Moving EC2 instance out of Standby: i-05b4f7d5be44822a6",
"AutoScalingGroupName": "my-asg",
"ActivityId": "db12b166-cdcc-4c54-8aac-08c5935f8389",
"Details": "{\"Availability Zone\":\"us-west-2a\"}",
"StartTime": "2014-12-15T21:46:14.678Z",
"Progress": 30,

231
Auto Scaling de Amazon EC2 Guía del usuario
Procesos de suspensión

"Cause": "At 2014-12-15T21:46:14Z instance i-05b4f7d5be44822a6 was moved


out of standby in
response to a user request, increasing the capacity from 3 to 4.",
"StatusCode": "PreInService"
}
]
}

6. (Opcional) Compruebe que la instancia vuelve a estar en servicio utilizando el siguiente comando
describe-auto-scaling-instances.

aws autoscaling describe-auto-scaling-instances --instance-ids i-05b4f7d5be44822a6

A continuación se muestra un ejemplo de respuesta. Observe que el estado de la instancia es


InService.

{
"AutoScalingInstances": [
{
"ProtectedFromScaleIn": false,
"AvailabilityZone": "us-west-2a",
"LaunchTemplate": {
"LaunchTemplateName": "my-launch-template",
"Version": "1",
"LaunchTemplateId": "lt-050555ad16a3f9c7f"
},
"InstanceId": "i-05b4f7d5be44822a6",
"AutoScalingGroupName": "my-asg",
"HealthStatus": "HEALTHY",
"LifecycleState": "InService"
},
...
]
}

Suspensión y reanudación de un proceso para un


grupo de Auto Scaling
En este tema, se explica cómo suspender y, a continuación, reanudar uno o varios de los procesos de su
grupo de Auto Scaling. También se describen los problemas que se han de tener en cuenta a la hora de
optar por utilizar la característica de suspensión de reanudar de Amazon EC2 Auto Scaling.
Important

Utilice la característica de espera en lugar de la característica de suspender-reanudar si tiene


que solucionar problemas o reiniciar una instancia. Para obtener más información, consulte
Eliminación temporal de instancias del grupo de Auto Scaling (p. 228). Utilice la característica
de protección de escalado descendente de instancias para impedir que instancias específicas se
terminen durante el escalado descendente automático. Para obtener más información, consulte
Usar la protección de escalado ascendente de instancias (p. 225).

Además de las suspensiones que inicie, Amazon EC2 Auto Scaling también puede suspender los procesos
para los grupos de Auto Scaling que repetidamente no consigan lanzar instancias. Esto es lo que se
conoce como una suspensión administrativa. Una suspensión administrativa, en la mayoría de los casos,
se aplica a los grupos de Auto Scaling que intentan lanzar instancias durante más de 24 horas, pero no
logran lanzarlas. Puede reanudar los procesos suspendidos por Amazon EC2 Auto Scaling por razones
administrativas.

232
Auto Scaling de Amazon EC2 Guía del usuario
Procesos de Auto Scaling de Amazon EC2

Contenido
• Procesos de Auto Scaling de Amazon EC2 (p. 233)
• Elegir la suspensión (p. 233)
• Suspender y reanudar procesos (consola) (p. 236)
• Suspender y reanudar procesos (AWS CLI) (p. 236)

Procesos de Auto Scaling de Amazon EC2


En Amazon EC2 Auto Scaling, existen dos tipos de procesos principales:LaunchyTerminate.
LaLaunchEl proceso agrega una nueva instancia de Amazon EC2 a un grupo de Auto Scaling, lo que
aumenta su capacidad. El proceso Terminate elimina una instancia de Amazon EC2 del grupo, lo que
reduce su capacidad.

Los otros tipos de procesos de Auto Scaling de Amazon EC2 se relacionan con determinadas
características de escalado:

• AddToLoadBalancer: añade instancias al grupo de destino del balanceador de carga o Classic Load
Balancer asociados cuando se lanzan. Para obtener más información, consulte Elastic Load Balancing y
Amazon EC2 Auto Scaling (p. 90).
• AlarmNotification: acepta notificaciones de alarmas de CloudWatch que están asociadas a las
políticas de escalado del grupo. Para obtener más información, consulte Escale dinámico para Amazon
EC2 Auto Scaling (p. 135).
• AZRebalance: equilibra el número de instancias EC2 del grupo de manera uniforme en todas las zonas
de disponibilidad especificadas cuando el grupo se desequilibra; por ejemplo, una zona de disponibilidad
que anteriormente no estaba disponible vuelve a un estado correcto. Para obtener más información,
consulte Actividades de reequilibrio (p. 7).
• HealthCheck: comprueba el estado de las instancias y marca una instancia como en mal estado si
Amazon EC2 o Elastic Load Balancing indica a Amazon EC2 Auto Scaling que la instancia está en
mal estado. Este proceso puede invalidar el estado de una instancia que configura manualmente.
Para obtener más información, consulte Comprobaciones de Health para instancias de Auto
Scaling (p. 239).
• InstanceRefresh: finaliza y reemplaza instancias mediante la función de actualización de instancias.
Para obtener más información, consulte Reemplazo de instancias de Auto Scaling basadas en una
actualización de instancia (p. 110).
• ReplaceUnhealthy: termina las instancias que están marcadas como en mal estado y, a continuación,
crea nuevas instancias para sustituirlas. Para obtener más información, consulte Comprobaciones de
Health para instancias de Auto Scaling (p. 239).
• ScheduledActions: realiza las acciones de escalado programadas que crea o que se crean para
usted cuando crea unaAWS Auto Scalingy activar el escalado predictivo. Para obtener más información,
consulte Escale programado para Amazon EC2 Auto Scaling (p. 178).

Elegir la suspensión
Todos los tipos de procesos pueden suspenderse y reanudarse por separado. En esta sección, se ofrece
orientación y pasos que tener en cuenta antes de decidir suspender uno de los procesos integrados en
Amazon EC2 Auto Scaling. Tenga en cuenta que la suspensión de los distintos procesos podría interferir
con otros procesos. En función del motivo de la suspensión de un proceso, es posible que tenga que
suspender varios procesos a la vez.

Las siguientes descripciones explican lo que ocurre cuando se suspenden los distintos tipos de procesos.

233
Auto Scaling de Amazon EC2 Guía del usuario
Elegir la suspensión

Warning

Si se suspenden los tipos de procesos Launch o Terminate, se puede impedir que otros tipos
de procesos funcionen correctamente.

Terminate

• El grupo de Auto Scaling no se escala de manera descendente con las alarmas o las acciones
programadas que tienen lugar durante la suspensión del proceso. Además, se interrumpen los
siguientes procesos:
• AZRebalance sigue activo, pero no funciona correctamente. Puede lanzar nuevas instancias sin
terminar las antiguas. Esto podría provocar que su grupo de Auto Scaling aumente hasta un 10% más
que su tamaño máximo, porque se permite que esto ocurra durante las actividades de reequilibrado.
Su grupo de Auto Scaling podría permanecer por encima de su tamaño máximo hasta que se reanude
laTerminateProceso de. CuandoTerminateReanudar,AZRebalancereequilibra gradualmente
el grupo de Auto Scaling si el grupo ya no está equilibrado entre las zonas de disponibilidad o si se
especifican zonas de disponibilidad diferentes.
• ReplaceUnhealthy está inactivo, pero no HealthCheck. Cuando se reanuda Terminate, el
proceso ReplaceUnhealthy empieza a ejecutarse inmediatamente. Si las instancias se marcaron
como en mal estado mientras Terminate se encuentra suspendido, se reemplazarán de inmediato.
• InstanceRefreshestá en pausa hasta que reanudeTerminate.

Launch

• El grupo de Auto Scaling no se escala de manera ascendente con las alarmas o las acciones
programadas que tienen lugar durante la suspensión del proceso.AZRebalancedeja de reequilibrar
el grupo.ReplaceUnhealthycontinúa terminando las instancias que no son en buen estado, pero no
inicia reemplazos. Cuando se reanuda Launch, las actividades de reequilibrio y las sustituciones de la
comprobación de estado se gestionan de la siguiente manera:
• AZRebalancereequilibra gradualmente el grupo de Auto Scaling si el grupo ya no está equilibrado
entre las zonas de disponibilidad o si se especifican zonas de disponibilidad diferentes.
• ReplaceUnhealthy sustituye inmediatamente las instancias que termina durante el tiempo en que
Launch se suspende.
• InstanceRefreshestá en pausa hasta que reanudeLaunch.

AddToLoadBalancer

• Amazon EC2 Auto Scaling lanza las instancias, pero no las añade al grupo de destino del balanceador
de carga o al Classic Load Balancer. Cuando reanude laAddToLoadBalancerSe reanuda la adición de
instancias al balanceador de carga cuando se lanzan. Sin embargo, no se añaden las instancias que se
lanzaron mientras este proceso estaba suspendido. Debe registrar dichas instancias manualmente.

AlarmNotification

• Auto Scaling de Amazon EC2 no ejecuta políticas de escalado cuando se infringe un umbral de alarma
de CloudWatch. SuspenderAlarmNotificationle permite detener temporalmente los eventos de
escalado activados por las políticas de escalado del grupo sin eliminar las políticas de escalado o sus
alarmas de CloudWatch asociadas. Cuando reanudaAlarmNotification, Amazon EC2 Auto Scaling
tiene en cuenta las políticas con umbrales de alarma que se han infringido.

AZRebalance

• El grupo de Auto Scaling no intenta redistribuir instancias tras determinados eventos. Sin embargo, si
se produce un evento de escalado ascendente o descendente, el proceso de escalado intenta equilibrar

234
Auto Scaling de Amazon EC2 Guía del usuario
Elegir la suspensión

igualmente las zonas de disponibilidad. Por ejemplo, durante el escalado ascendente, se lanza la
instancia en la zona de disponibilidad con el menor número de instancias. Si el grupo se desbalancea
mientrasAZRebalanceAuto Scaling de Amazon EC2 está suspendido y se reanuda, Auto Scaling
de Amazon EC2 intenta reequilibrar el grupo. En primer lugar, llama a Launch y, a continuación, a
Terminate.

HealthCheck

• El Auto Scaling de Amazon EC2 deja de marcar instancias en mal estado como resultado de las
comprobaciones de estado de EC2 y Elastic Load Balancing. No obstante, las comprobaciones
de estado personalizadas siguen funcionando correctamente. Tras suspender HealthCheck,
si es necesario, puede configurar manualmente el estado de las instancias del grupo y que
ReplaceUnhealthy las sustituya.

ReplaceUnhealthy

• Auto Scaling de Amazon EC2 deja de sustituir las instancias marcadas con un estado incorrecto. Las
instancias que no superan las comprobaciones de estado de EC2 o Elastic Load Balancing siguen
estando marcadas con un estado incorrecto. Tan pronto como reanude laReplaceUnhealthlyAuto
Scaling de Amazon EC2 sustituye las instancias marcadas con un estado incorrecto durante la
suspensión de este proceso. El proceso ReplaceUnhealthy llama a los dos tipos de procesos
principales: en primer lugar, a Terminate y, a continuación, a Launch.

ScheduledActions

• Auto Scaling de Amazon EC2 no ejecuta las acciones de escalado que están programadas para
ejecutarse durante el periodo de suspensión. Cuando reanudaScheduledActions, Amazon EC2 Auto
Scaling solo tiene en cuenta las acciones programadas cuyo tiempo de ejecución aún no ha transcurrido.

Suspender tanto el lanzamiento como el final


Cuando se suspenden los tipos de procesos Launch y Terminate a la vez, sucede lo siguiente:

• El grupo de Auto Scaling no puede iniciar las actividades de escalado ni mantener la capacidad
deseada.
• Si el grupo se desequilibra entre las zonas de disponibilidad, Amazon EC2 Auto Scaling no intenta
redistribuir las instancias de manera uniforme entre las zonas de disponibilidad que se especifican para
su grupo de Auto Scaling.
• El grupo de Auto Scaling no puede sustituir las instancias marcadas con un estado incorrecto.
• La función de actualización de instancias no puede reemplazar a ninguna instancia.

Cuando reanude laLaunchyTerminateDel mismo modo, Amazon EC2 Auto Scaling sustituye las
instancias marcadas con un estado incorrecto durante la suspensión de los procesos y puede intentar
volver a equilibrar el grupo. Las actividades de escalado también se reanudan.

Consideraciones adicionales
Existen algunas operaciones externas que pueden verse afectadas durante la suspensión de Launch y
Terminate.

• Duración máxima de la instancia—CuandoLaunchorTerminate, la función de duración máxima de la


instancia no puede reemplazar a ninguna instancia.

235
Auto Scaling de Amazon EC2 Guía del usuario
Suspender y reanudar procesos (consola)

• Interrupciones de instancias de spot: siTerminateestá suspendido y su grupo de Auto Scaling tiene


instancias puntuales, todavía pueden terminar en caso de que la capacidad de subasta ya no esté
disponible. MientrasLaunchCuando se suspende, Amazon EC2 Auto Scaling no puede lanzar instancias
de sustitución desde otro grupo de instancias de spot o desde el mismo grupo de instancias de spot
cuando vuelva a estar disponible.
• Conectar y separar instancias de—CuandoLaunchyTerminate, puede separar instancias asociadas al
grupo Auto Scaling, pero no puede adjuntar nuevas instancias al grupo. Para asociar instancias, primero
debe reanudar Launch.
Note

Si la desasociación de una instancia va seguida inmediatamente por su terminación manual,


puede llamar al comando de la CLI terminate-instance-in-auto-scaling-group en su lugar.
Este comando termina la instancia especificada y, de forma opcional, ajusta la capacidad
deseada del grupo. Además, si se utiliza el grupo de Auto Scaling con enlaces del ciclo de
vida, las acciones personalizadas que haya especificado para la terminación de la instancia se
ejecutarán antes de que la instancia se termine por completo.
• Instancias en espera—MientrasLaunchestá suspendido, no puede devolver una instancia en
elStandbyestado a servicio. Para restaurar el servicio de la instancia, primero debe reanudar Launch.

Suspender y reanudar procesos (consola)


Puede suspender y reanudar procesos individuales o todos los procesos.

Para suspender y reanudar procesos

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto al grupo de Auto Scaling.

Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto
Scaling) que muestra información sobre el grupo seleccionado.
3. En la pestaña Details (Detalles) elija (Advanced configurations) Configuraciones avanzadas, Edit
(Editar).
4. En Suspended processes (Procesos suspendidos), seleccione el proceso que desea suspender.

Para reanudar un proceso suspendido, elimínelo de Suspended processes (Procesos suspendidos).


5. Elija Update (Actualizar).

Suspender y reanudar procesos (AWS CLI)


Puede suspender y reanudar procesos individuales o todos los procesos.

Para suspender un proceso

Usarsuspend-procesoscon el comando--scaling-processesde la siguiente manera.

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


processes AlarmNotification

Para suspender todos los procesos

Usarsuspend-procesosComo se indica a continuación (omitiendo el--scaling-processesopción).

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

236
Auto Scaling de Amazon EC2 Guía del usuario
Suspender y reanudar procesos (AWS CLI)

Para reanudar un proceso suspendido

Usarresume-processesDe la siguiente manera.

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


processes AlarmNotification

Para reanudar todos los procesos suspendidos

Usarresume-processesComo se indica a continuación (omitiendo el--scaling-processesopción).

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

237
Auto Scaling de Amazon EC2 Guía del usuario

Supervisión de instancias y grupos


de Auto Scaling
El monitoreo es una parte importante del mantenimiento de la fiabilidad, la disponibilidad y el rendimiento
de Amazon EC2 Auto Scaling y sus soluciones de Amazon Web Services en Cloud.AWSAmazon EC2 Auto
Scaling, informa cuando algo no funciona y realiza acciones automáticas cuando proceda:

Comprobaciones de estado

Amazon EC2 Auto Scaling realiza periódicamente comprobaciones de estado en las instancias del
grupo de Auto Scaling. Si una instancia no supera su comprobación de estado, se marca como
no saludable y se finalizará mientras Amazon EC2 Auto Scaling lanza una nueva instancia en
sustitución. Para obtener más información, consulte Comprobaciones de Health para instancias de
Auto Scaling (p. 239).
Reequilibrio de la capacidad

Puede habilitar el reequilibrio de capacidad en grupos de Auto Scaling nuevos y existentes al utilizar
instancias puntuales. Al activar el reequilibrio de capacidad, Amazon EC2 Auto Scaling intenta iniciar
una instancia puntual siempre que Amazon EC2 notifique que una instancia de subasta corre un
riesgo elevado de interrupción. Después de iniciar una nueva instancia, finaliza una instancia antigua.
Para obtener más información, consulte Reequilibrio de capacidad de Amazon EC2 Auto Scaling de
Amazon EC2 (p. 242).
AWS Personal Health Dashboard

LaAWS Personal Health Dashboard(PHD) muestra información y también proporciona notificaciones


que se desencadenan cuando se produce un cambio en el estado de los recursos de Amazon Web
Services. La información se presenta de dos formas: en un panel donde se muestran los eventos
recientes y próximos organizados por categorías, y en un registro de eventos que contiene todos
los eventos de los últimos 90 días. Para obtener más información, consulte AWS Personal Health
DashboardAuto Scaling de Amazon EC2 (p. 249).
Alarmas de CloudWatch

Para detectar el comportamiento incorrecto de las aplicaciones, CloudWatch le ayuda a monitorizar


automáticamente determinadas métricas de sus recursos de Amazon Web Services. Puede configurar
una alarma de CloudWatch y una notificación de Amazon SNS que envíe un correo electrónico cuando
el valor de una métrica no sea el esperado o cuando se detecten determinadas anomalías. Por
ejemplo, puede recibir una notificación cuando la actividad de la red de repente sea superior o inferior
al valor esperado de una métrica. Para obtener más información, consulte Supervisión de las métricas
de CloudWatch para sus grupos e instancias de Auto Scaling (p. 250).
Paneles de CloudWatch

Los paneles de CloudWatch son páginas de inicio personalizables en la consola de CloudWatch.


Puede utilizar estas páginas para monitorizar sus recursos en una sola vista, incluidos los recursos
que están distribuidos en diferentes regiones. Puede utilizar los paneles de CloudWatch para crear
vistas personalizadas de las métricas y alarmas para sus recursos de Amazon Web Services. Para
obtener más información, consulte la Guía del usuario de Amazon CloudWatch.
Logs CloudTrail

AWS CloudTrailpermite realizar un seguimiento de las llamadas a la API de Amazon EC2 Auto Scaling
realizadas desde la cuenta de Amazon Web Services o en nombre de ella. CloudTrail almacena la

238
Auto Scaling de Amazon EC2 Guía del usuario
comprobación de estado de las instancias

información en archivos log en el bucket de Amazon S3 que especifique. Puede utilizar estos archivos
de registro para monitorear la actividad de los grupos de Auto Scaling. Los registros incluyen las
solicitudes que se han realizado, las direcciones IP de origen de las que proceden las solicitudes,
quién ha efectuado la solicitud, cuándo se ha realizado, etc. Para obtener más información, consulte
Registro de llamadas a la API de Auto Scaling de Amazon EC2AWS CloudTrail (p. 257).
Registros de CloudWatch

Los registros de CloudWatch Logs le permiten monitorear, almacenar y obtener acceso a sus archivos
log desde instancias de Amazon EC2, CloudTrail y otras fuentes. CloudWatch Logs puede monitorear
información en los registros y enviarle una notificación cuando se llega a determinados umbrales.
También se pueden archivar los datos de los registros en un almacenamiento de larga duración. Para
obtener más información, consulte laAmazon CloudWatch Logs.
Notification Service

Puede configurar grupos de Auto Scaling para enviar notificaciones de Amazon SNS cuando Amazon
EC2 Auto Scaling lanza o termina instancias. Para obtener más información, consulte Obtener
notificaciones de Amazon SNS cuando su grupo de Auto Scaling se escala (p. 259).
EventBridge

Amazon EventBridge, antes llamado Eventos de CloudWatch, proporciona un flujo casi en tiempo real
de eventos del sistema que describen cambios en recursos de Amazon Web Services. EventBridge
habilita la informática basada en eventos automatizada, para que pueda escribir reglas que vigilan
determinados eventos y activan acciones automatizadas en otros Amazon Web Services cuando
estos eventos se producen. Por ejemplo, puede utilizar EventBridge para configurar un destino que
invoque una función Lambda cuando se escale su grupo de Auto Scaling o cuando se produzca una
acción del ciclo de vida. Amazon EC2 también puede recibir un aviso de dos minutos cuando esté a
punto de reclamar las instancias de spot. Para obtener información sobre cómo capturar eventos de
Amazon EC2 Auto Scaling emitidos en EventBridge, consulteUso de Amazon EC2 Auto Scaling con
EventBridge (p. 263).

Comprobaciones de Health para instancias de Auto


Scaling
Una instancia de Auto Scaling puede estar en buen o en mal estado. Todas las instancias de su grupo
de Auto Scaling se inician con un estado correcto. Se entiende que las instancias están en buen estado
a menos que Amazon EC2 Auto Scaling reciba una notificación de que están en mal estado. Esta
notificación puede provenir de una o más de las siguientes fuentes: Amazon EC2, Elastic Load Balancing
(ELB) o una comprobación de estado personalizada.

Cuando Amazon EC2 Auto Scaling marca una instancia como en mal estado, se programa su sustitución.
Si no desea que se reemplacen las instancias, puede suspender el proceso de comprobación de estado de
cualquier grupo de Auto Scaling.

Estado de las instancias


Amazon EC2 Auto Scaling puede determinar el estado de una instancia a partir de lo siguiente:

• Las comprobaciones de estado proporcionadas por Amazon EC2 para identificar problemas de hardware
y software que puedan afectar a una instancia. Las comprobaciones de estado predeterminadas de un
grupo de Auto Scaling son solo comprobaciones de estado de EC2.
• Las comprobaciones de Health proporcionadas por Elastic Load Balancing (ELB). Estas comprobaciones
de estado están deshabilitadas de forma predeterminada, pero se pueden habilitar.
• Sus comprobaciones de estado personalizadas.

239
Auto Scaling de Amazon EC2 Guía del usuario
Determinar la instancia de estado

Determinar la instancia de estado


Amazon EC2 Auto Scaling considera que una instancia está en buen estado una vez que se ha
configurado totalmente y ha superado las comprobaciones de estado iniciales. Amazon EC2 Auto Scaling
comprueba que todas las instancias del grupo de Auto Scaling se estén ejecutando y estén en buen estado
comprobando periódicamente el estado de las instancias. Cuando determina que una instancia está en mal
estado, la termina y lanza una nueva. Esto ayuda a mantener el número de instancias en ejecución en el
número mínimo (o en el número deseado, si se especifica) definido.

Comprobaciones de estado de Amazon EC2

Las comprobaciones de estado de Amazon EC2 utilizan los resultados de las comprobaciones de estado
de Amazon EC2 para determinar el estado de una instancia. Si la instancia está en cualquier estado
que no searunningo si el estado del sistema esimpairedAmazon EC2 Auto Scaling considera que la
instancia está en mal estado y lanza una instancia de sustitución. Esto ocurre cuando la instancia tiene
alguno de los estados siguientes:

• stopping
• stopped
• shutting-down
• terminated

Las comprobaciones de estado de EC2 no requieren ninguna configuración especial y siempre están
habilitadas. Entre estas se incluyen las comprobaciones de estado de las instancias y las comprobaciones
de estado del sistema. Para obtener más información, consulteTipos de comprobaciones de estadoen
laGuía del usuario de Amazon EC2 para instancias de Linux.

Elastic Load Balancing (ELB) Comprobaciones Health

Instancias para grupos que no utilizanELBLas comprobaciones de estado se consideran en buen estado
si están en larunningEstado de. Instancias para grupos que utilizanELBLas comprobaciones de estado
se consideran en buen estado si están en larunningY el balanceador de carga los registra como en buen
estado.

Si asocia un balanceador de carga o un grupo de destino a su grupo de Auto Scaling, puede configurar
el grupo para que marque una instancia como en mal estado cuando Elastic Load Balancing la registra
comounhealthy. Si el vaciado de conexiones está habilitado para el balanceador de carga, Auto Scaling
de Amazon EC2 espera a que se completen las solicitudes en curso o a que se agote el tiempo de espera
máximo, lo que ocurra primero, antes de finalizar las instancias debido a un evento de escalado o a la
sustitución de comprobación de estado. Para obtener más información, consulte Agregar comprobaciones
de estado de ELB (p. 95).

Comprobaciones de estado personalizadas

Si dispone de comprobaciones de estado personalizadas, puede enviar la información de las


comprobaciones de estado de Amazon EC2 Auto Scaling para que Amazon EC2 Auto Scaling pueda
utilizar esta información. Por ejemplo, si determina que una instancia no funciona según lo previsto,
puede establecer el estado de la instancia en Unhealthy. La próxima vez que Amazon EC2 Auto Scaling
realice una comprobación de estado en la instancia, determinará que la instancia está en mal estado
y, a continuación, lanzará una instancia de sustitución. Para obtener más información, consulte Uso de
comprobaciones de estado personalizadas (p. 241).

Período de gracia de Health


Cuando se lanza una instancia, Auto Scaling de Amazon EC2 utiliza el valor de
laHealthCheckGracePeriodPara que el grupo de Auto Scaling determine cuánto tiempo debe esperar

240
Auto Scaling de Amazon EC2 Guía del usuario
Reemplazar instancias en mal estado

antes de comprobar el estado de la instancia. Las comprobaciones de estado de Amazon EC2 y Elastic
Load Balancing se pueden completar antes de que termine el periodo de gracia de la comprobación de
estado. Sin embargo, Auto Scaling de Amazon EC2 no actúa hasta que termina el periodo de gracia de la
comprobación de estado.

De forma predeterminada, el periodo de gracia de la comprobación de estado es300segundos cuando


crea un grupo de Auto Scaling desde laAWS Management Console. Su valor predeterminado es0segundos
cuando crea un grupo de Auto Scaling con la herramientaAWS CLIo un SDK de.

Para proporcionar un tiempo de calentamiento amplio para las instancias, asegúrese de que el período de
gracia de comprobación de estado cubra el tiempo de inicio esperado de la aplicación, desde el momento
en que una instancia entra en servicio hasta el momento en que puede recibir tráfico. Si añade un enlace
de ciclo de vida, el periodo de gracia no comienza hasta que se completan las acciones del enlace de ciclo
de vida y la instancia pasa a tener el estado InService.

Reemplazar instancias en mal estado


Una vez que una instancia se ha marcado con un estado incorrecto tras una comprobación de
estado, se programa casi inmediatamente su sustitución. No recupera nunca automáticamente su
estado. Puede intervenir manualmente llamando al métodoset-instance-healtho el comando de
laSetInstanceHealthPara establecer la instancia en un estado correcto. Si la instancia ya está
terminando, aparecerá un error.
Note

Como el intervalo entre marcar una instancia como en mal estado y su terminación real es muy
pequeño, el intento de restablecer la instancia a un estado correcto con la instancia con laset-
instance-healtho el comando de laSetInstanceHealthes probablemente útil solo para un grupo
suspendido. Para obtener más información, consulte Suspensión y reanudación de un proceso
para un grupo de Auto Scaling (p. 232).

Auto Scaling de Amazon EC2 crea una nueva actividad de escalado para finalizar la instancia en mal
estado y, a continuación, la termina. Más adelante, otra actividad de escalado lanza una instancia nueva
para sustituir la instancia terminada.

Cuando se termina la instancia, todas las direcciones IP elásticas asociadas se desasocian y no se


asocian automáticamente a la nueva instancia. Debe asociar estas direcciones IP elásticas a la instancia
nueva manualmente. Del mismo modo, cuando se termina la instancia, se desasocian los volúmenes de
EBS asociados. Debe asociar estos volúmenes de EBS a la nueva instancia manualmente. Para obtener
más información, consulteAnulación de la asociación de una dirección IP elástica y la reasociación con una
instancia diferenteyAnulación de la conexión de un volumen de Amazon EBS a una instanciaen laGuía del
usuario de Amazon EC2 para instancias de Linux.

Uso de comprobaciones de estado personalizadas


Si dispone de su propio sistema de comprobación de estado, puede enviar la información de estado de la
instancia directamente desde su sistema a Amazon EC2 Auto Scaling a través de laAWS CLIo un SDK de.
En los ejemplos siguientes se muestra cómo utilizar la AWS CLI para configurar el estado de una instancia
y, a continuación, comprobar su estado.

Utilice el siguiente comando set-instance-health para establecer el estado de la instancia especificada en


Unhealthy.

aws autoscaling set-instance-health --instance-id i-123abc45d --health-status Unhealthy

Utilice el siguiente comando describe-auto-scaling-groups para verificar que el estado de la instancia es


Unhealthy.

241
Auto Scaling de Amazon EC2 Guía del usuario
Véase también

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

A continuación se incluye una respuesta de ejemplo que muestra que el estado de la instancia es
Unhealthy y que la instancia está terminando.

{
"AutoScalingGroups": [
{
....
"Instances": [
{
"ProtectedFromScaleIn": false,
"AvailabilityZone": "us-west-2a",
"LaunchTemplate": {
"LaunchTemplateName": "my-launch-template",
"Version": "1",
"LaunchTemplateId": "lt-050555ad16a3f9c7f"
},
"InstanceId": "i-123abc45d",
"HealthStatus": "Unhealthy",
"LifecycleState": "Terminating"
},
...
]
}
]
}

Véase también
Para obtener más información sobre las comprobaciones de estado, consulte Solución de problemas
de Auto Scaling de Amazon EC2 Comprobaciones de estado (p. 322). Si sus comprobaciones de
estado fallan, consulte este tema para conocer los pasos de solución de problemas. Este tema le ayudará
a averiguar qué ha fallado en su grupo de Auto Scaling y le proporcionará sugerencias sobre cómo
solucionarlo.

Reequilibrio de capacidad de Amazon EC2 Auto


Scaling de Amazon EC2
Puede configurar Amazon EC2 Auto Scaling para supervisar y responder automáticamente a los cambios
que afectan a la disponibilidad de las instancias puntuales. El reequilibrio de capacidad lo ayuda a
mantener la disponibilidad de la carga de trabajo mediante el aumento proactivo de su flota con una nueva
instancia de spot antes de que EC2 interrumpa una instancia en ejecución.

Cómo funciona
Amazon EC2 Auto Scaling conoce las notificaciones de recomendación de reequilibrio de instancias de
EC2. El servicio Spot de Amazon EC2 emite estas notificaciones cuando las instancias puntuales corren
un riesgo elevado de interrupción. Cuando se habilita el reequilibrio de capacidad en un grupo de Auto
Scaling, el Auto Scaling de Amazon EC2 intenta reemplazar de forma proactiva las instancias de spot en
el grupo que ha recibido una recomendación de reequilibrio, lo que brinda la oportunidad de reequilibrar
la carga de trabajo en nuevas instancias spot que no tienen un riesgo elevado de Interrupción de. Esto
significa que su carga de trabajo puede continuar procesando el trabajo mientras Amazon EC2 Auto

242
Auto Scaling de Amazon EC2 Guía del usuario
Cómo habilitar el reequilibrio de capacidad

Scaling lanza una nueva instancia puntual antes de que se interrumpa una instancia existente. También
puede utilizar opcionalmente un enlace del ciclo de vida para realizar una acción personalizada en las
instancias antes de la finalización.

Para obtener más información acerca de las recomendaciones de reequilibrio de instancias EC2,
consulteRecomendación de reequilibrio de instancias EC2en laGuía del usuario de Amazon EC2 para
instancias de Linux.

Para obtener más detalles y un tutorial de la función de reequilibrio de capacidad, consulte la publicación
del blogAdministre de forma proactiva el ciclo de vida de las instancias puntuales mediante la nueva
función de reequilibrio de capacidad para EC2 Auto Scalingen elAWSCompute del blog.
Note

Cuando el reequilibrio de capacidad está deshabilitado, Amazon EC2 Auto Scaling reemplaza
a las instancias puntuales después de que el servicio de subasta de Amazon EC2 interrumpa
las instancias y su comprobación de estado falla. Amazon EC2 siempre proporciona una
recomendación de reequilibrio de instancias EC2 y un aviso de interrupción de instancias
puntuales de dos minutos antes de que se interrumpa una instancia.

Contenido
• Cómo habilitar el reequilibrio de capacidad (p. 243)
• Cómo habilitar el reequilibrio de capacidad (consola) (p. 244)
• Cómo habilitar el reequilibrio de capacidad (AWS CLI) (p. 245)
• Agregar un gancho de ciclo de vida de terminación (p. 248)

Cómo habilitar el reequilibrio de capacidad


Puede habilitar o deshabilitar el reequilibrio de capacidad en cualquier momento.

Consideraciones

Las siguientes consideraciones se aplican a esta configuración:

• Se recomienda configurar el grupo Auto Scaling para que utilice varios tipos de instancias. Esto
proporciona la flexibilidad para iniciar instancias en varios grupos de instancias de spot dentro de cada
zona de disponibilidad, como se documenta enGrupos de Auto Scaling con varios tipos de instancias y
opciones de compra (p. 56).
• Le recomendamos encarecidamente que solo use la función de reequilibrio de capacidad con
elcapacity-optimizedo elcapacity-optimized-prioritizedEstrategia de asignación de. Estas
estrategias de asignación mantendrán su capacidad puntual en los grupos puntuales óptimos tanto para
eventos de escalabilidad horizontal como para lanzamientos de reequilibrio de capacidad.
• Siempre que sea posible, debe crear su grupo de Auto Scaling en todas las zonas de disponibilidad
de la región. Esto permite que Amazon EC2 Auto Scaling examine la capacidad libre de cada zona de
disponibilidad. Si se produce un error en un lanzamiento en una zona de disponibilidad, Amazon EC2
Auto Scaling sigue intentando iniciar instancias puntuales en las zonas de disponibilidad especificadas
hasta que se realice correctamente.
• Con el reequilibrio de capacidad, Amazon EC2 Auto Scaling de Amazon EC2 se comporta de la
siguiente manera:

Al iniciar una nueva instancia, Amazon EC2 Auto Scaling espera hasta que la nueva instancia pase su
comprobación de estado antes de continuar con la finalización de la instancia anterior. Al reemplazar
más de una instancia, la terminación de cada instancia anterior comienza después de que la nueva
instancia se haya iniciado y superado su comprobación de estado. Como Amazon EC2 Auto Scaling

243
Auto Scaling de Amazon EC2 Guía del usuario
Cómo habilitar el reequilibrio de capacidad

intenta lanzar nuevas instancias antes de terminar las antiguas, el hecho de satisfacer por completo
o casi la capacidad máxima especificada podría impedir o detener completamente las actividades de
reequilibrio. Para evitar este problema, el Auto Scaling de Amazon EC2 puede superar temporalmente la
capacidad máxima especificada de un grupo durante una actividad de reequilibrio.
• Si las nuevas instancias no se inician o se inician pero la comprobación de estado falla, Amazon EC2
Auto Scaling sigue intentando volver a iniciarlas. Mientras está tratando de lanzar nuevas instancias,
sus antiguas eventualmente serán interrumpidas y terminadas por la fuerza.
• Si una actividad de escalado está en curso y su grupo Auto Scaling está por debajo de la nueva
capacidad deseada, Amazon EC2 Auto Scaling escala horizontal primero antes de finalizar las
instancias antiguas.
• Puede configurar un enlace del ciclo de vida de terminación para su grupo de Auto Scaling cuando
habilite el reequilibrio de capacidad para intentar cerrar correctamente la aplicación dentro de las
instancias que reciben la notificación de reequilibrio, antes de que Amazon EC2 Auto Scaling termine las
instancias. Si no configura un enlace del ciclo de vida, Amazon EC2 Auto Scaling comenzará a terminar
las instancias antiguas tan pronto como las nuevas instancias superen su comprobación de estado.
• Al utilizar el reequilibrio de capacidad, la aplicación debe ser tolerante a algunas interrupciones para
evitar interrupciones en la aplicación. Cuando una instancia comienza a finalizar, Amazon EC2 Auto
Scaling espera a que finalice la instancia. Si el grupo Auto Scaling está detrás de un equilibrador de
carga de Elastic Load Balancing, Amazon EC2 Auto Scaling espera a que la instancia se anule el
registro del equilibrador de carga antes de llamar al enlace del ciclo de vida de terminación (si está
configurado). Si el tiempo para agotar las conexiones y ejecutar los ganchos del ciclo de vida tarda
demasiado, la instancia puede interrumpirse mientras Amazon EC2 Auto Scaling espera a que finalice la
instancia.
• En los casos en que una instancia recibe un aviso final de interrupción de dos minutos, Amazon EC2
Auto Scaling llama al gancho del ciclo de vida de terminación e intenta iniciar inmediatamente un
reemplazo.

Cómo habilitar el reequilibrio de capacidad (consola)


Puede habilitar o deshabilitar el reequilibrio de capacidad al crear o actualizar un grupo de Auto Scaling.

Para habilitar el reequilibrio de capacidad para un nuevo grupo de Auto Scaling

Siga las instrucciones enGrupos de Auto Scaling con varios tipos de instancias y opciones de
compra (p. 56)Para crear un nuevo grupo de Auto Scaling. Cuando se crea un grupo de Auto Scaling, en
el paso 2 del asistente, se configuran las opciones de compra de instancias y la configuración de red. Para
especificar configuraciones adicionales para el grupo Auto Scaling, incluida la configuración de distribución
de instancias, la configuración de asignación puntual, el reequilibrio de capacidad y los tipos de instancia
que Amazon EC2 Auto Scaling puede iniciar, seleccioneCombina opciones de compra y tipos de instancia.

En elDistribución de instancias, puede seleccionar si desea activar o no el reequilibrio de capacidad


seleccionando o desactivando la casillaReequilibrio de capacidad. Esta configuración está habilitada
de forma predeterminada en grupos de Auto Scaling creados con la consola cuando la estrategia de
asignación de puntos está establecida enCapacidad optimizada para.

244
Auto Scaling de Amazon EC2 Guía del usuario
Cómo habilitar el reequilibrio de capacidad

Para habilitar el reequilibrio de capacidad para un grupo de Auto Scaling existente

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto a su grupo de Auto Scaling.

Se abre un panel dividido en la parte inferior de laGrupos de Auto Scaling, que muestra información
sobre el grupo seleccionado.
3. En la páginaDetalles de, elijaOpciones de compra y tipos de instancia,Editar.
4. En elDistribución de instancias, haga lo siguiente:

• Para habilitar el reequilibrio de capacidad, seleccione la casillaReequilibrio de capacidad.


• Para deshabilitar el reequilibrio de capacidad, desactive la casillaReequilibrio de capacidad.
5. Elija Update (Actualizar).

Cómo habilitar el reequilibrio de capacidad (AWS CLI)


Los siguientes ejemplos muestran cómo utilizar elAWS CLIpara habilitar y deshabilitar el reequilibrio de
capacidad.

Usarcreate-auto-scaling-grouporupdate-auto-scaling-groupcon el siguiente parámetro:

• --capacity-rebalance/--no-capacity-rebalance— Valor booleano que indica si el reequilibrio


de capacidad está habilitado.

Antes de llamar al métodocreate-auto-scaling-group, necesita el nombre de una plantilla de lanzamiento


que esté configurada para usarse con un grupo de Auto Scaling. Para obtener más información, consulte
Creación de una plantilla de lanzamiento para un grupo de Auto Scaling (p. 28).
Note

Los siguientes procedimientos muestran cómo utilizar un archivo de configuración con formato
JSON o YAML. Si usaAWS CLIversión 1, debe especificar un archivo de configuración con

245
Auto Scaling de Amazon EC2 Guía del usuario
Cómo habilitar el reequilibrio de capacidad

formato JSON. Si usaAWS CLIversión 2, puede especificar un archivo de configuración con


formato YAML o JSON.

JSON

Para crear y configurar un nuevo grupo de Auto Scaling

• Utilice el siguientecreate-auto-scaling-grouppara crear un nuevo grupo de Auto Scaling y habilitar


Reequilibrio de capacidad, haciendo referencia a un archivo JSON como único parámetro para el
grupo Auto Scaling.

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

Si aún no tiene un archivo de configuración de CLI que especifique undirectiva de instancias


mixtas (p. 56), cree una.

Añada la línea siguiente al objeto JSON de nivel superior del archivo de configuración.

{
"CapacityRebalance": true
}

A continuación se muestra un ejemplo de un archivo config.json.

{
"AutoScalingGroupName": "my-asg",
"DesiredCapacity": 12,
"MinSize": 12,
"MaxSize": 15,
"CapacityRebalance": true,
"MixedInstancesPolicy": {
"InstancesDistribution": {
"OnDemandBaseCapacity": 0,
"OnDemandPercentageAboveBaseCapacity": 25,
"SpotAllocationStrategy": "capacity-optimized"
},
"LaunchTemplate": {
"LaunchTemplateSpecification": {
"LaunchTemplateName": "my-launch-template",
"Version": "$Default"
},
"Overrides": [
{
"InstanceType": "c5.large"
},
{
"InstanceType": "c5a.large"
},
{
"InstanceType": "m5.large"
},
{
"InstanceType": "m5a.large"
},
{
"InstanceType": "c4.large"
},
{
"InstanceType": "m4.large"
},
{

246
Auto Scaling de Amazon EC2 Guía del usuario
Cómo habilitar el reequilibrio de capacidad

"InstanceType": "c3.large"
},
{
"InstanceType": "m3.large"
}
]
}
},
"TargetGroupARNs": "arn:aws:elasticloadbalancing:us-
west-2:123456789012:targetgroup/my-alb-target-group/943f017f100becff",
"VPCZoneIdentifier": "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782"
}

YAML

Para crear y configurar un nuevo grupo de Auto Scaling

• Utilice el siguientecreate-auto-scaling-grouppara crear un nuevo grupo de Auto Scaling y habilitar


Reequilibrio de capacidad, haciendo referencia a un archivo YAML como único parámetro para el
grupo Auto Scaling.

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

Añada la siguiente línea a su archivo de configuración con formato de YAML.

CapacityRebalance: true

A continuación se muestra un ejemplo de un archivo config.yaml.

---
AutoScalingGroupName: my-asg
DesiredCapacity: 12
MinSize: 12
MaxSize: 15
CapacityRebalance: true
MixedInstancesPolicy:
InstancesDistribution:
OnDemandBaseCapacity: 0
OnDemandPercentageAboveBaseCapacity: 25
SpotAllocationStrategy: capacity-optimized
LaunchTemplate:
LaunchTemplateSpecification:
LaunchTemplateName: my-launch-template
Version: $Default
Overrides:
- InstanceType: c5.large
- InstanceType: c5a.large
- InstanceType: m5.large
- InstanceType: m5a.large
- InstanceType: c4.large
- InstanceType: m4.large
- InstanceType: c3.large
- InstanceType: m3.large
TargetGroupARNs:
- arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-alb-target-
group/943f017f100becff
VPCZoneIdentifier: subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782

247
Auto Scaling de Amazon EC2 Guía del usuario
Agregar un gancho de ciclo de vida de terminación

Para habilitar el reequilibrio de capacidad para un grupo de Auto Scaling existente

• Utilice el siguienteupdate-auto-scaling-grouppara habilitar el reequilibrio de capacidad.

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


--capacity-rebalance

Para comprobar que el reequilibrio de capacidad está habilitado para un grupo de Auto Scaling

• Utilice el siguientedescribe-auto-scaling-groupspara comprobar que el reequilibrio de capacidad está


habilitado y ver los detalles.

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

A continuación se muestra un ejemplo de respuesta.

{
"AutoScalingGroups": [
{
"AutoScalingGroupName": "my-asg",
"AutoScalingGroupARN": "arn",
...
"CapacityRebalance": true
}
]
}

Para deshabilitar el reequilibrio de capacidad

Usarupdate-auto-scaling-groupcon el comando de--no-capacity-rebalancepara deshabilitar el


reequilibrio de capacidad.

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


--no-capacity-rebalance

Agregar un gancho de ciclo de vida de terminación


Considere la posibilidad de configurar un enlace de ciclo de vida de terminación al habilitar el reequilibrio
de capacidad para que pueda ejecutar código y realizar acciones personalizadas en una instancia antes de
que termine.

Las razones por las que podría utilizar un enlace de ciclo de vida de terminación incluyen:

• Para cargar registros de sistema o aplicación a Amazon Simple Storage Service (Amazon S3)
• Para un apagado elegante de los trabajadores de Amazon SQS
• Para completar la cancelación del registro del sistema de nombres de dominio (DNS)

Si no dispone de un enlace de ciclo de vida de terminación, utilice el siguiente procedimiento para crear
uno.

Para agregar un enlace de ciclo de vida de terminación

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto a su grupo de Auto Scaling.

248
Auto Scaling de Amazon EC2 Guía del usuario
Monitorización con AWS Personal Health Dashboard

Se abre un panel dividido en la parte inferior de laGrupos de Auto Scaling, que muestra información
sobre el grupo seleccionado.
3. En la pestaña Instance management (Administración de instancias), en Lifecycle hooks (Enlaces de
ciclo de vida), elija Create lifecycle hook (Crear enlace de ciclo de vida).
4. Para definir un enlace de ciclo de vida, haga lo siguiente:

a. En Lifecycle hook name (Nombre del enlace de ciclo de vida), especifique un nombre para el
enlace de ciclo de vida.
b. ParaTransición de ciclo de vida, elijaTerminación de instancia.
c. ParaTiempo de espera de latidos, especifique la cantidad de tiempo, en segundos, que tendrá
que completar la acción del ciclo de vida, o hasta que finalice el período de tiempo de espera.
Recomendamos un valor de 30 a 120 segundos, dependiendo del tiempo que necesite para
apagar la aplicación.
d. ParaResultado predeterminado, especifique la acción que el grupo de Auto Scaling realiza
cuando transcurra el tiempo de espera del enlace de ciclo de vida o si se produce un error
inesperado. Tanto ABANDON como CONTINUAR permiten terminar la instancia.

• Si elige CONTINUAR, el grupo de Auto Scaling puede continuar con todas las acciones
restantes, como otros enlaces de ciclo de vida, antes de terminar.
• Si elige ABANDON, el grupo de Auto Scaling termina las instancias inmediatamente.
e. (Opcional) ParaMetadatos de notificación, especifique cualquier información adicional que desee
incluir en cualquier momento que Auto Scaling de Amazon EC2 envíe un mensaje a unAWS
Lambdau otro destino que configure en el paso 6.
5. Seleccione Create (Crear).
6. (Opcional) Para agregar una acción al gancho del ciclo de vida,Siga estos pasos: (p. 188)Para
configurar unAWS Lambdafunción u otro objetivo. De lo contrario, para que una instancia de EC2
ejecute una acción automáticamente, debe configurarla para ejecutar secuencias de comandos.
Se recomienda que la secuencia de apagado se complete en menos de uno o dos minutos para
asegurarse de que hay tiempo suficiente para completar las tareas antes de la finalización de la
instancia.

Para obtener más información, consulte Enganches de ciclo de vida de Amazon EC2 Auto Scaling (p. 184).

AWS Personal Health DashboardAuto Scaling de


Amazon EC2
SusAWS Personal Health DashboardSu (PHD) proporciona soporte para notificaciones procedentes de
Amazon EC2 Auto Scaling. Estas notificaciones le ofrecen orientación en sensibilización y corrección
de errores para problemas de rendimiento o disponibilidad de recursos que puedan afectar a las
aplicaciones. Sólo están disponibles los eventos específicos de grupos de seguridad que faltan y plantillas
de lanzamiento.

El AWS Personal Health Dashboard forma parte del servicio AWS Health. No precisa configuración
y cualquier usuario autenticado en su cuenta puede consultarlo. Para obtener más información,
consulteIntroducción alAWS Personal Health Dashboard.

Si recibe un mensaje similar a los siguientes mensajes, debe tratarse como una alarma para tomar
medidas.

Ejemplo: Auto Scaling no se está haciendo el escaling en el grupo de debido a que falta un grupo de
seguridad

249
Auto Scaling de Amazon EC2 Guía del usuario
Monitorización con CloudWatch

Hello,

At 2020-01-11 04:00 UTC, we detected an issue with your Auto Scaling group [ARN] in

Cuenta de AWS
123456789012.

A security group associated with this Auto Scaling group cannot be found. Each time a
scale out operation is performed, it will be prevented until you make a change that
fixes the issue.

We recommend that you review and update your Auto Scaling group configuration to change
the launch template or launch configuration that depends on the unavailable security
group.

Sincerely,
Amazon Web Services

Ejemplo: Auto Scaling no se está haciendo el escaling en el grupo de debido a que falta una plantilla de
lanzamiento

Hello,

At 2021-05-11 04:00 UTC, we detected an issue with your Auto Scaling group [ARN] in

Cuenta de AWS
123456789012.

The launch template associated with this Auto Scaling group cannot be found. Each time
a scale out operation is performed, it will be prevented until you make a change that
fixes the issue.

We recommend that you review and update your Auto Scaling group configuration and
specify an existing launch template to use.

Sincerely,
Amazon Web Services

Supervisión de las métricas de CloudWatch para


sus grupos e instancias de Auto Scaling
Métricasson el concepto fundamental en CloudWatch. Una métrica representa un conjunto de puntos
de datos ordenados por tiempo que se publican en CloudWatch. Una métrica es una variable que hay
que monitorizar y los puntos de datos son los valores de esa variable a lo largo del tiempo. Utilice estas
métricas para comprobar que el sistema funciona de acuerdo con lo esperado.

Amazon EC2 Auto Scaling publica puntos de datos en CloudWatch sobre sus grupos de Auto Scaling. Las
métricas están disponibles con una granularidad de un minuto sin cargo adicional, pero debe habilitarlas.
Al hacerlo, obtiene visibilidad continua de las operaciones de sus grupos de Auto Scaling de para que
pueda responder rápidamente a los cambios en sus cargas de trabajo. Puede habilitar y deshabilitar estas
métricas mediante laAWS Management Console,AWS CLIo un SDK.

Amazon EC2 publica puntos de datos en CloudWatch que describen sus instancias de Auto Scaling. El
intervalo para la monitorización de instancias de Amazon EC2 se puede configurar. Puede elegir entre una
granularidad de un minuto y cinco minutos. Para obtener más información, consulte Configuración de la
supervisión para instancias de Auto Scaling (p. 256).

Contenido

250
Auto Scaling de Amazon EC2 Guía del usuario
Habilitar métricas de grupo de Auto Scaling (consola)

• Habilitar métricas de grupo de Auto Scaling (consola) (p. 251)


• Para habilitar las métricas de grupo de Auto Scaling (AWS CLI) (p. 251)
• Métricas y dimensiones disponibles (p. 252)
• Métricas de grupo de Auto Scaling (p. 252)
• Dimensiones de las métricas de grupo de Auto Scaling (p. 253)
• Ver métricas gráficas para las instancias y los grupos de Auto Scaling (p. 253)
• Trabajo con Amazon CloudWatch (p. 254)
• Ver métricas de CloudWatch (p. 254)
• Creación de alarmas de Amazon CloudWatch (p. 255)
• Configuración de la supervisión para instancias de Auto Scaling (p. 256)
• Habilitar el monitoreo detallado (consola) (p. 256)
• Habilitar el monitoreo detallado (AWS CLI) (p. 256)
• Cambio entre la supervisión básica y la detallada (p. 257)

Habilitar métricas de grupo de Auto Scaling (consola)


Cuando habilita las métricas de grupo de Auto Scaling, el grupo de Auto Scaling envía datos de muestra a
CloudWatch cada minuto. No se aplica ningún cargo por habilitar estas métricas.

Para habilitar las métricas de grupo

1. Abra la consola de Auto Scaling de Amazon EC2 enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación junto a su grupo de Auto Scaling.

Se abre un panel dividido en la parte inferior de la página, que muestra información sobre el grupo
seleccionado.
3. En la páginaMonitoreo, seleccione laColección de métricas de grupo de Auto Scaling,HabilitarEn la
parte superior de la página, bajoAuto Scaling.

Para deshabilitar las métricas de grupo

1. Abra la consola de Auto Scaling de Amazon EC2 enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione el grupo de Auto Scaling.
3. En la páginaMonitoreo, desactive la casillaColección de métricas de grupo de Auto Scaling,Habilitar.

Para habilitar las métricas de grupo de Auto Scaling


(AWS CLI)
Para habilitar las métricas de grupo

Habilite una o varias métricas de grupo mediante el comando enable-metrics-collection. Por ejemplo, el
siguiente comando habilita la métrica GroupDesiredCapacity.

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


--metrics GroupDesiredCapacity --granularity "1Minute"

Si omite la opción --metrics, se habilitan todas las métricas.

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

251
Auto Scaling de Amazon EC2 Guía del usuario
Métricas y dimensiones disponibles

--granularity "1Minute"

Para deshabilitar las métricas de grupo

Use el comando disable-metrics-collection. Por ejemplo, el comando siguiente deshabilita todas las
métricas de grupo de Auto Scaling.

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

Métricas y dimensiones disponibles


Métricas de grupo de Auto Scaling
El espacio de nombres de AWS/AutoScaling incluye las siguientes métricas.

Métrica Descripción

GroupMinSize El tamaño mínimo del grupo de Auto Scaling.

criterios: Se notifica si la recopilación de métricas está habilitada.

GroupMaxSize El tamaño máximo del grupo de Auto Scaling.

criterios: Se notifica si la recopilación de métricas está habilitada.

GroupDesiredCapacity El número de instancias que el grupo de Auto Scaling intenta


mantener.

criterios: Se notifica si la recopilación de métricas está habilitada.

GroupInServiceInstances El número de instancias que se ejecutan como parte del grupo


de Auto Scaling. Esta métrica no incluye las instancias que están
pendientes o se están terminando.

criterios: Se notifica si la recopilación de métricas está habilitada.

GroupPendingInstances El número de instancias que están pendientes. Una instancia


pendiente aún no está operativa. Esta métrica no incluye las
instancias que están en servicio o se están terminando.

criterios: Se notifica si la recopilación de métricas está habilitada.

GroupStandbyInstances El número de instancias que tienen el estado Standby. Las


instancias con este estado se siguen ejecutando pero no están en
servicio.

criterios: Se notifica si la recopilación de métricas está habilitada.

GroupTerminatingInstances El número de instancias que se están terminando. Esta métrica no


incluye las instancias que están en servicio o pendientes.

criterios: Se notifica si la recopilación de métricas está habilitada.

GroupTotalInstances El número total de instancias en el grupo de Auto Scaling. Esta


métrica identifica el número de instancias que están en servicio,
pendientes y en proceso de terminación.

criterios: Se notifica si la recopilación de métricas está habilitada.

252
Auto Scaling de Amazon EC2 Guía del usuario
Ver métricas gráficas para las
instancias y los grupos de Auto Scaling

LaAWS/AutoScalingEl espacio de nombres incluye las siguientes métricas para los grupos de Auto
Scaling que utilizan laPonderación de instancias de (p. 73)característica. Si no se aplica la ponderación
de instancias, las siguientes métricas se rellenan, pero son iguales a las métricas definidas en la tabla
anterior.

Métrica Descripción

GroupInServiceCapacity El número de unidades de capacidad que se ejecutan como parte del


grupo de Auto Scaling.

criterios: Se notifica si la recopilación de métricas está habilitada.

GroupPendingCapacity El número de unidades de capacidad que están pendientes.

criterios: Se notifica si la recopilación de métricas está habilitada.

GroupStandbyCapacity El número de unidades de capacidad que están en un estado


Standby.

criterios: Se notifica si la recopilación de métricas está habilitada.

GroupTerminatingCapacity El número de unidades de capacidad que están en proceso de


terminación.

criterios: Se notifica si la recopilación de métricas está habilitada.

GroupTotalCapacity El número total de unidades de capacidad en el grupo de Auto


Scaling.

criterios: Se notifica si la recopilación de métricas está habilitada.

Dimensiones de las métricas de grupo de Auto Scaling


Para filtrar las métricas de su grupo de Auto Scaling por nombre de grupo, use
laAutoScalingGroupNameDimensión.

Ver métricas gráficas para las instancias y los grupos


de Auto Scaling
Después de crear un grupo de Auto Scaling, puede abrir el grupo y ver una serie de gráficos de supervisión
en la pestañaMonitoreoPestaña. Cada gráfico se basa en una de las métricas de CloudWatch disponibles
para las instancias y los grupos de Auto Scaling. Los gráficos de monitorización muestran puntos de datos
para métricas de grupo de Auto Scaling si las métricas están habilitadas.

Están disponibles las siguientes métricas gráficas para grupos:

• Tamaño mínimo del grupo—GroupMinSize


• Tamaño máximo del grupo—GroupMaxSize
• Capacidad deseada—GroupDesiredCapacity
• Instancias en servicio—GroupInServiceInstances
• Instancias pendientes—GroupPendingInstances
• Instancias en espera—GroupStandbyInstances
• Instancias en proceso de terminación—GroupTerminatingInstances
• Total de instancias—GroupTotalInstances

253
Auto Scaling de Amazon EC2 Guía del usuario
Trabajo con Amazon CloudWatch

Las siguientes métricas gráficas están disponibles para grupos en los que las instancias tienen pesos que
definen cuántas unidades contribuye cada instancia a la capacidad deseada del grupo:

• Unidades de capacidad en servicio—GroupInServiceCapacity


• Unidades de capacidad pendiente—GroupPendingCapacity
• Unidades de capacidad en espera—GroupStandbyCapacity
• Unidades de capacidad de terminación—GroupTerminatingCapacity
• Unidades de capacidad total—GroupTotalCapacity

Están disponibles las siguientes métricas para instancias:

• Utilización de la CPU—CPUUtilization
• Lecturas en disco—DiskReadBytes
• Operaciones de lectura en disco—DiskReadOps
• Escrituras en disco—DiskWriteBytes
• Operaciones de escritura en disco—DiskWriteOps
• Entrada de red—NetworkIn
• Salida de red—NetworkOut
• Comprobación de estado no superada (cualquiera)—StatusCheckFailed
• Comprobación de estado no superada (instancia)—StatusCheckFailed_Instance
• Comprobación de estado no superada (sistema)—StatusCheckFailed_System

Para obtener más información acerca de las métricas de Amazon EC2 y los datos que proporcionan a
los gráficos, consulteEnumerar las métricas de CloudWatch disponibles para las instanciasen laGuía del
usuario de Amazon EC2 para instancias de Linux.

Trabajo con Amazon CloudWatch


Contenido
• Ver métricas de CloudWatch (p. 254)
• Creación de alarmas de Amazon CloudWatch (p. 255)

Ver métricas de CloudWatch


Puede ver las métricas de grupo de Auto Scaling mediante la consola de CloudWatch y las herramientas
de línea de comandos.

Para consultar métricas mediante la consola de CloudWatch

Para obtener más información, consulteGrupo de Auto Scaling.

Para ver las métricas de CloudWatch (AWS CLI)

Para ver todas las métricas de todos los grupos de Auto Scaling, utilice la siguientelist-metricscomando de.

aws cloudwatch list-metrics --namespace "AWS/AutoScaling"

Para ver las métricas de un único grupo de Auto Scaling, especifique


laAutoScalingGroupNamedimensión de la siguiente manera.

254
Auto Scaling de Amazon EC2 Guía del usuario
Trabajo con Amazon CloudWatch

aws cloudwatch list-metrics --namespace "AWS/AutoScaling" --dimensions


Name=AutoScalingGroupName,Value=my-asg

Para ver una sola métrica para todos los grupos de Auto Scaling, especifique el nombre de la métrica de la
siguiente manera.

aws cloudwatch list-metrics --namespace "AWS/AutoScaling" --metric-name


GroupDesiredCapacity

Creación de alarmas de Amazon CloudWatch


Un objetivo para las métricas de monitorización es comprobar que su aplicación funciona de acuerdo con
lo esperado. En Amazon CloudWatch, puede crear una alarma que envíe una notificación cuando el valor
de una métrica determinada supere lo que considere un umbral aceptable.

Comience identificando la métrica que se va a monitorear. Por ejemplo, puede configurar una alarma para
vigilar la utilización media de la CPU de las instancias EC2 en el grupo de Auto Scaling. La acción puede
ser una notificación que se le envía cuando el uso medio de la CPU de las instancias del grupo supera el
umbral que haya especificado para los periodos consecutivos que haya especificado. Por ejemplo, si la
métrica se mantiene al 70 % o por encima de este nivel durante 4 períodos consecutivos de 1 minuto cada
uno.

Para obtener más información, consulteUso de alarmas de Amazon CloudWatchen laGuía del usuario de
Amazon CloudWatch.

Para crear una alarma de CloudWatch para el grupo de Auto Scaling

1. Abra la consola de CloudWatch en https://console.aws.amazon.com/cloudwatch/.


2. Si es necesario, cambie la región. En la barra de navegación, seleccione la región donde residen sus
grupos de Auto Scaling.
3. En el panel de navegación, elija Alarms (Alarmas) y, a continuación, elija Create alarm (Crear alarma).
4. Elija Select metric (Seleccionar métrica).
5. En la pestaña Todas las métricas, seleccione una métrica de la siguiente manera:

• Para mostrar solamente las métricas registradas para los grupos de Auto Scaling, elijaEC2y luego
seleccionePor Grupo de Auto Scaling. Para ver las métricas de un único grupo de Auto Scaling,
escriba su nombre en el campo de búsqueda.
• Seleccione la fila que contiene la métrica del grupo de Auto Scaling en el que desea crear una
alarma.
• Elija Select metric (Seleccionar métrica). Aparece la página Specify metric and conditions
(Especificar métrica y condiciones), que muestra un gráfico y otra información sobre la métrica.
6. En Period (Periodo), elija el periodo de evaluación para la alarma, por ejemplo, 1 minuto. Al evaluar la
alarma, cada periodo se agrega a un punto de datos.
Note

Un periodo más corto crea una alarma con más sensibilidad.


7. En Condiciones, haga lo siguiente:

• En Threshold type (Tipo de umbral), elija Static (Estático).


• En Cuando metric sea, especifique si desea que el valor de la métrica sea mayor que, mayor o
igual que, menor que, o menor o igual que el umbral para desencadenar la alarma. A continuación,
en than (que), escriba el valor del umbral que desea utilizar para activar la alarma.
8. En Configuración adicional, haga lo siguiente:

255
Auto Scaling de Amazon EC2 Guía del usuario
Configuración de la supervisión
para instancias de Auto Scaling

• En Puntos de datos para alarma, escriba el número de puntos de datos (periodos de evaluación)
durante los que el valor de la métrica debe cumplir las condiciones del umbral para desencadenar
la alarma. Por ejemplo, dos periodos consecutivos de 5 minutos tardarían 10 minutos en
desencadenar la alarma.
• En Missing data treatment, (Tratamiento de los datos que faltan), elija lo que desea que haga la
alarma si faltan algunos datos. Para obtener más información, consulteConfigurar cómo las alarmas
de CloudWatch tratan los datos faltantesen laGuía del usuario de Amazon CloudWatch.
9. Elija Next (Siguiente).
10. BajoNotificación, puede elegir o crear el tema de Amazon SNS que desea utilizar para recibir
notificaciones. De lo contrario, puede quitar la notificación ahora y agregar una más tarde cuando esté
listo.
11. Elija Next (Siguiente).
12. Escriba un nombre y, si lo desea, una descripción de la alarma y, a continuación, elija Next
(Siguiente).
13. Elija Create Alarm (Crear alarma).

Configuración de la supervisión para instancias de


Auto Scaling
Amazon EC2 puede habilitar la monitorización detallada cuando lanza instancias EC2 en el grupo de Auto
Scaling. Puede configurar la monitorización para las instancias de Auto Scaling mediante una plantilla de
lanzamiento o una configuración de lanzamiento.

La monitorización se habilita cada vez que se lanza una instancia, ya sea la monitorización básica (se
recopilan datos cada 5 minutos) o la monitorización detallada (se recopilan datos cada minuto). Para la
monitorización detallada, se aplican cargos adicionales. Para obtener más información, consultePrecios de
Amazon CloudWatchyMonitoreo de las instancias con CloudWatchen laGuía del usuario de Amazon EC2
para instancias de Linux.

Habilitar el monitoreo detallado (consola)


De forma predeterminada, la monitorización básica se habilita cuando se utiliza laAWS Management
ConsolePara crear una plantilla de lanzamiento o una configuración de lanzamiento.

Para habilitar la monitorización detallada en una plantilla de lanzamiento

Cuando crea la plantilla de lanzamiento con laAWS Management Console, en elDetalles


avanzadossección, paramonitorización detallada de CloudWatch, elijaHabilitar. De lo contrario, se habilita
la monitorización básica. Para obtener más información, consulte Configuración de opciones avanzadas
para la plantilla de lanzamiento (p. 32).

Para habilitar la monitorización detallada en una configuración de lanzamiento

Cuando crea la configuración de lanzamiento usando laAWS Management Console, en elConfiguración


adicional, seleccioneHabilitar la monitorización detallada de instancias EC2 dentro de CloudWatch. De lo
contrario, se habilita la monitorización básica. Para obtener más información, consulte Creación de una
configuración de lanzamiento (p. 42).

Habilitar el monitoreo detallado (AWS CLI)


De forma predeterminada, la monitorización básica se habilita cuando crea una plantilla de lanzamiento
mediante laAWS CLI. La monitorización detallada se habilita de forma predeterminada cuando crea una
configuración de lanzamiento mediante laAWS CLI.

256
Auto Scaling de Amazon EC2 Guía del usuario
Registrar llamadas a la API con AWS CloudTrail

Para habilitar la monitorización detallada en una plantilla de lanzamiento

Para las plantillas de lanzamiento, utilice el comando create-launch-template y transfiera un archivo JSON
que contenga la información para crear la plantilla de lanzamiento. Establezca el atributo de monitorización
en "Monitoring":{"Enabled":true} para habilitar la monitorización detallada o en "Monitoring":
{"Enabled":false} para habilitar la monitorización básica.

Para habilitar la monitorización detallada en una configuración de lanzamiento

Para las configuraciones de lanzamiento, utilice el comando create-launch-configuration con la opción --


instance-monitoring. Establezca esta opción en true para habilitar la monitorización detallada o en
false para habilitar la monitorización básica.

--instance-monitoring Enabled=true

Cambio entre la supervisión básica y la detallada


Para cambiar el tipo de monitorización habilitado en las instancias EC2 nuevas, actualice la plantilla
de lanzamiento o el grupo Auto Scaling de para que utilicen una nueva plantilla de lanzamiento o una
nueva configuración de lanzamiento. Las instancias existentes siguen utilizando el tipo de monitorización
que estaba habilitado anteriormente. Para actualizar todas las instancias, termínelas de forma que
se sustituyan por el grupo Auto Scaling o actualice las instancias individualmente mediantemonitor-
instancesyunmonitor-instances.
Note
Con la duración máxima de la instancia y las características de actualización de instancias,
también puede reemplazar todas las instancias del grupo Auto Scaling para iniciar nuevas
instancias que utilicen la nueva configuración. Para obtener más información, consulte Reemplazo
de instancias de Auto Scaling en función de la duración máxima (p. 108) y Reemplazo de
instancias de Auto Scaling basadas en una actualización de instancia (p. 110).

Cuando cambia entre la supervisión básica y la detallada:

Si tiene alarmas de CloudWatch asociadas a su grupo de Auto Scaling, use laput-metric-alarmpara


actualizar cada alarma. Ajuste cada periodo para que coincida con el tipo de monitorización (300 segundos
para la monitorización básica y 60 segundos para la monitorización detallada). Si cambia de la
monitorización detallada a la monitorización básica, pero no actualiza las alarmas para que coincidan con
el periodo de cinco minutos, se siguen comprobando las estadísticas cada minuto. Es posible que no haya
datos disponibles durante cuatro de cada cinco periodos.

Registro de llamadas a la API de Auto Scaling de


Amazon EC2AWS CloudTrail
Auto Scaling de Amazon EC2AWS CloudTrail, un servicio que registra las acciones de un usuario, un rol
o un servicio mediante Amazon EC2 Auto Scaling. CloudTrail captura como eventos todas las llamadas a
las API de Auto Scaling de Amazon EC2 Las llamadas capturadas incluyen las llamadas desde la consola
de Auto Scaling de Amazon EC2 Auto Scaling y las llamadas desde el código a la API de Auto Scaling de
Amazon EC2

Si crea un registro de seguimiento, puede habilitar la entrega continua de eventos de CloudTrail a un


bucket de Amazon S3, incluidos los eventos de Auto Scaling de Amazon EC2 Auto Scaling. Si no configura
un registro de seguimiento, puede ver los eventos más recientes de la consola de CloudTrail en el Event
history (Historial de eventos). Mediante la información recopilada por CloudTrail, puede determinar la
solicitud que se realizó a Amazon EC2 Auto Scaling, la dirección IP desde la que se realizó, quién la
realizó, cuándo, etc.

257
Auto Scaling de Amazon EC2 Guía del usuario
Información de Auto Scaling de Amazon EC2

Para obtener más información sobre CloudTrail, consulte la Guía del usuario de AWS CloudTrail.

Información de Auto Scaling de Amazon EC2


CloudTrail se habilita en una cuenta de Amazon Web Services al crearla. Cuando se produce una actividad
en Amazon EC2 Auto Scaling, dicha actividad se registra en un evento de CloudTrail junto con los eventos
de Amazon Web Services enHistorial de eventos. Puede ver, buscar y descargar los últimos eventos en
una cuenta de Amazon Web Services. Para obtener más información, consulte Visualización de eventos
con el historial de eventos de CloudTrail.

Para obtener un registro continuo de los eventos de la cuenta de Amazon Web Services, incluidos los
eventos de Auto Scaling de Amazon EC2 Auto Scaling, cree un registro de seguimiento. Un registro
de seguimiento permite a CloudTrail enviar archivos de registro a un bucket de Amazon S3. De forma
predeterminada, cuando se crea un registro de seguimiento en la consola, el registro de seguimiento se
aplica a todas las regiones de . El registro de seguimiento registra los eventos de todas las regiones de la
partición de Amazon Web Services y envía los archivos de registro al bucket de Amazon S3 especificado.
Además, puede configurar otros Amazon Web Services para analizar y actuar en función de los datos de
eventos recopilados en los registros de CloudTrail. Para obtener más información, consulte los siguientes
temas:

• Introducción a la creación de registros de seguimiento


• Servicios e integraciones compatibles con CloudTrail
• Configuración de notificaciones de Amazon SNS para CloudTrail
• Recibir archivos de registro de CloudTrail de varias regionesyRecibir archivos de registro de CloudTrail
de varias cuentas

CloudTrail registra todas las acciones de Auto Scaling y se documentan


enReferencia de la API de Auto Scaling de Amazon EC2. Por ejemplo, las llamadas
aCreateLaunchConfiguration,DescribeAutoescalingGroup, yUpdateAutoScalingGroupgeneran entradas en
los archivos de registro de CloudTrail.

Cada entrada de registro o evento contiene información acerca de quién generó la solicitud. La información
de identidad del usuario le ayuda a determinar lo siguiente:

• Si la solicitud se realizó con credenciales de usuario AWS Identity and Access Management (IAM) o
credenciales de usuario raíz.
• Si la solicitud se realizó con credenciales de seguridad temporales de un rol o fue un usuario federado.
• Si la solicitud la realizó otro servicio de .

Para obtener más información, consulte laCloudTrailuserIdentityElemento.

Introducción a las entradas de los archivos de registro


de Auto Scaling de Amazon
Un registro de seguimiento es una configuración que permite la entrega de eventos como archivos de
registro en un bucket de Amazon S3 que especifique. Los archivos log de CloudTrail pueden contener
una o varias entradas de log. Un evento representa una única solicitud de cualquier origen e incluye
información acerca de la acción solicitada, la fecha y la hora de la acción, los parámetros de la solicitud,
etcétera. Los archivos de registro de CloudTrail no rastrean el orden en la pila de las llamadas públicas a la
API, por lo que estas no aparecen en ningún orden específico.

En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
CreateLaunchConfiguration.

258
Auto Scaling de Amazon EC2 Guía del usuario
Supervisión con notificaciones de Amazon SNS

{
"eventVersion": "1.05",
"userIdentity": {
"type": "Root",
"principalId": "123456789012",
"arn": "arn:aws:iam::123456789012:root",
"accountId": "123456789012",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"sessionContext": {
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2018-08-21T17:05:42Z"
}
}
},
"eventTime": "2018-08-21T17:07:49Z",
"eventSource": "autoscaling.amazonaws.com",
"eventName": "CreateLaunchConfiguration",
"awsRegion": "us-west-2",
"sourceIPAddress": "192.0.2.0",
"userAgent": "Coral/Jakarta",
"requestParameters": {
"ebsOptimized": false,
"instanceMonitoring": {
"enabled": false
},
"instanceType": "t2.micro",
"keyName": "EC2-key-pair-oregon",
"blockDeviceMappings": [
{
"deviceName": "/dev/xvda",
"ebs": {
"deleteOnTermination": true,
"volumeSize": 8,
"snapshotId": "snap-01676e0a2c3c7de9e",
"volumeType": "gp2"
}
}
],
"launchConfigurationName": "launch_configuration_1",
"imageId": "ami-6cd6f714d79675a5",
"securityGroups": [
"sg-00c429965fd921483"
]
},
"responseElements": null,
"requestID": "0737e2ea-fb2d-11e3-bfd8-99133058e7bb",
"eventID": "3fcfb182-98f8-4744-bd45-b38835ab61cb",
"eventType": "AwsApiCall",
"recipientAccountId": "123456789012"
}

Obtener notificaciones de Amazon SNS cuando su


grupo de Auto Scaling se escala
Puede recibir una notificación cuando Amazon EC2 Auto Scaling esté iniciando o finalizando las instancias
de EC2 en su grupo Auto Scaling. Gestiona notificaciones con Amazon Simple Notification Service
(Amazon SNS).

259
Auto Scaling de Amazon EC2 Guía del usuario
Notificaciones de SNS

Amazon SNS coordina y administra la entrega o el envío de notificaciones a los clientes o puntos de enlace
suscritos. Amazon SNS ofrece una variedad de opciones de notificación, como la posibilidad de entregar
notificaciones como HTTP o HTTPS POST, como un correo electrónico (SMTP con texto sin formato o con
formato JSON) o como un mensaje publicado en una cola de Amazon SQS, lo que permite gestionar estas
notificaciones mediante programación. Para obtener más información, consulteGuía del desarrollador de
Amazon Simple Notification Service.

Por ejemplo, si configura el grupo Auto Scaling para que utilice elautoscaling:
EC2_INSTANCE_TERMINATEEl tipo de notificación y el grupo de Auto Scaling termina una instancia, se
envía una notificación por correo electrónico. Este correo electrónico contiene los detalles de la instancia
terminada, como el ID de instancia y el motivo por el que se terminó la instancia.

Las notificaciones son útiles para diseñar aplicaciones basadas en eventos. Si usa notificaciones para
comprobar que un recurso de entra en un estado deseado, puede eliminar los sondeos de modo que no
encuentre laRequestLimitExceedederror que a veces resulta del sondeo.

AWSproporciona varias herramientas que puede utilizar para enviar notificaciones. También puede
utilizar EventBridge y Amazon SNS para enviar notificaciones cuando los grupos de Auto Scaling inician o
terminan instancias. En EventBridge, la regla describe los eventos que se le notifican. En Amazon SNS, en
el tema se describe el tipo de notificación que recibe. Usando esta opción, puede decidir si ciertos eventos
deben desencadenar una función Lambda en su lugar. Para obtener más información, consulte Uso de
Amazon EC2 Auto Scaling con EventBridge (p. 263).

Contenido
• Notificaciones de SNS (p. 260)
• Configuración de notificaciones de Amazon SNS para Amazon EC2 Auto Scaling (p. 261)
• Cree un tema sobre Amazon SNS (p. 261)
• Suscribirse al tema de Amazon SNS (p. 261)
• Confirme su suscripción a Amazon SNS (p. 261)
• Configure el grupo de Auto Scaling para que envíe notificaciones (p. 262)
• Probar la notificación (p. 262)
• Eliminar la configuración de notificaciones (p. 263)

Notificaciones de SNS
Amazon EC2 Auto Scaling admite el envío de notificaciones de Amazon SNS cuando se producen los
eventos siguientes.

Evento Descripción

autoscaling:EC2_INSTANCE_LAUNCH Instancia lanzada correctamente

autoscaling:EC2_INSTANCE_LAUNCH_ERROR Error al lanzar la instancia

autoscaling:EC2_INSTANCE_TERMINATE Instancia terminada correctamente

autoscaling:EC2_INSTANCE_TERMINATE_ERRORError al terminar la instancia

El mensaje incluye la siguiente información:

• Event: el evento.
• AccountIdEl ID de cuenta de Amazon Web Services.
• AutoScalingGroupName— Nombre del grupo de Auto Scaling.

260
Auto Scaling de Amazon EC2 Guía del usuario
Configuración de notificaciones de Amazon
SNS para Amazon EC2 Auto Scaling

• AutoScalingGroupARNARN del grupo de Auto Scaling.


• EC2InstanceId: el ID de la instancia EC2.

Por ejemplo:

Service: AWS Auto Scaling


Time: 2016-09-30T19:00:36.414Z
RequestId: 4e6156f4-a9e2-4bda-a7fd-33f2ae528958
Event: autoscaling:EC2_INSTANCE_LAUNCH
AccountId: 123456789012
AutoScalingGroupName: my-asg
AutoScalingGroupARN: arn:aws:autoscaling:region:123456789012:autoScalingGroup...
ActivityId: 4e6156f4-a9e2-4bda-a7fd-33f2ae528958
Description: Launching a new EC2 instance: i-0598c7d356eba48d7
Cause: At 2016-09-30T18:59:38Z a user request update of AutoScalingGroup constraints to ...
StartTime: 2016-09-30T19:00:04.445Z
EndTime: 2016-09-30T19:00:36.414Z
StatusCode: InProgress
StatusMessage:
Progress: 50
EC2InstanceId: i-0598c7d356eba48d7
Details: {"Subnet ID":"subnet-id","Availability Zone":"zone"}

Configuración de notificaciones de Amazon SNS para


Amazon EC2 Auto Scaling
Para utilizar Amazon SNS para que envíe notificaciones por correo electrónico, primero debe crear
unaTema deY, a continuación, suscribir sus direcciones de correo electrónico al tema.

Cree un tema sobre Amazon SNS


Un tema de SNS es un punto de acceso lógico, es decir, un canal de comunicación que su grupo de Auto
Scaling utiliza para enviar notificaciones. Los temas se crean especificando un nombre para el tema.

Los nombres de tema creados deben cumplir los siguientes requisitos:

• Deben tener entre 1 y 256 caracteres.


• Deben contener letras ASCII en mayúsculas y minúsculas, números, guiones bajos o guiones.

Para obtener más información, consulteCreación de un tema sobre Amazon SNSen laGuía del
desarrollador de Amazon Simple Notification Service.

Suscribirse al tema de Amazon SNS


Para recibir las notificaciones que su grupo de Auto Scaling envía al tema, debe suscribir un punto de
enlace al tema. En este procedimiento,Punto de enlaceEn, especifique la dirección de correo electrónico
donde desea recibir las notificaciones de Amazon EC2 Auto Scaling.

Para obtener más información, consulteSuscribirse a un tema sobre Amazon SNSen laGuía del
desarrollador de Amazon Simple Notification Service.

Confirme su suscripción a Amazon SNS


Amazon SNS envía un correo electrónico de confirmación a la dirección de correo electrónico que ha
especificado en el paso anterior.

261
Auto Scaling de Amazon EC2 Guía del usuario
Configuración de notificaciones de Amazon
SNS para Amazon EC2 Auto Scaling

Asegúrese de abrir el correo electrónicodesdeAWSNotificacionesY elija el enlace para confirmar la


suscripción antes de continuar con el siguiente paso.

Recibirá un mensaje de confirmación deAWS. Amazon SNS estará ahora configurado para recibir
notificaciones y enviar la notificación como un correo electrónico a la dirección de correo electrónico
especificada.

Configure el grupo de Auto Scaling para que envíe notificaciones


Puede configurar su grupo de Auto Scaling para que envíe notificaciones a Amazon SNS cuando se
produzca un evento de escalado, como el lanzamiento de instancias o la finalización de instancias.
Amazon SNS envía una notificación con información acerca de las instancias a la dirección de correo
electrónico que ha especificado.

Para configurar notificaciones de Amazon SNS para el grupo de Auto Scaling(consola)

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto a su grupo de Auto Scaling.

Se abre un panel dividido en la parte inferior de la página, que muestra información sobre el grupo
seleccionado.
3. En la páginaActividadEn, elijaNotificaciones de,Crear notificación.
4. En el panel Create notifications, proceda del modo siguiente:

a. ParaTema de SNSEn, seleccione el tema de SNS.


b. ParaTipos de eventosEn, seleccione los eventos que se van a enviar notificaciones.
c. Seleccione Create (Crear).

Para configurar notificaciones de Amazon SNS para el grupo de Auto Scaling (AWS CLI)

Use el siguiente comando put-notification-configuration.

aws autoscaling put-notification-configuration --auto-scaling-group-name my-


asg --topic-arn arn --notification-types "autoscaling:EC2_INSTANCE_LAUNCH"
"autoscaling:EC2_INSTANCE_TERMINATE"

Probar la notificación
Para generar una notificación para un evento de lanzamiento, actualice el grupo de Auto Scaling
aumentando la capacidad deseada del grupo de Auto Scaling en 1. Usted recibe una notificación al cabo
de unos minutos después de que se lance la instancia.

Para cambiar la capacidad deseada(consola)

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione la casilla de verificación situada junto a su grupo de Auto Scaling.

Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto
Scaling) que muestra información sobre el grupo seleccionado.
3. En la pestañaDetails (Detalles) elija Group details (Detalles de grupo), Edit (Editar).
4. En Desired capacity (Capacidad deseada), aumente el valor actual en 1. Si este valor supera el valor
especificado en Maximum capacity (Capacidad máxima), también debe aumentar el valor de Maximum
capacity (Capacidad máxima) en 1.
5. Elija Update (Actualizar).

262
Auto Scaling de Amazon EC2 Guía del usuario
Uso de EventBridge

6. Después de unos minutos, recibirá una notificación del evento. Si no necesita la instancia adicional
que lanzó para esta prueba, puede reducir el valor Desired capacity (Capacidad deseada) en 1.
Después de unos minutos, recibirá una notificación del evento.

Eliminar la configuración de notificaciones


Puede eliminar la configuración de notificación de Amazon EC2 Auto Scaling si ya no se utiliza.

Para eliminar la configuración de notificaciones de Amazon EC2 Auto Scaling(consola)

1. Abra la consola de Amazon EC2 Auto Scaling enhttps://console.aws.amazon.com/ec2autoscaling/.


2. Seleccione el grupo de Auto Scaling.
3. En la páginaActividadEn, active la casilla de verificación situada junto a la notificación que desea
eliminar y, a continuación, elijaActions,Eliminar.

Para eliminar la configuración de notificaciones de Amazon EC2 Auto Scaling (AWS CLI)

Use el siguiente comando delete-notification-configuration.

aws autoscaling delete-notification-configuration --auto-scaling-group-name my-asg --topic-


arn arn

Para obtener información sobre cómo eliminar el tema de Amazon SNS y todas las suscripciones
asociadas a su grupo de Auto Scaling, consulteEliminación de una suscripción y un tema de Amazon
SNSen laGuía del desarrollador de Amazon Simple Notification Service.

Uso de Amazon EC2 Auto Scaling con EventBridge


Amazon EventBridge, anteriormente denominado CloudWatch Events, le ayuda a configurar reglas
basadas en eventos que monitoreen recursos e iniciar acciones de destino que utilicen otrosAWSServicios
de .

Los eventos de Amazon EC2 Auto Scaling se envían a EventBridge casi en tiempo real. Puede establecer
reglas de EventBridge que desencadenen acciones programáticas y notificaciones en respuesta a una
variedad de estos eventos. Por ejemplo, mientras las instancias están en proceso de lanzamiento o
finalización, puede activar unaAWS Lambdapara realizar una tarea preconfigurada. O bien, puede activar
notificaciones a un tema de Amazon SNS para supervisar el progreso de una actualización de instancia y
realizar validaciones en puntos de control específicos.

Además de invocar funciones de Lambda y notificar temas de Amazon SNS, EventBridge admite otros
tipos de destinos y acciones, como la transmisión de eventos a flujos de Amazon Kinesis, la activación
deAWS Step Functionsmáquinas de estado, e invocar elAWSComando de ejecución del Systems
Manager. Para obtener información acerca de los destinos admitidos, consulteObjetivos de Amazon
EventBridgeen laGuía del usuario de Amazon EventBridge.

Para obtener más información acerca de EventBridge, consulteIntroducción a Amazon EventBridgeen


laGuía del usuario de Amazon EventBridge. Tenga en cuenta que también puede crear reglas que activen
las llamadas a la API de Auto Scaling de Amazon EC2. Para obtener más información, consulteCreación
de una regla de EventBridge que se active en función de unaAWSLlamada a la API medianteAWS
CloudTrailen laGuía del usuario de Amazon EventBridge.

Contenido
• Eventos de Auto Scaling (p. 264)
• UsoAWS LambdaPara controlar eventos (p. 268)

263
Auto Scaling de Amazon EC2 Guía del usuario
Eventos de Auto Scaling

• Creación de reglas de EventBridge por ejemplo eventos de actualización (p. 270)

Eventos de Auto Scaling


Los siguientes son eventos de ejemplo de Amazon EC2 Auto Scaling. Los eventos se emiten en la medida
de lo posible.

Para ver ejemplos de los eventos entregados desde Amazon EC2 Auto Scaling a EventBridge cuando
utiliza un grupo caliente, consulteEventos en piscina caliente (p. 207).

Para obtener un ejemplo de evento de interrupción de instancias puntuales, consulteNotificaciones de


interrupción de instancias puntualesen laGuía del usuario de Amazon EC2 para instancias de Linux.

Eventos
• Acción de ciclo de vida de lanzamiento de instancia EC2 (p. 264)
• Lanzamiento de instancia EC2 correcto (p. 264)
• Lanzamiento de instancia EC2 incorrecto (p. 265)
• Acción de ciclo de vida de terminación de instancia EC2 (p. 266)
• Terminar instancia EC2 correcto (p. 266)
• Terminar instancia EC2 incorrecto (p. 267)
• Actualización de instancias de EC2 Auto Scaling (p. 267)

Acción de ciclo de vida de lanzamiento de instancia EC2


Auto Scaling de Amazon EC2 ha movido una instancia a unPending:Waitdebido a un enlace de ciclo de
vida.

Datos del evento

El siguiente es un ejemplo de los datos de este evento.

{
"version": "0",
"id": "12345678-1234-1234-1234-123456789012",
"detail-type": "EC2 Instance-launch Lifecycle Action",
"source": "aws.autoscaling",
"account": "123456789012",
"time": "yyyy-mm-ddThh:mm:ssZ",
"region": "us-west-2",
"resources": [
"auto-scaling-group-arn"
],
"detail": {
"LifecycleActionToken": "87654321-4321-4321-4321-210987654321",
"AutoScalingGroupName": "my-asg",
"LifecycleHookName": "my-lifecycle-hook",
"EC2InstanceId": "i-1234567890abcdef0",
"LifecycleTransition": "autoscaling:EC2_INSTANCE_LAUNCHING",
"NotificationMetadata": "additional-info"
}
}

Lanzamiento de instancia EC2 correcto


Auto Scaling de Amazon EC2 ha lanzado correctamente una instancia.

264
Auto Scaling de Amazon EC2 Guía del usuario
Eventos de Auto Scaling

Datos del evento

El siguiente es un ejemplo de los datos de este evento.

{
"version": "0",
"id": "12345678-1234-1234-1234-123456789012",
"detail-type": "EC2 Instance Launch Successful",
"source": "aws.autoscaling",
"account": "123456789012",
"time": "yyyy-mm-ddThh:mm:ssZ",
"region": "us-west-2",
"resources": [
"auto-scaling-group-arn",
"instance-arn"
],
"detail": {
"StatusCode": "InProgress",
"Description": "Launching a new EC2 instance: i-12345678",
"AutoScalingGroupName": "my-auto-scaling-group",
"ActivityId": "87654321-4321-4321-4321-210987654321",
"Details": {
"Availability Zone": "us-west-2b",
"Subnet ID": "subnet-12345678"
},
"RequestId": "12345678-1234-1234-1234-123456789012",
"StatusMessage": "",
"EndTime": "yyyy-mm-ddThh:mm:ssZ",
"EC2InstanceId": "i-1234567890abcdef0",
"StartTime": "yyyy-mm-ddThh:mm:ssZ",
"Cause": "description-text"
}
}

Lanzamiento de instancia EC2 incorrecto


No se pudo iniciar una instancia de Amazon EC2 Auto Scaling.

Datos del evento

El siguiente es un ejemplo de los datos de este evento.

{
"version": "0",
"id": "12345678-1234-1234-1234-123456789012",
"detail-type": "EC2 Instance Launch Unsuccessful",
"source": "aws.autoscaling",
"account": "123456789012",
"time": "yyyy-mm-ddThh:mm:ssZ",
"region": "us-west-2",
"resources": [
"auto-scaling-group-arn",
"instance-arn"
],
"detail": {
"StatusCode": "Failed",
"AutoScalingGroupName": "my-auto-scaling-group",
"ActivityId": "87654321-4321-4321-4321-210987654321",
"Details": {
"Availability Zone": "us-west-2b",
"Subnet ID": "subnet-12345678"
},
"RequestId": "12345678-1234-1234-1234-123456789012",

265
Auto Scaling de Amazon EC2 Guía del usuario
Eventos de Auto Scaling

"StatusMessage": "message-text",
"EndTime": "yyyy-mm-ddThh:mm:ssZ",
"EC2InstanceId": "i-1234567890abcdef0",
"StartTime": "yyyy-mm-ddThh:mm:ssZ",
"Cause": "description-text"
}
}

Acción de ciclo de vida de terminación de instancia EC2


Auto Scaling de Amazon EC2 ha movido una instancia a unTerminating:Waitdebido a un enlace de
ciclo de vida.

Datos del evento

El siguiente es un ejemplo de los datos de este evento.

{
"version": "0",
"id": "12345678-1234-1234-1234-123456789012",
"detail-type": "EC2 Instance-terminate Lifecycle Action",
"source": "aws.autoscaling",
"account": "123456789012",
"time": "yyyy-mm-ddThh:mm:ssZ",
"region": "us-west-2",
"resources": [
"auto-scaling-group-arn"
],
"detail": {
"LifecycleActionToken":"87654321-4321-4321-4321-210987654321",
"AutoScalingGroupName":"my-asg",
"LifecycleHookName":"my-lifecycle-hook",
"EC2InstanceId":"i-1234567890abcdef0",
"LifecycleTransition":"autoscaling:EC2_INSTANCE_TERMINATING",
"NotificationMetadata":"additional-info"
}
}

Terminar instancia EC2 correcto


Una instancia de Amazon EC2 Auto Scaling ha finalizado correctamente.

Datos del evento

El siguiente es un ejemplo de los datos de este evento.

{
"version": "0",
"id": "12345678-1234-1234-1234-123456789012",
"detail-type": "EC2 Instance Terminate Successful",
"source": "aws.autoscaling",
"account": "123456789012",
"time": "yyyy-mm-ddThh:mm:ssZ",
"region": "us-west-2",
"resources": [
"auto-scaling-group-arn",
"instance-arn"
],
"detail": {
"StatusCode": "InProgress",

266
Auto Scaling de Amazon EC2 Guía del usuario
Eventos de Auto Scaling

"Description": "Terminating EC2 instance: i-12345678",


"AutoScalingGroupName": "my-auto-scaling-group",
"ActivityId": "87654321-4321-4321-4321-210987654321",
"Details": {
"Availability Zone": "us-west-2b",
"Subnet ID": "subnet-12345678"
},
"RequestId": "12345678-1234-1234-1234-123456789012",
"StatusMessage": "",
"EndTime": "yyyy-mm-ddThh:mm:ssZ",
"EC2InstanceId": "i-1234567890abcdef0",
"StartTime": "yyyy-mm-ddThh:mm:ssZ",
"Cause": "description-text"
}
}

Terminar instancia EC2 incorrecto


No se pudo finalizar una instancia de Amazon EC2 Auto Scaling.

Datos del evento

El siguiente es un ejemplo de los datos de este evento.

{
"version": "0",
"id": "12345678-1234-1234-1234-123456789012",
"detail-type": "EC2 Instance Terminate Unsuccessful",
"source": "aws.autoscaling",
"account": "123456789012",
"time": "yyyy-mm-ddThh:mm:ssZ",
"region": "us-west-2",
"resources": [
"auto-scaling-group-arn",
"instance-arn"
],
"detail": {
"StatusCode": "Failed",
"AutoScalingGroupName": "my-auto-scaling-group",
"ActivityId": "87654321-4321-4321-4321-210987654321",
"Details": {
"Availability Zone": "us-west-2b",
"Subnet ID": "subnet-12345678"
},
"RequestId": "12345678-1234-1234-1234-123456789012",
"StatusMessage": "message-text",
"EndTime": "yyyy-mm-ddThh:mm:ssZ",
"EC2InstanceId": "i-1234567890abcdef0",
"StartTime": "yyyy-mm-ddThh:mm:ssZ",
"Cause": "description-text"
}
}

Actualización de instancias de EC2 Auto Scaling


Durante la actualización de una instancia, Amazon EC2 Auto Scaling emite eventos cuando el número de
instancias reemplazadas alcanza el umbral porcentual definido para el punto de control.

Datos del evento

El siguiente es un ejemplo de los datos de este evento.

267
Auto Scaling de Amazon EC2 Guía del usuario
UsoAWS LambdaPara controlar eventos

{
"version": "0",
"id": "12345678-1234-1234-1234-123456789012",
"detail-type": "EC2 Auto Scaling Instance Refresh Checkpoint Reached",
"source": "aws.autoscaling",
"account": "123456789012",
"time": "yyyy-mm-ddThh:mm:ssZ",
"region": "us-west-2",
"resources": [
"auto-scaling-group-arn"
],
"detail": {
"InstanceRefreshId": "ab00cf8f-9126-4f3c-8010-dbb8cad6fb86",
"AutoScalingGroupName": "my-auto-scaling-group",
"CheckpointPercentage": "50",
"CheckpointDelay": "300"
}
}

UsoAWS LambdaPara controlar eventos


AWS Lambda es un servicio informático que permite ejecutar código sin aprovisionar ni administrar
servidores. El código se empaqueta y se carga en AWS Lambda como una función de Lambda. AWS
Lambda ejecuta a continuación la función cuando esta se invoca. Una función se puede invocar
manualmente, automáticamente en respuesta a eventos o en respuesta a solicitudes de aplicaciones o
servicios.

Para ayudarle a comenzar a utilizar Lambda, siga el siguiente procedimiento. En esta sección se muestra
cómo crear una función de Lambda y una regla de EventBridge que provoca que todos los eventos de
inicio y finalización de instancias se registren en los Amazon CloudWatch Logs.

Para obtener un tutorial paso a paso que muestra cómo crear una función de Lambda para realizar
acciones de ciclo de vida, consulteTutorial: Configure un enlace de ciclo de vida que invoque una función
Lambda (p. 195). En este tutorial se describe cómo familiarizarse con los enlaces de ciclo de vida. Con los
enlaces del ciclo de vida, puede usar Lambda para realizar tareas en instancias antes de que se pongan
en servicio o antes de que se terminen.

Creación de una función de Lambda


Utilice el siguiente procedimiento para crear una función de Lambda utilizando lahello-worldque actuará
como destino de los eventos.

Para crear una función Lambda, realice el siguiente procedimiento:

1. Abra la consola de AWS Lambda en https://console.aws.amazon.com/lambda.


2. Si es la primera vez que utiliza Lambda, aparecerá una página de bienvenida; elijaIntroducción aEn
caso contrario, elijaCreación de una función Lambda.
3. En la página Select blueprint (Seleccionar proyecto), escriba hello-world para Filter (Filtro) y, a
continuación, seleccione el proyecto hello-world.
4. En la página Configure triggers, elija Next.
5. En la página Configure function, haga lo siguiente:

a. Introduzca un nombre y la descripción de la función Lambda.


b. Edite el código de la función Lambda. Por ejemplo, el siguiente código registra simplemente el
evento.

console.log('Loading function');

268
Auto Scaling de Amazon EC2 Guía del usuario
UsoAWS LambdaPara controlar eventos

exports.handler = function(event, context) {


console.log("AutoScalingEvent()");
console.log("Event data:\n" + JSON.stringify(event, null, 4));
context.succeed("...");
};

c. En Role (Rol), elija Choose an existing role (Elegir un rol existente). En Existing role (Rol
existente), seleccione su rol de ejecución básico. De lo contrario, cree un rol de ejecución básico.
d. (Opcional) En Advanced settings, realice los cambios necesarios.
e. Elija Next (Siguiente).
6. En la página Review, seleccione Create function.

Dirija eventos a su función Lambda


Cree una regla que coincida con eventos seleccionados y los direccione a su función de Lambda para
tomar medidas.

Para crear una regla que enrute eventos a su función Lambda

1. Abra la consola de Amazon EventBridge en https://console.aws.amazon.com/events/.


2. En el panel de navegación, enEventos, elijaReglas.
3. Elija Create rule.
4. Escriba un nombre y una descripción de la regla.
5. En Define pattern (Definir patrón), haga lo siguiente:

a. Seleccione Event Pattern.


b. ParaPatrón de eventos, elijaPredefinido por servicio.
Tip

También puede crear una regla que utilice un patrón de eventos personalizado para
detectar y actuar únicamente sobre un subconjunto de eventos de Auto Scaling
de Amazon EC2. Este subconjunto se puede basar en campos específicos que
Amazon EC2 Auto Scaling incluye en sus eventos. Para obtener más información,
consultePatronesen laGuía del usuario de Amazon EventBridge. Para ver un ejemplo de
patrón de eventos, consultePaso 3: Crear una regla de EventBridge (p. 197)En el tutorial
de enlaces de ciclo de vida.
c. Paraproveedor de servicios, elijaAmazon Web Services.
d. En Service Name, elija Auto Scaling.
e. En Event Type (Tipo de evento), seleccione Instance Launch and Terminate (Lanzamiento y
terminación de la instancia).
f. Para capturar todos los eventos de lanzamiento y terminación de instancia que se hayan realizado
correctamente o que no lo hayan hecho, elija Any instance event (Cualquier evento de instancia).
g. De forma predeterminada, la regla coincide con cualquier grupo de Auto Scaling en la región.
Para que la regla coincida con un grupo de Auto Scaling, elijaNombre de grupo específicoy
seleccione uno o varios grupos de Auto Scaling.
6. En Select event bus (Seleccionar bus de eventos), elija AWS default event bus (Bus de eventos
predeterminado). Cuando un servicio de AWS en su cuenta emite un evento, siempre va al bus de
eventos predeterminado de su cuenta.
7. En Target (Destino), elijaLambda function (Función Lambda).
8. En Function (Función), seleccione la función Lambda que ha creado.
9. Seleccione Create (Crear).

269
Auto Scaling de Amazon EC2 Guía del usuario
Creación de reglas de EventBridge
por ejemplo eventos de actualización

Para probar la regla, cambie el tamaño de su grupo de Auto Scaling. Si ha utilizado el código de ejemplo
para su función de Lambda, se registra el evento en CloudWatch Logs.

Para probar la regla

1. Abra la consola Auto Scaling de Amazon EC2 enhttps://console.aws.amazon.com/ec2autoscaling/.


2. En la páginaDetalles deelija, elija.EditarEn la parte derecha de la página.
3. Cambie el valor deCapacidad deseaday luego elijaActualización.
4. Abra la consola de CloudWatch en https://console.aws.amazon.com/cloudwatch/.
5. En el panel de navegación, seleccione Logs.
6. Seleccione el grupo de registros de la función de Lambda (por ejemplo,/aws/lambda/my-función).
7. Seleccione una secuencia de registro para ver los datos de los eventos. Los datos que se muestran
son similares a los siguientes:

Creación de reglas de EventBridge por ejemplo


eventos de actualización
En esta sección se muestra cómo crear una regla que le notifique cada vez que se alcanza un punto de
control durante una actualización de instancias. Se incluye el procedimiento para configurar notificaciones
por correo electrónico a través de Amazon SNS. Para utilizar Amazon SNS para que envíe notificaciones
por correo electrónico, primero debe crear unTema deY, a continuación, suscribir sus direcciones de correo
electrónico al tema.

Cree un tema sobre Amazon SNS


Un tema de SNS es un punto de acceso lógico, es decir, un canal de comunicación que su grupo de Auto
Scaling utiliza para enviar notificaciones. Los temas se crean especificando un nombre para el tema.

Al crear un nombre de tema, el nombre debe cumplir los siguientes requisitos:

• Deben tener entre 1 y 256 caracteres.


• Deben contener letras ASCII en mayúsculas y minúsculas, números, guiones bajos o guiones.

Para obtener más información, consulteCreación de un tema sobre Amazon SNSen laGuía del
desarrollador de Amazon Simple Notification Service.

Suscríbase al tema de Amazon SNS


Para recibir las notificaciones que su grupo de Auto Scaling envía al tema, debe suscribir un punto de
enlace al tema. En este procedimiento, paraPunto de enlace, especifique la dirección de correo electrónico
donde desea recibir las notificaciones de Amazon EC2 Auto Scaling.

Para obtener más información, consulteSuscribirse a un tema sobre Amazon SNSen laGuía del
desarrollador de Amazon Simple Notification Service.

270
Auto Scaling de Amazon EC2 Guía del usuario
Creación de reglas de EventBridge
por ejemplo eventos de actualización

Confirme su suscripción a Amazon SNS


Amazon SNS envía un correo electrónico de confirmación a la dirección de correo electrónico que ha
especificado en el paso anterior.

Asegúrese de abrir el correo electrónico desdeAWSPara recibir notificaciones y elegir el enlace para
confirmar la suscripción antes de continuar con el siguiente paso.

Recibirá un mensaje de confirmación deAWS. Amazon SNS está ahora configurado para recibir
notificaciones y enviar la notificación como un correo electrónico a la dirección de correo electrónico
especificada.

Enrutar eventos a su tema de Amazon SNS


Cree una regla que coincida con los eventos seleccionados y los enrute al tema de Amazon SNS para
notificar las direcciones de correo electrónico suscritas.

Para crear una regla que enrute los eventos a su tema de Amazon SNS

1. Abra la consola de Amazon EventBridge en https://console.aws.amazon.com/events/.


2. En el panel de navegación, enEventos, elijaReglas.
3. En el navegadorReglaselija, elija.Crear regla.
4. Escriba un nombre y una descripción de la regla.
5. En Define pattern (Definir patrón), haga lo siguiente:

a. Seleccione Event Pattern.


b. ParaPatrón de eventos, elijaPredefinido por servicio.
c. Paraproveedor de servicios, elijaAmazon Web Services.
d. En Service Name, elija Auto Scaling.
e. ParaTipo de evento, elijaActualización de instancias.
f. De forma predeterminada, la regla coincide con cualquier grupo de Auto Scaling en la región.
Para que la regla coincida con un grupo de Auto Scaling, elijaNombre de grupo específicoy
seleccione uno o varios grupos de Auto Scaling.
6. En Select event bus (Seleccionar bus de eventos), elija AWS default event bus (Bus de eventos
predeterminado). Cuando un servicio de AWS en su cuenta emite un evento, siempre va al bus de
eventos predeterminado de su cuenta.
7. En Target (Destino), elija SNS topic (Tema de SNS).
8. ParaTema, seleccione el tema de Amazon SNS que ha creado.
9. ParaConfiguración de la entrada, elija la entrada para la notificación por correo electrónico.
10. Seleccione Create (Crear).

271
Auto Scaling de Amazon EC2 Guía del usuario
Protección de los datos

Seguridad en Amazon EC2 Auto


Scaling
La seguridad en la nube de AWS es la mayor prioridad. Como cliente de AWS, se beneficiará de una
arquitectura de red y un centro de datos diseñados para satisfacer los requisitos de seguridad de las
organizaciones más exigentes.

La seguridad es una responsabilidad compartida entre AWS y usted. El modelo de responsabilidad


compartida la describe como seguridad de la nube y seguridad en la nube:

• Seguridad de la nube–AWSes responsable de proteger la infraestructura que ejecutaAWSen elAWSEn


la nube.AWSTambién le proporciona servicios que puede utilizar de forma segura. Auditores externos
prueban y verifican periódicamente la eficacia de nuestra seguridad como parte de los Programas de
conformidad deAWS. Para obtener más información acerca de los programas de conformidad que se
aplican a Amazon EC2 Auto Scaling, consulteAWSen el ámbito del programa de conformidad.
• Seguridad en la nube— Su responsabilidad está determinada por elAWSque utilice. También es
responsable de otros factores, incluida la confidencialidad de los datos, los requisitos de la empresa y la
legislación y los reglamentos aplicables.

Esta documentación le ayuda a comprender cómo puede aplicar el modelo de responsabilidad compartida
cuando se utiliza Amazon EC2 Auto Scaling. En los siguientes temas, se le mostrará cómo configurar
Amazon EC2 Auto Scaling para satisfacer sus objetivos de seguridad y conformidad. También puede
aprender a utilizar otrosAWSque le ayudan a monitorear y proteger los recursos de Auto Scaling de
Amazon EC2.

Temas
• Auto Scaling de Amazon EC2 y protección de datos (p. 272)
• Auto Scaling de Amazon EC2 (p. 273)
• Validación de conformidad de Amazon EC2 Auto Scaling (p. 305)
• Resiliencia en Auto Scaling de Amazon EC2 (p. 306)
• Seguridad de la infraestructura en Amazon EC2 Auto Scaling (p. 306)
• Puntos de conexión de la VPC de tipo interfaz y escala de Amazon EC2 (p. 307)

Auto Scaling de Amazon EC2 y protección de datos


LaAWS Modelo de responsabilidad compartidaSe aplica a la protección de datos en Amazon EC2 Auto
Scaling. Como se describe en este modelo, AWS es responsable de proteger la infraestructura global que
ejecuta toda la Nube de AWS . Usted es responsable de mantener el control sobre el contenido alojado en
esta infraestructura. Este contenido incluye la configuración de seguridad y las tareas de administración
de los servicios de AWS que utiliza usted. Para obtener más información acerca de la privacidad de los
datos, consulte las Preguntas frecuentes sobre la privacidad de datos. Para obtener información acerca de
la protección de datos en Europa, consulte la publicación de blog The AWS Shared Responsability Model
and GDPR en el Blog de seguridad de AWS.

Para fines de protección de datos, recomendamos proteger Cuenta de AWS y configurar cuentas de
usuario individuales conAWS Identity and Access Management(IAM). De esta manera, solo se otorgan
a cada usuario los permisos necesarios para cumplir con sus obligaciones laborales. También le
recomendamos proteger sus datos de las siguientes formas:

272
Auto Scaling de Amazon EC2 Guía del usuario
Uso deAWS KMS keysPara cifrar
volúmenes de Amazon EBS

• Utilice Multi-Factor Authentication (MFA) con cada cuenta.


• Utilice SSL/TLS para comunicarse con los recursos de AWS. Le recomendamos TLS 1.2 o una versión
posterior.
• Configure la API y el registro de actividad de los usuarios con AWS CloudTrail.
• Utilice las soluciones de cifrado de AWS, junto con todos los controles de seguridad predeterminados de
los servicios de AWS.
• Utilice avanzados servicios de seguridad administrados, como Amazon Macie, que le ayuden a detectar
y proteger los datos personales almacenados en Amazon S3.
• Si necesita módulos criptográficos validados FIPS 140-2 al acceder a AWS a través de una interfaz de
línea de comandos o una API, utilice un punto de enlace de FIPS. Para obtener más información acerca
de los puntos de enlace de FIPS disponibles, consulte Estándar de procesamiento de la información
federal (FIPS) 140-2.

Le recomendamos encarecidamente que nunca introduzca información de identificación confidencial,


como, por ejemplo, direcciones de email de sus clientes, en etiquetas o en los campos de formato
libre, como el campo Name (Nombre). Esto incluye cuando se trabaja con Amazon EC2 Auto Scaling u
otrosAWSutilizando la consola, API,AWS CLI, o bienAWSSDK de SDK. Los datos que ingresa en etiquetas
o campos de formato libre utilizados para los nombres se pueden utilizar para los registros de facturación
o diagnóstico. Si proporciona una URL a un servidor externo, le recomendamos encarecidamente que no
incluya información de credenciales en la URL para validar la solicitud para ese servidor.

Uso deAWS KMS keysPara cifrar volúmenes de


Amazon EBS
Puede configurar su grupo Auto Scaling para cifrar los datos de volumen de Amazon EBS almacenados en
la nube conAWS KMS keys. Compatibilidad con Amazon EC2 Auto ScalingAWSgestionados y gestionados
por el cliente para cifrar sus datos. Tenga en cuenta que la opción KmsKeyId de especificar una CMK
administrada por el cliente no está disponible cuando se utiliza una configuración de lanzamiento. Para
especificar el CMK administrado por el cliente, utilice una plantilla de inicio en su lugar. Para obtener más
información, consulte Creación de una plantilla de lanzamiento para un grupo de Auto Scaling (p. 28).

También puede configurar un CMK administrado por el cliente en su AMI respaldada por EBS antes
de configurar una plantilla de lanzamiento o configuración de lanzamiento, o utilizar el cifrado de forma
predeterminada para aplicar el cifrado de los nuevos volúmenes de EBS y copias de instantáneas que
cree.

Para obtener información acerca de cómo configurar la directiva de clave que necesita para iniciar
instancias de Auto Scaling cuando utiliza un CMK administrado por el cliente para el cifrado,
consultePolítica de claves CMK necesarias para su uso con volúmenes cifrados (p. 301). Para obtener
información acerca de cómo crear, almacenar y administrar suAWS KMSclaves de cifrado, consulte¿Qué
es ?AWS¿Key Management Service?

Temas relacionados

• Proteger los datos en Amazon EC2en laGuía del usuario de Amazon EC2 para instancias de Linux
• Usar el cifrado con las AMI con respaldo de EBSen laGuía del usuario de Amazon EC2 para instancias
de Linux
• Cifrado de forma predeterminadaen laGuía del usuario de Amazon EC2 para instancias de Linux

Auto Scaling de Amazon EC2

273
Auto Scaling de Amazon EC2 Guía del usuario
Control de acceso

AWS Identity and Access Management (IAM) es un servicio de AWS que ayuda al administrador a
controlar de forma segura el acceso a los recursos de AWS. Los administradores de IAM controlan quién
puedeautenticado(iniciado sesión) yAutorizado(tienen permisos) para utilizar recursos de Amazon EC2
Auto Scaling. IAM es un servicio de AWS que puede utilizar sin cargo adicional.

Para poder utilizar Amazon EC2 Auto Scaling, necesita Cuenta de AWS y credenciales de. Para
aumentar la seguridad de su cuenta de, le recomendamos que utilice unUsuario de IAMpara proporcionar
credenciales de acceso en lugar de usar su Cuenta de AWS Credenciales de . Para obtener más
información, consulte Cuenta de AWS credenciales de usuario raíz y credenciales de usuario de IAMen
laAWSReferencia general deyPrácticas recomendadas de IAMen laIAM User Guide.

Para obtener información general acerca de los usuarios de IAM y por qué son importantes para la
seguridad de su cuenta, consulteAWSCredenciales de seguridad deen laAWSReferencia general de.

Para obtener más información acerca de cómo trabajar con IAM, consulte laIAM User Guide.

Control de acceso
Aunque disponga de credenciales válidas para autenticar las solicitudes, si no tiene permisos, no podrá
crear recursos de Auto Scaling ni obtener acceso a ellos. Por ejemplo, debe disponer de permisos para
crear grupos de Auto Scaling, crear configuraciones de lanzamiento, etc.

En las secciones siguientes se incluyen detalles sobre cómo un administrador de IAM puede utilizar IAM
para ayudar a proteger sus recursos de Auto Scaling de Amazon EC2 controlando quién puede realizar
acciones de Auto Scaling de Amazon EC2.

Le recomendamos que lea primero los temas de Amazon EC2. ConsulteIdentity and Access Management
para Amazon EC2en laGuía del usuario de Amazon EC2 para instancias de Linux. Después de leer los
temas de esta sección, debe tener una buena idea de qué permisos de control de acceso ofrece Amazon
EC2 y cómo pueden encajar con los permisos de recursos de Auto Scaling de Amazon EC2.

Temas
• Cómo funciona Amazon EC2 Auto Scaling (p. 274)
• AWSPolíticas administradas para Amazon EC2 Auto Scaling (p. 279)
• Funciones vinculadas a servicios para Amazon EC2 Auto Scaling (p. 281)
• Ejemplos de políticas de Amazon EC2 Auto Scaling (p. 286)
• Soporte para plantillas de lanzamiento de (p. 295)
• Función de IAM para aplicaciones que se ejecutan en instancias Amazon EC2 (p. 300)
• Política de claves CMK necesarias para su uso con volúmenes cifrados (p. 301)

Cómo funciona Amazon EC2 Auto Scaling


Antes de utilizar IAM para administrar el acceso a Amazon EC2 Auto Scaling, debe conocer qué
características de IAM están disponibles para su uso con Amazon EC2 Auto Scaling. Para obtener una
perspectiva general de cómo funciona Amazon EC2 Auto Scaling y otros Amazon Web Services con IAM,
consulteAmazon Web Services que funcionan con IAMen laIAM User Guide.
Note

Se requieren permisos específicos de IAM y un rol vinculado a servicio de Amazon EC2 Auto
Scaling para que los usuarios puedan configurar grupos de Auto Scaling.

Contenido
• Políticas basadas en identidades de Amazon EC2 Auto Scaling (p. 275)

274
Auto Scaling de Amazon EC2 Guía del usuario
Cómo funciona Amazon EC2 Auto Scaling

• Actions (p. 275)


• Resources (p. 276)
• Claves de condición (p. 277)
• Políticas basadas en recursos de Amazon EC2 Auto Scaling (p. 278)
• Listas de control de acceso (ACL) (p. 278)
• Autorización basada en etiquetas de Amazon EC2 Auto Scaling (p. 278)
• Roles de Auto Scaling Amazon EC2 (p. 278)
• Usar credenciales temporales con Amazon EC2 Auto Scaling (p. 279)
• Roles vinculados a servicios (p. 279)
• Roles de servicio (p. 279)
• Selección de un rol de IAM en Amazon EC2 Auto Scaling (p. 279)
• Más información sobre las políticas de permisos de IAM (p. 279)

Políticas basadas en identidades de Amazon EC2 Auto Scaling


Con las políticas basadas en identidades de IAM, puede especificar las acciones permitidas o denegadas,
así como los recursos y las condiciones en las que se permiten o deniegan las acciones. Amazon EC2
Auto Scaling admite acciones, claves de condiciones y recursos específicos. Para obtener más información
acerca de los elementos que utiliza en una política de JSON, consulte Referencia de los elementos de las
políticas de JSON de IAM en la Guía del usuario de IAM.

Actions
Los administradores pueden utilizar las políticas JSON de AWS para especificar quién tiene acceso a qué.
Es decir, qué entidad principal puede realizar acciones en qué recursos y bajo qué condiciones.

El elemento Action de una política JSON describe las acciones que puede utilizar para permitir o denegar
el acceso en una política. Las acciones de la política generalmente tienen el mismo nombre que la
operación de API de AWS asociada. Hay algunas excepciones, como acciones de solo permiso que no
tienen una operación de API coincidente. También hay algunas operaciones que requieren varias acciones
en una política. Estas acciones adicionales se denominan acciones dependientes.

Incluya acciones en una política para conceder permisos para realizar la operación asociada.

Las acciones de políticas de Amazon EC2 Auto Scaling utilizan el siguiente prefijo antes de la acción:
autoscaling:. Las instrucciones de política deben incluirActionorNotActionElemento de. Amazon
EC2 Auto Scaling define su propio conjunto de acciones que describen las tareas que se pueden realizar
con este servicio.

Para especificar varias acciones en una única instrucción, sepárelas con comas como se muestra en el
siguiente ejemplo.

"Action": [
"autoscaling:CreateAutoScalingGroup",
"autoscaling:UpdateAutoScalingGroup"

Puede utilizar caracteres comodín para especificar varias acciones (*). Por ejemplo, para especificar todas
las acciones que comiencen con la palabra Describe, incluya la siguiente acción.

"Action": "autoscaling:Describe*"

Para ver la lista de las acciones de Amazon EC2 Auto Scaling, consulteActionsen laReferencia a la API de
Auto Scaling de Amazon EC2.

275
Auto Scaling de Amazon EC2 Guía del usuario
Cómo funciona Amazon EC2 Auto Scaling

Resources
Los administradores pueden utilizar las políticas JSON de AWS para especificar quién tiene acceso a qué.
Es decir, qué entidad principal puede realizar acciones en qué recursos y bajo qué condiciones.

El elemento Resource de la política JSON especifica el objeto u objetos a los que se aplica la acción.
Las instrucciones deben contener un elemento Resource o NotResource. Como práctica recomendada,
especifique un recurso utilizando el Nombre de recurso de Amazon (ARN). Puede hacerlo para acciones
que admitan un tipo de recurso específico, conocido como permisos de nivel de recurso.

Para las acciones que no admiten permisos de nivel de recurso, como las operaciones de descripción,
utilice un carácter comodín (*) para indicar que la instrucción se aplica a todos los recursos.

"Resource": "*"

Puede restringir el acceso a grupos de Auto Scaling específicos y configuraciones de lanzamiento


utilizando sus ARN para identificar el recurso al que se aplica la política de IAM. Para obtener más
información acerca del formato de los ARN, consulteNombres de recursos de Amazon (ARN)en
laAWSReferencia general de.

Un grupo de Auto Scaling tiene el siguiente ARN.

"Resource":
"arn:aws:autoscaling:region:123456789012:autoScalingGroup:uuid:autoScalingGroupName/asg-
name"

Una configuración de lanzamiento tiene el siguiente ARN.

"Resource":
"arn:aws:autoscaling:region:123456789012:launchConfiguration:uuid:launchConfigurationName/
lc-name"

Para especificar un grupo de Auto Scaling con laCreateAutoScalingGroup, debe reemplazar el UID
por*Como se muestra en el siguiente.

"Resource":
"arn:aws:autoscaling:region:123456789012:autoScalingGroup:*:autoScalingGroupName/asg-name"

Para especificar una configuración de lanzamiento con la acción CreateLaunchConfiguration, debe


sustituir el UUID por * como se indica a continuación.

"Resource":
"arn:aws:autoscaling:region:123456789012:launchConfiguration:*:launchConfigurationName/lc-
name"

No todas las acciones de Amazon EC2 Auto Scaling admiten permisos de nivel de recurso. Para las
acciones que no admiten permisos de nivel de recursos, debe utilizar "*" como recurso.

Las siguientes acciones de Amazon EC2 Auto Scaling no admiten permisos de nivel de recurso.

• DescribeAccountLimits
• DescribeAdjustmentTypes
• DescribeAutoScalingGroups
• DescribeAutoScalingInstances
• DescribeAutoScalingNotificationTypes

276
Auto Scaling de Amazon EC2 Guía del usuario
Cómo funciona Amazon EC2 Auto Scaling

• DescribeInstanceRefreshes
• DescribeLaunchConfigurations
• DescribeLifecycleHooks
• DescribeLifecycleHookTypes
• DescribeLoadBalancers
• DescribeLoadBalancerTargetGroups
• DescribeMetricCollectionTypes
• DescribeNotificationConfigurations
• DescribePolicies
• DescribeScalingActivities
• DescribeScalingProcessTypes
• DescribeScheduledActions
• DescribeTags
• DescribeTerminationPolicyTypes

Para obtener información acerca de con qué acciones puede especificar los ARN de cada recurso,
consulteClaves de condición, recursos y acciones de Amazon EC2 Auto Scalingen laIAM User Guide.

Claves de condición
Los administradores pueden utilizar las políticas JSON de AWS para especificar quién tiene acceso a qué.
Es decir, qué entidad principal puede realizar acciones en qué recursos y bajo qué condiciones.

El elemento Condition (o bloque de Condition) permite especificar condiciones en las que entra
en vigor una instrucción. El elemento Condition es opcional. Puede crear expresiones condicionales
que utilicen operadores de condición, tales como igual o menor que, para que la condición de la política
coincida con los valores de la solicitud.

Si especifica varios elementos de Condition en una instrucción o varias claves en un único elemento de
Condition, AWS las evalúa mediante una operación AND lógica. Si especifica varios valores para una
única clave de condición, AWS evalúa la condición con una operación lógica OR. Se deben cumplir todas
las condiciones antes de que se concedan los permisos de la instrucción.

También puede utilizar variables de marcador de posición al especificar condiciones. Por ejemplo, puede
conceder un permiso de usuario de IAM para acceder a un recurso solo si está etiquetado con su nombre
de usuario de IAM. Para obtener más información, consulte Elementos de la política de IAM: variables y
etiquetas en la Guía del usuario de IAM.

AWS admite claves de condición globales y claves de condición específicas del servicio. Para ver todas las
claves de condición globales de AWS, consulte Claves de contexto de condición globales de AWS en la
Guía del usuario de IAM.

Amazon EC2 Auto Scaling define su propio conjunto de claves de condición y también admite el uso de
algunas claves de condición globales. Para ver todas las claves de condición globales de AWS, consulte
Claves de contexto de condición globales de AWS en la Guía del usuario de IAM.

Las siguientes claves de condición son específicas de Amazon EC2 Auto Scaling:

• autoscaling:ImageId
• autoscaling:InstanceType
• autoscaling:InstanceTypes
• autoscaling:LaunchConfigurationName
• autoscaling:LaunchTemplateVersionSpecified

277
Auto Scaling de Amazon EC2 Guía del usuario
Cómo funciona Amazon EC2 Auto Scaling

• autoscaling:LoadBalancerNames
• autoscaling:MaxSize
• autoscaling:MetadataHttpEndpoint
• autoscaling:MetadataHttpPutResponseHopLimit
• autoscaling:MetadataHttpTokens
• autoscaling:MinSize
• autoscaling:ResourceTag/key
• autoscaling:SpotPrice
• autoscaling:TargetGroupARNs
• autoscaling:VPCZoneIdentifiers

Para obtener más información acerca de las acciones y los recursos con los que puede utilizar una clave
de condición, consulteClaves de condición, recursos y acciones de Amazon EC2 Auto Scalingen laIAM
User Guide.

Políticas basadas en recursos de Amazon EC2 Auto Scaling


Otros Amazon Web Services, como Amazon Simple Storage Service, admiten políticas de permisos
basadas en recursos. Por ejemplo, puede asociar una política de permisos a un bucket de S3 para
administrar los permisos de acceso a dicho bucket.

Amazon EC2 Auto Scaling no admite políticas basadas en recursos.

Listas de control de acceso (ACL)


Amazon EC2 Auto Scaling no admite las listas de control de acceso (ACL).

Autorización basada en etiquetas de Amazon EC2 Auto Scaling


Puede aplicar permisos de nivel de recursos basados en etiquetas en las políticas basadas en identidades
que cree para Amazon EC2 Auto Scaling. Esto le ofrece un mejor control sobre los recursos que un
usuario puede crear, modificar, utilizar o eliminar.

Para utilizar etiquetas con políticas de IAM, debe proporcionar información de etiquetas en laElemento de
condiciónde una política mediante las siguientes claves de condición:

• Usarautoscaling:ResourceTag/tag-key: tag-valuePara permitir o denegar acciones de los


usuarios en grupos de Auto Scaling con etiquetas específicas.
• Utilice aws:RequestTag/tag-key: tag-value para exigir que una etiqueta específica esté presente
o no en una solicitud.
• Utilice aws:TagKeys [tag-key, ...] para exigir que las claves de etiqueta específicas estén
presentes o no en una solicitud.

Para ver ejemplos de políticas basadas en identidades basadas en etiquetas, consulteEjemplos de


políticas de Amazon EC2 Auto Scaling (p. 286).

Para consultar una política de ejemplo que controla quién puede eliminar las políticas de escalado basadas
en las etiquetas del grupo de Auto Scaling, consulteControlar qué políticas de escalado se pueden
eliminar (p. 290).

Roles de Auto Scaling Amazon EC2


Un registroRol de IAMes una entidad dentro de su Cuenta de AWS que tiene permisos específicos.

278
Auto Scaling de Amazon EC2 Guía del usuario
AWSPolíticas administradas por

Usar credenciales temporales con Amazon EC2 Auto Scaling


Puede utilizar credenciales temporales para iniciar sesión con federación, asumir un rol de IAM o asumir un
rol de acceso entre cuentas. Las credenciales de seguridad temporales se obtienen mediante una llamada
a operaciones de la API de AWS STS , como AssumeRole o GetFederationToken.

Amazon EC2 Auto Scaling admite el uso de credenciales temporales.

Roles vinculados a servicios


Los roles vinculados a servicios permiten que Amazon Web Services acceda a los recursos de otros
servicios para completar una acción en su nombre. Los roles vinculados a servicios aparecen en la cuenta
de IAM y son propiedad del servicio. Un administrador de IAM puede ver, pero no editar, los permisos de
los roles vinculados a servicios.

Amazon EC2 Auto Scaling admite roles vinculados a servicios. Para obtener más información acerca de
cómo crear o administrar roles vinculados a servicios de Amazon EC2 Auto Scaling, consulteFunciones
vinculadas a servicios para Amazon EC2 Auto Scaling (p. 281).

Roles de servicio
Esta característica permite que un servicio asuma un rol de servicio en su nombre. Este rol permite que
el servicio obtenga acceso a los recursos de otros servicios para completar una acción en su nombre. Un
administrador de IAM puede cambiar los permisos de este rol. Sin embargo, hacerlo podría deteriorar la
funcionalidad del servicio.

Amazon EC2 Auto Scaling admite roles de servicio para notificaciones de enlace de ciclo de vida. Para
obtener más información, consulte Enganches de ciclo de vida de Amazon EC2 Auto Scaling (p. 184).

Selección de un rol de IAM en Amazon EC2 Auto Scaling


Si ha creado previamente un rol de IAM que pueden adoptar sus aplicaciones que se ejecutan en Amazon
EC2, puede elegir este rol cuando cree una plantilla de lanzamiento o una configuración de lanzamiento.
Amazon EC2 Auto Scaling le proporciona una lista de funciones para elegir. Al crear estos roles, es
importante asociar políticas de IAM con privilegios mínimos que restringen el acceso a las llamadas a la
API específicas que requiere la aplicación. Para obtener más información, consulte Función de IAM para
aplicaciones que se ejecutan en instancias Amazon EC2 (p. 300).

Más información sobre las políticas de permisos de IAM


Utilice los siguientes temas para obtener más información sobre la creación de políticas de permisos de
IAM para controlar quién puede o no utilizar acciones de la API específicas.

• Auto Scaling de Amazon EC2


• Claves de condición, recursos y acciones de Amazon EC2 Auto Scalingen laIAM User Guide
• Ejemplos de políticas de Amazon EC2 Auto Scaling (p. 286)
• Plantillas de lanzamiento de Amazon EC2
• Acciones, recursos y claves de condición de Amazon EC2en laIAM User Guide
• Soporte para plantillas de lanzamiento de (p. 295)

AWSPolíticas administradas para Amazon EC2 Auto


Scaling
Para agregar permisos a usuarios, grupos y roles, es más fácil utilizar las políticas administradas por AWS
que escribirlas uno mismo. Se necesita tiempo y experiencia para crear políticas de IAM administradas

279
Auto Scaling de Amazon EC2 Guía del usuario
AWSPolíticas administradas por

por el cliente que proporcionen a su equipo solo los permisos necesarios. Para comenzar a hacerlo con
rapidez, puede utilizar nuestras políticas administradas por AWS. Estas políticas cubren casos de uso
comunes y están disponibles en su Cuenta de AWS . Para obtener más información acerca de las políticas
administradas por AWS, consulte Políticas administradas por AWS en la Guía del usuario de IAM.

Los servicios de AWS mantienen y actualizan las políticas administradas de AWS. No puede cambiar los
permisos de las políticas administradas de AWS. En ocasiones, los servicios agregan permisos a una
política administrada de AWS para admitir características nuevas. Este tipo de actualización afecta a todas
las identidades (usuarios, grupos y roles) donde se asocia la política. Es más probable que los servicios
actualicen una política administrada de AWS cuando se lanza una característica nueva o cuando estén
disponibles operaciones nuevas. Los servicios no eliminan permisos de una política administrada de AWS,
por lo que las actualizaciones de políticas no romperán los permisos existentes.

Además, AWS admite políticas administradas para funciones de trabajo que abarcan varios servicios. Por
ejemplo, la política administrada por AWS ReadOnlyAccess proporciona acceso de solo lectura a todos
los servicios y los recursos de AWS. Cuando un servicio inicia una nueva característica, AWS agrega
permisos de solo lectura para operaciones y recursos nuevos. Para obtener una lista y descripciones de
las políticas de funciones de trabajo, consulte Políticas administradas por AWS para funciones de trabajo
en la Guía del usuario de IAM.

Políticas administradas por Amazon EC2 Auto Scaling


Puede adjuntar las siguientes políticas administradas aAWS Identity and Access Management(IAM). Cada
política proporciona acceso a todas o algunas de las acciones de la API de Amazon EC2 Auto Scaling.

• AutoScalingFullAccessOtorga acceso completo a Amazon EC2 Auto Scaling para los usuarios que
necesitan acceso completo de Amazon EC2 Auto Scaling desde laAWS CLIo SDK, pero noAWS
Management ConsoleObtener acceso a.
• AutoescalaciónReadOnlyAccess— Otorga acceso de sólo lectura a Amazon EC2 Auto Scaling para los
usuarios que solo realizan llamadas alAWS CLIo SDK de.
• AutoScalingConsoleFullAccess— Otorga acceso completo a Amazon EC2 Auto Scaling mediante laAWS
Management Console. Esta directiva funciona cuando se utilizan configuraciones de inicio, pero no
cuando se utilizan plantillas de inicio.
• AutoescalingConsoleReadOnlyAccessConcede acceso de solo lectura a Amazon EC2 Auto Scaling
mediante laAWS Management Console. Esta directiva funciona cuando se utilizan configuraciones de
inicio, pero no cuando se utilizan plantillas de inicio.

Cuando se utiliza plantillas de lanzamiento desde la consola, debe conceder permisos adicionales
específicos a las plantillas de lanzamiento, tal y como se explica enSoporte para plantillas de lanzamiento
de (p. 295). La consola de Amazon EC2 Auto Scaling necesita permisosec2para que pueda mostrar
información sobre las plantillas de inicio y las instancias de inicio mediante plantillas de inicio.

AutoScalingServiceRolePolicyAWSpolítica administrada
No se puede adjuntar.AutoScalingServiceRolePolicya sus entidades de IAM. Esta política se adjunta a
una función vinculada a servicios que permite que Amazon EC2 Auto Scaling inicie y termine instancias.
Para obtener más información, consulte Funciones vinculadas a servicios para Amazon EC2 Auto
Scaling (p. 281).

Actualiza Amazon EC2 Auto Scaling deAWSPolíticas


administradas de
Muestra los detalles de las actualizaciones deAWSLas políticas administradas por para Amazon EC2 Auto
Scaling debido a que este servicio comenzó a realizar el seguimiento de estos cambios. Para obtener
alertas automáticas sobre cambios en esta página, suscríbase a la fuente RSS en la página de historial de
documentos de Auto Scaling de Amazon EC2.

280
Auto Scaling de Amazon EC2 Guía del usuario
Roles vinculados a servicios

Cambio Descripción Fecha

Amazon EC2 Auto Scaling añade Para admitir el 19 de mayo de 2021


permisos a su función vinculada escalado predictivo,
a servicios elAutoScalingServiceRolePolicyahora
incluye permiso para llamar al
métodocloudwatch:GetMetricDataAcción
de la API. Para obtener
más información, consulte
Funciones vinculadas a servicios
para Amazon EC2 Auto
Scaling (p. 281).

Amazon EC2 Auto Scaling Amazon EC2 Auto Scaling 19 de mayo de 2021
comenzó a realizar el comenzó a realizar
seguimiento de los cambios el seguimiento de los
cambiosAWSPolíticas
administradas de.

Funciones vinculadas a servicios para Amazon EC2


Auto Scaling
Amazon EC2 Auto Scaling utiliza roles vinculados a servicios para los permisos que necesita para llamar
a otros Amazon Web Services en su nombre. Un rol vinculado a un servicio es un tipo único de rol de IAM
que está vinculado directamente a un servicio de AWS.

Los roles vinculados a servicios ofrecen una manera segura de delegar permisos a Amazon Web Services,
ya que solo los servicios vinculados pueden asumir roles vinculados a servicios. Para obtener más
información, consulte Usar roles vinculados a servicios en la Guía del usuario de IAM. Los roles vinculados
a servicios también permiten que todas las llamadas a la API puedan verse a través de AWS CloudTrail.
Esto ayuda a monitorizar y auditar los requisitos, ya que se puede hacer un seguimiento de todas las
acciones que realiza Amazon EC2 Auto Scaling en su nombre. Para obtener más información, consulte
Registro de llamadas a la API de Auto Scaling de Amazon EC2AWS CloudTrail (p. 257).

En las secciones siguientes, se describe cómo se crean y administran roles vinculados a servicio de
Amazon EC2 Auto Scaling. Comience configurando permisos para permitir a una entidad de IAM (como
un usuario, un grupo o un rol) crear, editar o eliminar la descripción de una función vinculada a un servicio.
Para obtener más información, consulte Usar roles vinculados a servicios en la Guía del usuario de IAM.

Contenido
• Overview (p. 281)
• Permisos concedidos por el rol vinculado a servicios (p. 282)
• Crear un rol vinculado a un servicio (automático) (p. 284)
• Crear un rol vinculado a un servicio (manual) (p. 284)
• Editar el rol vinculado a servicios (p. 285)
• Eliminar el rol vinculado a un servicio (p. 285)
• Regiones admitidas para roles vinculados a servicios de Amazon EC2 Auto Scaling (p. 286)

Overview
Hay dos tipos de roles vinculados a servicios de Amazon EC2 Auto Scaling:

281
Auto Scaling de Amazon EC2 Guía del usuario
Roles vinculados a servicios

• El rol vinculado a servicios predeterminado de la cuenta, denominado AWSServiceRoleForAutoScaling.


Este rol se asigna automáticamente a los grupos de Auto Scaling, a menos que se haya especificado
otro rol vinculado a servicio.
• Un rol vinculado al servicio con un sufijo personalizado que se especifica al crear el rol, por ejemplo,
AWSServiceRoleForAutoScaling_mysuffix.

Los permisos de un rol vinculado a servicios con un sufijo personalizado son idénticos a los del rol
vinculado a servicios predeterminado. En ninguno de los dos casos podrá editar los roles. Tampoco podrá
eliminarlos si hay un grupo de Auto Scaling que los está usando. La única diferencia es el sufijo del nombre
del rol.

Puede especificar o rol cuando editeAWS Key Management ServicePara permitir que las instancias
iniciadas por Amazon EC2 Auto Scaling se cifren con la CMK administrada por el cliente. Sin embargo,
si tiene previsto proporcionar acceso pormenorizado a una determinada CMK administrada por el cliente,
debe utilizar un rol vinculado a servicios con un sufijo personalizado. El uso de un rol vinculado a servicios
con un sufijo personalizado le ofrece:

• Mayor control sobre la CMK.


• La capacidad de comprobar en los registros de CloudTrail de qué grupo de Auto Scaling realizó una
llamada a la API.

Si crea las CMK administradas por el cliente de forma que no todos los usuarios tangan acceso a ella, siga
estos pasos para permitir el uso de un rol vinculado a servicios con un sufijo personalizado:

1. Cree un rol vinculado a servicios con un sufijo personalizado. Para obtener más información, consulte
Crear un rol vinculado a un servicio (manual) (p. 284).
2. Proporcione al rol vinculado a servicios acceso a una CMK administrada por el cliente. Para obtener
más información acerca de la política de claves que permite que un rol vinculado a servicios utilice la
CMK, consulte Política de claves CMK necesarias para su uso con volúmenes cifrados (p. 301).
3. Dé acceso a los usuarios o roles de IAM al rol vinculado al servicio que creó. Para obtener más
información acerca de la creación de la política de IAM, consulteControlar el rol vinculado a servicios
que se puede pasar (usando PassRole) (p. 294). Si los usuarios intentan especificar un rol vinculado a
servicios sin permiso para transferir ese rol al servicio, recibirán un error.

Permisos concedidos por el rol vinculado a servicios


Auto Scaling de Amazon EC2 EC2 EC2AWSServiceRoleForAutoScalingEl rol vinculado a servicios o el rol
vinculado a servicios con un sufijo personalizado para llamar aAWSAPIs en su nombre:

La política de permisos del rol permite que Amazon EC2 Auto Scaling realice las siguientes acciones en los
recursos.

{
"Version":"2012-10-17",
"Statement":[
{
"Sid":"EC2InstanceManagement",
"Effect":"Allow",
"Action":[
"ec2:AttachClassicLinkVpc",
"ec2:CancelSpotInstanceRequests",
"ec2:CreateFleet",
"ec2:CreateTags",
"ec2:DeleteTags",
"ec2:Describe*",
"ec2:DetachClassicLinkVpc",

282
Auto Scaling de Amazon EC2 Guía del usuario
Roles vinculados a servicios

"ec2:ModifyInstanceAttribute",
"ec2:RequestSpotInstances",
"ec2:RunInstances",
"ec2:StartInstances",
"ec2:StopInstances",
"ec2:TerminateInstances"
],
"Resource":"*"
},
{
"Sid":"EC2InstanceProfileManagement",
"Effect":"Allow",
"Action":[
"iam:PassRole"
],
"Resource":"*",
"Condition":{
"StringLike":{
"iam:PassedToService":"ec2.amazonaws.com*"
}
}
},
{
"Sid":"EC2SpotManagement",
"Effect":"Allow",
"Action":[
"iam:CreateServiceLinkedRole"
],
"Resource":"*",
"Condition":{
"StringEquals":{
"iam:AWSServiceName":"spot.amazonaws.com"
}
}
},
{
"Sid":"ELBManagement",
"Effect":"Allow",
"Action":[
"elasticloadbalancing:Register*",
"elasticloadbalancing:Deregister*",
"elasticloadbalancing:Describe*"
],
"Resource":"*"
},
{
"Sid":"CWManagement",
"Effect":"Allow",
"Action":[
"cloudwatch:DeleteAlarms",
"cloudwatch:DescribeAlarms",
"cloudwatch:GetMetricData",
"cloudwatch:PutMetricAlarm"
],
"Resource":"*"
},
{
"Sid":"SNSManagement",
"Effect":"Allow",
"Action":[
"sns:Publish"
],
"Resource":"*"
},
{
"Sid":"EventBridgeRuleManagement",

283
Auto Scaling de Amazon EC2 Guía del usuario
Roles vinculados a servicios

"Effect":"Allow",
"Action":[
"events:PutRule",
"events:PutTargets",
"events:RemoveTargets",
"events:DeleteRule",
"events:DescribeRule"
],
"Resource":"*",
"Condition":{
"StringEquals":{
"events:ManagedBy":"autoscaling.amazonaws.com"
}
}
}
]
}

El rol confía en el servicio autoscaling.amazonaws.com para poder adoptarlo.

Crear un rol vinculado a un servicio (automático)


Auto Scaling de Amazon EC2 crea el valor deAWSServiceRoleForAutoScalingPara usted, la primera vez
que usted crea un grupo de Auto Scaling, a menos que cree manualmente un rol vinculado al servicio con
un sufijo personalizado y lo especifique al crear el grupo de.
Important

Debe disponer de permisos de IAM para crear el rol vinculado al servicio. De lo contrario, la
creación automática no se lleva a cabo. Para obtener más información, consultePermisos de roles
vinculados a serviciosen laIAM User GuideyPermisos necesarios para crear un rol vinculado a un
servicio (p. 293)en esta guía.

Amazon EC2 Auto Scaling comenzó a admitir roles vinculados a servicios en marzo de 2018. Si antes creó
un grupo de Auto Scaling, Amazon EC2 Auto Scaling creó elAWSServiceRoleForAutoScalingen la cuenta
de. Para obtener más información, consulteUn nuevo rol ha aparecido en mi Cuenta de AWS en laIAM
User Guide.

Crear un rol vinculado a un servicio (manual)


Para crear un rol vinculado a un servicio (consola)

1. Abra la consola de IAM en https://console.aws.amazon.com/iam/.


2. En el panel de navegación, elija Roles, Create role.
3. En Select type of trusted entity (Seleccionar tipo de entidad de confianza), elija AWS service (Servicio
de AWS).
4. En Choose the service that will use this role (Seleccione el servicio que va a usar este rol), elija EC2
Auto Scaling y el caso de uso EC2 Auto Scaling.
5. Seleccione Next (Siguiente): Permisos,Siguiente: Etiquetasy, a continuación,Siguiente: Consulte. Nota:
No puede asociar etiquetas a roles vinculados a servicios durante la creación.
6. En la página Review (Revisar), deje Role name (Nombre del rol) en blanco para crear un rol vinculado
al servicio con el nombre AWSServiceRoleForAutoScaling o escriba un sufijo para crear un rol
vinculado al servicio con el nombre AWSServiceRoleForAutoScaling_suffix.
7. (Opcional) En Role description (Descripción del rol), modifique la descripción del nuevo rol vinculado a
servicios.
8. Elija Create role (Crear rol).

284
Auto Scaling de Amazon EC2 Guía del usuario
Roles vinculados a servicios

Para crear un rol vinculado a un servicio (AWS CLI)

Utilice el siguiente ejemplo:create-service-linked-role role (Rol vinculadoComando de la


CLI para crear un rol vinculado a servicios para Amazon EC2 Auto Scaling con el nombre
deAWSServiceRoleForAutoScaling_sufijo de.

aws iam create-service-linked-role --aws-service-name autoscaling.amazonaws.com --custom-


suffix suffix

El resultado de este comando incluye el ARN del rol vinculado a servicios, que puede utilizar para
conceder a este acceso a su CMK.

{
"Role": {
"RoleId": "ABCDEF0123456789ABCDEF",
"CreateDate": "2018-08-30T21:59:18Z",
"RoleName": "AWSServiceRoleForAutoScaling_suffix",
"Arn": "arn:aws:iam::123456789012:role/aws-service-role/autoscaling.amazonaws.com/
AWSServiceRoleForAutoScaling_suffix",
"Path": "/aws-service-role/autoscaling.amazonaws.com/",
"AssumeRolePolicyDocument": {
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"sts:AssumeRole"
],
"Principal": {
"Service": [
"autoscaling.amazonaws.com"
]
},
"Effect": "Allow"
}
]
}
}
}

Para obtener más información, consulteCrear un rol vinculado a un servicio ()en laIAM User Guide.

Editar el rol vinculado a servicios


Los roles vinculados a servicios que se crean para Amazon EC2 Auto Scaling no se pueden editar.
Después de crear un rol vinculado a servicios, no se puede modificar el nombre ni los permisos. Sin
embargo, sí se puede modificar la descripción del rol. Para obtener más información, consulte Editar un rol
vinculado a servicios en la Guía del usuario de IAM.

Eliminar el rol vinculado a un servicio


Si no está utilizando un grupo de Auto Scaling, le recomendamos que elimine su rol vinculado a servicios.
Si lo elimina, evitará tener una entidad que no se utiliza o no tendrá que monitorizarla o mantenerla de
forma activa.

Solo puede eliminar un rol vinculado a un servicio después de eliminar los recursos dependientes
relacionados. De este modo, evitará también que pueda revocar por accidente los permisos de Auto
Scaling de Amazon EC2 Auto Scaling en los recursos. Si un rol vinculado a un servicio se utiliza con varios
grupos de Auto Scaling, debe eliminar todos los grupos de Auto Scaling que utilicen ese rol vinculado al
servicio para poder eliminarlo. Para obtener más información, consulte Eliminación de la infraestructura de
Auto Scaling (p. 119).

285
Auto Scaling de Amazon EC2 Guía del usuario
Ejemplos de políticas basadas en identidades

Puede utilizar IAM para eliminar un rol vinculado a un servicio. Para obtener más información, consulte
Eliminación de un rol vinculado a servicios en la Guía del usuario de IAM.

Si elimina elAWSServiceRoleForAutoScalingAl crear un rol vinculado a un servicio, Amazon EC2 Auto


Scaling lo volverá a crear cuando usted cree un grupo de Auto Scaling y no especifique un rol vinculado al
servicio distinto.

Regiones admitidas para roles vinculados a servicios de Amazon


EC2 Auto Scaling
Amazon EC2 Auto Scaling admite el uso de roles vinculados a servicios en todos losAWSRegiones en las
que está disponible el servicio.

Ejemplos de políticas de Amazon EC2 Auto Scaling


De forma predeterminada, los usuarios y roles de IAM no tienen permiso para crear, ver ni modificar
recursos de Auto Scaling de Amazon EC2. Tampoco pueden realizar tareas mediante la AWS
Management Console, la AWS CLI, o la API de AWS. Un administrador de IAM debe crear políticas de
IAM que concedan permisos a los usuarios y a los roles para realizar operaciones de API concretas en
los recursos especificados que necesiten. El administrador debe adjuntar esas políticas a los usuarios o
grupos de IAM que necesiten esos permisos.

Para obtener más información acerca de cómo crear una política basada en identidad de IAM con estos
documentos de políticas de JSON de ejemplo, consulte Creación de políticas en la pestaña JSON en la
Guía del usuario de IAM.

A continuación se muestra un ejemplo de una política de permisos.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"autoscaling:CreateAutoScalingGroup",
"autoscaling:UpdateAutoScalingGroup",
"autoscaling:DeleteAutoScalingGroup"
],
"Resource": "*",
"Condition": {
"StringEquals": { "autoscaling:ResourceTag/environment": "test" }
}
},
{
"Effect": "Allow",
"Action": [
"autoscaling:*LaunchConfiguration*",
"autoscaling:Describe*"
],
"Resource": "*"
}]
}

Esta política de ejemplo concede a los usuarios permisos para crear, modificar y eliminar grupos de
Auto Scaling, pero solo si el grupo utiliza la etiquetaenvironment=test. Como las configuraciones de
lanzamiento no admiten etiquetas y las acciones Describe no admiten permisos de nivel de recursos,
debe especificarlos en una instrucción aparte sin condiciones. Para obtener más información acerca de
los elementos de una instrucción de política de IAM, consultePolíticas basadas en identidades de Amazon
EC2 Auto Scaling (p. 275).

286
Auto Scaling de Amazon EC2 Guía del usuario
Ejemplos de políticas basadas en identidades

Contenido
• Prácticas recomendadas relativas a políticas (p. 287)
• Ejemplos de políticas administradas por el cliente (p. 288)
• Controlar qué claves de etiqueta y valores de etiqueta se pueden usar (p. 288)
• Control del acceso a los recursos de Auto Scaling en función de las etiquetas (p. 289)
• Controlar el acceso a la creación y administración de grupos de Auto Scaling y
políticas de escalado (p. 289)
• Controlar qué políticas de escalado se pueden eliminar (p. 290)
• Controlar la capacidad mínima y máxima de los grupos de Auto Scaling (p. 290)
• Controlar qué roles de IAM se pueden transferir (usando PassRole) (p. 291)
• Permitir a los usuarios cambiar la capacidad de los grupos Auto Scaling (p. 291)
• Permitir a los usuarios crear y utilizar configuraciones de inicio (p. 292)
• Permitir a los usuarios crear y utilizar plantillas de inicio (p. 293)
• Permisos necesarios para crear un rol vinculado a un servicio (p. 293)
• Controlar el rol vinculado a servicios que se puede pasar (usando PassRole) (p. 294)
• Permisos necesarios para la API (p. 294)

Prácticas recomendadas relativas a políticas


Las políticas basadas en identidad son muy eficaces. Determinan si alguien puede crear, acceder o
eliminar los recursos de Amazon EC2 Auto Scaling de su cuenta. Estas acciones pueden generar costes
adicionales para su Cuenta de AWS . Siga estas directrices y recomendaciones al crear o editar políticas
basadas en identidad:

• Empiece a trabajar conAWSPolíticas administradas dePara empezar a utilizar Amazon EC2 Auto
ScalingAWSLas políticas administradas de para proporcionar a los empleados los permisos necesarios.
Estas políticas ya están disponibles en su cuenta y las mantiene y actualiza AWS. Para obtener más
información, consulte Introducción sobre el uso de permisos con políticas administradas por AWS en la
Guía del usuario de IAM.
• Conceder privilegios mínimos: al crear políticas personalizadas, conceda solo los permisos necesarios
para llevar a cabo una tarea. Comience con un conjunto mínimo de permisos y conceda permisos
adicionales según sea necesario. Por lo general, es más seguro que comenzar con permisos que son
demasiado tolerantes e intentar hacerlos más severos más adelante. Para obtener más información,
consulte Conceder privilegios mínimos en la Guía del usuario de IAM.
• Habilitar la MFA para operaciones confidenciales: para mayor seguridad, obligue a los usuarios de IAM a
utilizar Multi-Factor Authentication (MFA) para acceder a recursos u operaciones de API confidenciales.
Para obtener más información, consulte Uso de la autenticación multifactor (MFA) en AWS en la Guía
del usuario de IAM.
• Utilizar condiciones de política para mayor seguridad: en la medida en que sea práctico, defina las
condiciones en las que las políticas basadas en identidades permitan el acceso a un recurso. Por
ejemplo, puede escribir condiciones para especificar un rango de direcciones IP permitidas desde el
que debe proceder una solicitud. También puede escribir condiciones para permitir solicitudes solo
en un intervalo de hora o fecha especificado o para solicitar el uso de SSL o MFA. Para obtener más
información, consulteElemento de la política de IAM JSON: Condiciónen laIAM User Guide.

Note

Algunas acciones de la API de Auto Scaling de Amazon EC2 permiten incluir en la política grupos
de Auto Scaling específicos que la acción puede crear o modificar. Puede restringir los recursos
de destino para estas acciones especificando los ARN de grupo de Auto Scaling. Sin embargo,

287
Auto Scaling de Amazon EC2 Guía del usuario
Ejemplos de políticas basadas en identidades

como práctica recomendada, se sugiere utilizar políticas basadas en etiquetas que permitan o
denieguen acciones en grupos de Auto Scaling con una etiqueta específica.

Ejemplos de políticas administradas por el cliente


Puede crear sus propias políticas de IAM personalizadas para permitir o denegar los permisos para los
usuarios o grupos de IAM para realizar acciones de Auto Scaling de Amazon EC2. Puede asociar estas
políticas personalizadas a los usuarios o grupos de IAM que requieran los permisos especificados. A
continuación se muestran algunos ejemplos de permisos para algunos casos de uso comunes.

Si es la primera vez que crea una política, le recomendamos que, en primer lugar, cree un usuario de
IAM en su cuenta y, después, asocie las políticas al usuario. Puede utilizar la consola para comprobar los
efectos de cada política a medida que asocia la política al usuario.

Al crear y actualizar grupos de Auto Scaling, algunas acciones requieren que se lleven a cabo otras
acciones. Puede especificar estas otras acciones en laActionElemento de una declaración de política de
IAM. Por ejemplo, hay acciones de API adicionales para Elastic Load Balancing, CloudWatch y Amazon
SNS que pueden ser necesarias en función del acceso que desee proporcionar a un usuario.

Temas
• Controlar qué claves de etiqueta y valores de etiqueta se pueden usar (p. 288)
• Control del acceso a los recursos de Auto Scaling en función de las etiquetas (p. 289)
• Controlar la capacidad mínima y máxima de los grupos de Auto Scaling (p. 290)
• Controlar qué roles de IAM se pueden transferir (usando PassRole) (p. 291)
• Permitir a los usuarios cambiar la capacidad de los grupos Auto Scaling (p. 291)
• Permitir a los usuarios crear y utilizar configuraciones de inicio (p. 292)
• Permitir a los usuarios crear y utilizar plantillas de inicio (p. 293)

Controlar qué claves de etiqueta y valores de etiqueta se pueden usar


Puede utilizar condiciones en las políticas de IAM para controlar las claves de etiqueta y los valores de
etiqueta que se pueden aplicar a los grupos de Auto Scaling.

Para conceder a los usuarios permisos para crear o etiquetar un grupo de Auto Scaling únicamente si
proporcionan etiquetas específicas, utilice laaws:RequestTagClave de condición de. Para permitir
únicamente claves de etiqueta específicas, utilice la clave de condición aws:TagKeys con el modificador
ForAllValues.

La siguiente política requiere que los usuarios especifiquen una etiqueta con la clave environment en la
solicitud. El valor "?*" exige que haya algún valor para la clave de etiqueta. Para utilizar un valor comodín,
debe utilizar el operador de condición StringLike.

{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Action": [
"autoscaling:CreateAutoScalingGroup",
"autoscaling:CreateOrUpdateTags"
],
"Resource": "*",
"Condition": {
"StringLike": { "aws:RequestTag/environment": "?*" }
}
}]

288
Auto Scaling de Amazon EC2 Guía del usuario
Ejemplos de políticas basadas en identidades

La siguiente directiva especifica que los usuarios solo pueden etiquetar grupos de Auto Scaling con las
etiquetaspurpose=webserverycost-center=cc123, y solo permite elpurposeycost-center(no se
pueden especificar otras etiquetas).

{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Action": [
"autoscaling:CreateAutoScalingGroup",
"autoscaling:CreateOrUpdateTags"
],
"Resource": "*",
"Condition": {
"StringEquals": {
"aws:RequestTag/purpose": "webserver",
"aws:RequestTag/cost-center": "cc123"
},
"ForAllValues:StringEquals": { "aws:TagKeys": ["purpose", "cost-center"] }
}
}]
}

La siguiente política requiere que los usuarios especifiquen al menos una etiqueta en la solicitud y permite
únicamente las claves cost-center y owner.

{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Action": [
"autoscaling:CreateAutoScalingGroup",
"autoscaling:CreateOrUpdateTags"
],
"Resource": "*",
"Condition": {
"ForAnyValue:StringEquals": { "aws:TagKeys": ["cost-center", "owner"] }
}
}]
}

Note
En cuanto a las condiciones, la clave de condición no distingue entre mayúsculas y minúsculas,
mientras que el valor de condición sí. Por lo tanto, para aplicar la distinción entre mayúsculas y
minúsculas de una clave de etiqueta, utilice la clave de condición aws:TagKeys, donde la clave
de etiqueta se especifica como valor en la condición.

Control del acceso a los recursos de Auto Scaling en función de las etiquetas
También puede proporcionar información de etiquetas en las políticas de IAM para controlar
el acceso en función de las etiquetas asociadas al grupo de Auto Scaling mediante
laautoscaling:ResourceTagClave de condición de.

Controlar el acceso a la creación y administración de grupos de Auto Scaling y políticas de


escalado
La siguiente política concede a los usuarios permisos para usar todas las acciones de Auto Scaling de
Amazon EC2 que incluyan la cadenaScalingen sus nombres, siempre y cuando el grupo Auto Scaling

289
Auto Scaling de Amazon EC2 Guía del usuario
Ejemplos de políticas basadas en identidades

tenga la etiquetapurpose=webserver. Como las acciones Describe no admiten permisos de nivel de


recursos, debe especificarlas en una instrucción aparte sin condiciones.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": ["autoscaling:*Scaling*"],
"Resource": "*",
"Condition": {
"StringEquals": { "autoscaling:ResourceTag/purpose": "webserver" }
}
},
{
"Effect": "Allow",
"Action": "autoscaling:Describe*Scaling*",
"Resource": "*"
}]
}

Controlar qué políticas de escalado se pueden eliminar

La siguiente política permite a los usuarios utilizar la acción autoscaling:DeletePolicy para eliminar
una política de escalado. Sin embargo, también deniega la acción si el grupo de Auto Scaling sobre el que
se actúa tiene la etiquetaenvironment=production.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "autoscaling:DeletePolicy",
"Resource": "*"
},
{
"Effect": "Deny",
"Action": "autoscaling:DeletePolicy",
"Resource": "*",
"Condition": {
"StringEquals": { "autoscaling:ResourceTag/environment": "production" }
}
}]
}

Controlar la capacidad mínima y máxima de los grupos de Auto Scaling


Amazon EC2 Auto Scaling permite restringir el tamaño de los grupos Auto Scaling que se pueden crear.
La siguiente política concede a los usuarios permisos para crear y actualizar todos los grupos de Auto
Scaling con la etiquetaallowed=trueSiempre y cuando no especifiquen un tamaño mínimo inferior a 1 o
un tamaño máximo superior a 10.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"autoscaling:CreateAutoScalingGroup",
"autoscaling:UpdateAutoScalingGroup"
],

290
Auto Scaling de Amazon EC2 Guía del usuario
Ejemplos de políticas basadas en identidades

"Resource": "*",
"Condition": {
"StringEquals": { "autoscaling:ResourceTag/allowed": "true" },
"NumericGreaterThanEqualsIfExists": { "autoscaling:MinSize": 1 },
"NumericLessThanEqualsIfExists": { "autoscaling:MaxSize": 10 }
}
}]
}

Controlar qué roles de IAM se pueden transferir (usando PassRole)


Si desea que un usuario sea capaz de crear recursos de Auto Scaling de Amazon EC2 que especifiquen
un perfil de instancia (un contenedor para un rol de IAM), debe utilizar una política que incluya una
instrucción que permita al usuario pasar el rol, como la que se muestra en el ejemplo. Al especificar
el ARN, la política concede al usuario el permiso para pasar solo los roles cuyo nombre comienza por
qateam-. Para obtener más información, consulte Función de IAM para aplicaciones que se ejecutan en
instancias Amazon EC2 (p. 300).

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "iam:PassRole",
"Resource": "arn:aws:iam::123456789012:role/qateam-*",
"Condition": {
"StringEquals": {
"iam:PassedToService": [
"ec2.amazonaws.com",
"ec2.amazonaws.com.cn"
]
}
}
}
]
}

Permitir a los usuarios cambiar la capacidad de los grupos Auto Scaling


La siguiente política concede permisos a los usuarios para usar las acciones de la API
SetDesiredCapacity y TerminateInstanceInAutoScalingGroup. LaResourceutiliza un valor
comodín (*) para indicar que los usuarios pueden cambiar la capacidad de cualquier grupo de Auto
Scaling.

{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Action": [
"autoscaling:SetDesiredCapacity",
"autoscaling:TerminateInstanceInAutoScalingGroup"
],
"Resource": "*"
}]
}

Si no utiliza etiquetas para controlar el acceso a los grupos de Auto Scaling, puede ajustar la instrucción
anterior para conceder a los usuarios permisos para cambiar la capacidad solo de los grupos de Auto
Scaling cuyo nombre comienza pordevteam-. Para obtener más información sobre cómo especificar el
valor de ARN, consulte Resources (p. 276).

291
Auto Scaling de Amazon EC2 Guía del usuario
Ejemplos de políticas basadas en identidades

"Resource":
"arn:aws:autoscaling:region:123456789012:autoScalingGroup:*:autoScalingGroupName/devteam-
*"

También puede especificar varios ARN incluyéndolos en una lista. Al incluir el UUUUUID se garantiza que
el acceso se conceda al grupo de Auto Scaling especificado. El UUID de un grupo nuevo es distinto del
UUID de un grupo eliminado que tenía el mismo nombre.

"Resource": [

"arn:aws:autoscaling:region:123456789012:autoScalingGroup:7fe02b8e-7442-4c9e-8c8e-85fa99e9b5d9:autoSca
devteam-1",
"arn:aws:autoscaling:region:123456789012:autoScalingGroup:9d8e8ea4-22e1-44c7-
a14d-520f8518c2b9:autoScalingGroupName/devteam-2",
"arn:aws:autoscaling:region:123456789012:autoScalingGroup:60d6b363-
ae8b-467c-947f-f1d308935521:autoScalingGroupName/devteam-3"
]

Permitir a los usuarios crear y utilizar configuraciones de inicio


La siguiente política concede a los usuarios permisos para crear una configuración de lanzamiento si
el tipo de instancia es t2.micro, pero solo si el nombre de la configuración de lanzamiento comienza
por qateam-. Para obtener más información sobre cómo especificar el valor de ARN, consulte
Resources (p. 276). Pueden especificar una configuración de lanzamiento para un grupo de Auto Scaling
solo si su nombre comienza porqateam-.

La última parte de la instrucción concede a los usuarios permisos para describir las configuraciones de
lanzamiento y acceder a determinados recursos de Amazon EC2 en su cuenta. Esto proporciona a los
usuarios permisos mínimos para crear y administrar configuraciones de lanzamiento desde la consola de
Amazon EC2 Auto Scaling.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "autoscaling:CreateLaunchConfiguration",
"Resource":
"arn:aws:autoscaling:region:123456789012:launchConfiguration:*:launchConfigurationName/
qateam-*",
"Condition": {
"StringEquals": { "autoscaling:InstanceType": "t2.micro" }
}
},
{
"Effect": "Allow",
"Action": [
"autoscaling:CreateAutoScalingGroup",
"autoscaling:UpdateAutoScalingGroup"
],
"Resource": "*",
"Condition": {
"StringLikeIfExists": { "autoscaling:LaunchConfigurationName": "qateam-*" }
}
},
{
"Effect": "Allow",
"Action": [
"autoscaling:DescribeLaunchConfigurations",
"ec2:DescribeImages",
"ec2:DescribeVolumes",

292
Auto Scaling de Amazon EC2 Guía del usuario
Ejemplos de políticas basadas en identidades

"ec2:DescribeInstances",
"ec2:DescribeInstanceAttribute",
"ec2:DescribeKeyPairs",
"ec2:DescribeSecurityGroups",
"ec2:DescribeSpotInstanceRequests",
"ec2:DescribeSpotPriceHistory",
"ec2:DescribeVpcClassicLink",
"ec2:DescribeVpcs",
"ec2:DescribeSubnets"
],
"Resource": "*"
}]
}

Puede agregar acciones de la API a esta política para proporcionar más opciones para los usuarios; por
ejemplo:

• iam:ListInstanceProfiles: para mostrar perfiles de instancia


• ec2:CreateSecurityGroup: crear un nuevo grupo de seguridad.
• ec2:AuthorizeSecurityGroupIngress: añadir reglas de entrada.
• ec2:CreateKeyPair: para crear un nuevo par de claves.

Permitir a los usuarios crear y utilizar plantillas de inicio


Para ver ejemplos de políticas, consulte Soporte para plantillas de lanzamiento de (p. 295).

Permisos necesarios para crear un rol vinculado a un servicio


Amazon EC2 Auto Scaling requiere permisos para crear un rol vinculado a servicio la primera vez que
cualquier usuario de su Cuenta de AWS llama a las acciones de Amazon EC2 Auto Scaling Si el rol
vinculado al servicio aún no existe, Amazon EC2 Auto Scaling lo crea en su cuenta. El rol vinculado al
servicio concede permisos a Amazon EC2 Auto Scaling para que pueda llamar a otros servicios en su
nombre.

Para que la creación automática de roles se realice correctamente, los usuarios deben disponer de
permisos para la acción iam:CreateServiceLinkedRole.

"Action": "iam:CreateServiceLinkedRole"

A continuación se muestra un ejemplo de una política de permisos que permite a un usuario crear un rol
vinculado al servicio de Amazon EC2 Auto Scaling para Amazon EC2 Auto Scaling.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "iam:CreateServiceLinkedRole",
"Resource": "arn:aws:iam::*:role/aws-service-role/autoscaling.amazonaws.com/
AWSServiceRoleForAutoScaling",
"Condition": {
"StringLike": {
"iam:AWSServiceName":"autoscaling.amazonaws.com"
}
}
}
]
}

293
Auto Scaling de Amazon EC2 Guía del usuario
Ejemplos de políticas basadas en identidades

Controlar el rol vinculado a servicios que se puede pasar (usando PassRole)


Si los usuarios necesitan la capacidad de pasar roles vinculados al servicio con un sufijo personalizado
a un grupo de Auto Scaling, debe asociar una política a los usuarios o roles en función del acceso que
necesiten. Le recomendamos que restrinja esta política únicamente a los roles vinculados a servicios a
los que los usuarios deban tener acceso. Para obtener más información acerca de los roles vinculados a
servicios con un sufijo personalizado, consulte Funciones vinculadas a servicios para Amazon EC2 Auto
Scaling (p. 281).

El siguiente ejemplo es útil para facilitar la seguridad de sus CMK administradas por el cliente
si da acceso de diferentes roles vinculados a servicios a diferentes claves. En función de sus
necesidades, es posible que tenga una CMK para el equipo de desarrollo, otra para el equipo
de control de calidad y otra para el equipo de finanzas. En primer lugar, cree un rol vinculado al
servicio que tenga acceso a la CMK necesaria, por ejemplo, un rol vinculado al servicio llamado
AWSServiceRoleForAutoScaling_devteamkeyaccess. A continuación, para conceder permisos
para transferir ese rol vinculado a servicios a un grupo de Auto Scaling, asocie la política a los usuarios de
IAM, tal y como se muestra.

La política de este ejemplo concede a los usuarios permisos para pasar


elAWSServiceRoleForAutoScaling_devteamkeyaccesspara crear cualquier grupo de Auto Scaling
cuyo nombre comience condevteam-. Si intentan especificar otro rol vinculado a servicios, recibirán un
error. Si prefiere no especificar un rol vinculado a servicios, se utilizará de forma predeterminada el rol
AWSServiceRoleForAutoScaling.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "iam:PassRole",
"Resource": "arn:aws:iam::123456789012:role/aws-service-role/
autoscaling.amazonaws.com/AWSServiceRoleForAutoScaling_devteamkeyaccess",
"Condition": {
"StringEquals": {
"iam:PassedToService": [
"autoscaling.amazonaws.com"
]
},
"StringLike": {
"iam:AssociatedResourceARN": [

"arn:aws:autoscaling:region:123456789012:autoScalingGroup:*:autoScalingGroupName/devteam-
*"
]
}
}
}
]
}

Permisos necesarios para la API


Al llamar a las siguientes acciones desde la API de Auto Scaling de Amazon EC2, los usuarios deben tener
permisos de Amazon EC2 e IAM para realizar determinadas acciones. Debe especificar las siguientes
acciones en laActionElemento de una declaración de política de IAM.

Crear un grupo de Auto Scaling mediante una configuración de lanzamiento

• autoscaling:CreateAutoScalingGroup

294
Auto Scaling de Amazon EC2 Guía del usuario
Soporte para plantillas de lanzamiento de

• iam:CreateServiceLinkedRole (Necesario si está utilizando el rol vinculado al servicio


predeterminado y ese rol aún no existe)

Crear un grupo de Auto Scaling mediante una plantilla de lanzamiento

• autoscaling:CreateAutoScalingGroup
• ec2:RunInstances
• iam:CreateServiceLinkedRole (Necesario si está utilizando el rol vinculado al servicio
predeterminado y ese rol aún no existe)

Actualización de un grupo de Auto Scaling que utiliza una plantilla de lanzamiento

• autoscaling:UpdateAutoScalingGroup
• ec2:RunInstances

Creación de una configuración de lanzamiento

• autoscaling:CreateLaunchConfiguration
• ec2:DescribeImages
• ec2:DescribeInstances
• ec2:DescribeInstanceAttribute
• ec2:DescribeKeyPairs
• ec2:DescribeSecurityGroups
• ec2:DescribeSpotInstanceRequests
• ec2:DescribeVpcClassicLink

Soporte para plantillas de lanzamiento de


Amazon EC2 Auto Scaling admite el uso de plantillas de lanzamiento de Amazon EC2 con sus grupos
de Auto Scaling. Le recomendamos que permita a los usuarios crear grupos de Auto Scaling a partir de
plantillas de lanzamiento, ya que de esta forma podrán utilizar las características más recientes de Amazon
EC2 Auto Scaling y Amazon EC2. Además, los usuarios deben especificar una plantilla de lanzamiento
para utilizar una política de instancias mixtas.

Puede utilizar elAmazonEC2FullAccessPara conceder a los usuarios acceso completo para trabajar con
recursos de Amazon EC2 Auto Scaling, plantillas de lanzamiento y otros recursos de EC2 de su cuenta. O
puede crear sus propias políticas de IAM personalizadas para conceder a los usuarios permisos detallados
para trabajar con acciones de la API específicas.

Utilice las políticas del ejemplo que se muestran a continuación para conceder a los usuarios permisos
para trabajar con plantillas de lanzamiento, a no ser que otra política ya les conceda permiso para hacerlo.
No es necesario conceder estos permisos a los usuarios que solo crean grupos de Auto Scaling a partir de
configuraciones de lanzamiento (una característica anterior de Auto Scaling de Amazon EC2).

Para obtener más información acerca de las políticas de IAM para Amazon EC2, consultePolíticas de
IAMen laGuía del usuario de Amazon EC2 para instancias de Linux.

Contenido
• Ejemplo 1: Controlar el acceso mediante permisos de nivel de recursos (p. 293)
• Ejemplo 2: Permitir a los usuarios crear y administrar plantillas de lanzamiento y versiones de plantillas
de lanzamiento (p. 298)
• Ejemplo 3: Requiere el uso de servicios de metadatos de instancia versión 2 (IMDSv2) (p. 298)

295
Auto Scaling de Amazon EC2 Guía del usuario
Soporte para plantillas de lanzamiento de

• Permisos necesarios adicionales (p. 299)

Un usuario o rol de IAM que cree o actualice un grupo de Auto Scaling mediante una plantilla de
lanzamiento debe tener permiso para utilizar laec2:RunInstancesaction. Los usuarios sin este permiso
reciben un error que indica que no están autorizados a utilizar la plantilla de lanzamiento.

Tenga en cuenta que los permisos de usuario paraec2:RunInstancesSolo se comprueban cuando


se crea o actualiza un grupo de Auto Scaling mediante una plantilla de lanzamiento. Para un grupo de
Auto Scaling configurado para usar la plantilla de lanzamiento Latest o Default, los permisos no se
comprueban cuando se crea una nueva versión de la plantilla de lanzamiento. Para que se comprueben
los permisos, los usuarios deben configurar el grupo de Auto Scaling para utilizar una versión específica de
la plantilla de lanzamiento.

Ejemplo 1: Controlar el acceso mediante permisos de nivel de


recursos
Al conceder permisos de usuario, Amazon EC2 permite especificar permisos de nivel de recurso para
los recursos que se crean como parte de una llamada a laec2:RunInstancesPara controlar con qué
recursos pueden trabajar los usuarios. Esta es una práctica recomendada.

En el ejemplo siguiente se utilizan permisos de nivel de recurso para restringir el acceso a plantillas
de lanzamiento específicas. También muestra algunas de las muchas formas posibles de controlar
la configuración de una instancia que un usuario puede lanzar cuando se concede el permiso
ec2:RunInstances.

En este ejemplo, hay cuatro instrucciones:

• La primera instrucción restringe el acceso del usuario a las plantillas de lanzamiento que se encuentran
en la región especificada y que tienen la etiqueta environment=test.
• La segunda instrucción permite a los usuarios etiquetar instancias y volúmenes cuando estos se crean.
Esta parte es necesaria si hay etiquetas especificadas en la plantilla de lanzamiento.
• La tercera instrucción requiere que los usuarios lancen instancias en una subred específica
(subnet-1a2b3c4d), utilizando un grupo de seguridad específico (sg-903004f88example) y una
AMI específica (ami-04d5cc9b88example). También concede a los usuarios acceso a recursos
adicionales que necesitan para lanzar instancias: interfaces de red y volúmenes.
• La cuarta instrucción permite a los usuarios lanzar instancias solo de un tipo de instancia específico
(t2.micro).

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "ec2:RunInstances",
"Resource": "arn:aws:ec2:region:123456789012:launch-template/*",
"Condition": {
"StringEquals": { "ec2:ResourceTag/environment": "test" }
}
},
{
"Effect": "Allow",
"Action": "ec2:CreateTags",
"Resource": "arn:aws:ec2:region:123456789012:*/*",
"Condition": {
"StringEquals": { "ec2:CreateAction": "RunInstances" }
}
},

296
Auto Scaling de Amazon EC2 Guía del usuario
Soporte para plantillas de lanzamiento de

{
"Effect": "Allow",
"Action": "ec2:RunInstances",
"Resource": [
"arn:aws:ec2:region:123456789012:subnet/subnet-1a2b3c4d",
"arn:aws:ec2:region:123456789012:security-group/sg-903004f88example",
"arn:aws:ec2:region:123456789012:network-interface/*",
"arn:aws:ec2:region:123456789012:volume/*",
"arn:aws:ec2:region::image/ami-04d5cc9b88example"
]
},
{
"Effect": "Allow",
"Action": "ec2:RunInstances",
"Resource": "arn:aws:ec2:region:123456789012:instance/*",
"Condition": {
"StringEquals": { "ec2:InstanceType": "t2.micro" }
}
}
]
}

Además, puede crear una política de IAM para limitar el acceso de los usuarios de modo que no puedan
utilizar configuraciones de lanzamiento al crear grupos de Auto Scaling. Si lo desea, también puede
requerir que establezcan la versión específica que se va a utilizar para asegurarse de que los permisos de
IAM para las acciones que se completarán al lanzar instancias se comprueben siempre que los grupos de
Auto Scaling se actualicen para utilizar una nueva versión.

Las instrucciones siguientes conceden a los usuarios permisos para crear o actualizar un grupo de Auto
Scaling si proporcionan una plantilla de lanzamiento. Si omiten el número de versión para especificar
la versión de la plantilla de lanzamiento Latest o Default o para especificar una configuración de
lanzamiento en su lugar, se producirá un error en la acción.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"autoscaling:CreateAutoScalingGroup",
"autoscaling:UpdateAutoScalingGroup"
],
"Resource": "*",
"Condition": {
"Bool": { "autoscaling:LaunchTemplateVersionSpecified": "true" }
}
},
{
"Effect": "Deny",
"Action": [
"autoscaling:CreateAutoScalingGroup",
"autoscaling:UpdateAutoScalingGroup"
],
"Resource": "*",
"Condition": {
"Null": { "autoscaling:LaunchConfigurationName": "false" }
}
}
]
}

Como alternativa, puede requerir que los usuarios especifiquen la versión Latest o Default de la
plantilla de lanzamiento, en lugar de una versión específica de la plantilla. Para ello, cambie el valor

297
Auto Scaling de Amazon EC2 Guía del usuario
Soporte para plantillas de lanzamiento de

de autoscaling:LaunchTemplateVersionSpecified a false, como se muestra en el ejemplo


siguiente.

"Condition": {
"Bool": { "autoscaling:LaunchTemplateVersionSpecified": "false" }
}

Ejemplo 2: Permitir a los usuarios crear y administrar plantillas de


lanzamiento y versiones de plantillas de lanzamiento
Puede crear una política que conceda a los usuarios permisos para crear, modificar, describir y eliminar
plantillas de lanzamiento y versiones de plantillas de lanzamiento. Antes de agregar estos permisos a un
usuario, revise laControl del uso de las plantillas de lanzamientoSección sobre de laGuía del usuario de
Amazon EC2 para instancias de Linux. Para ver ejemplos de políticas adicionales, consulteEjemplo: Uso
de plantillas de lanzamientoen laGuía del usuario de Amazon EC2 para instancias de Linux.
Important

Para los grupos que están configurados para usar elLatestorDefaultAl crear una nueva
versión de plantilla de lanzamiento, Amazon EC2 Auto Scaling no comprueba los permisos para
las acciones que se deben completar al lanzar instancias cuando se crea una nueva versión de la
plantilla de lanzamiento. Esta es una consideración importante cuando se configuran los permisos
para quién puede crear y administrar versiones de plantillas de lanzamiento.

La siguiente política concede a los usuarios permisos para crear plantillas de lanzamiento.

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "ec2:CreateLaunchTemplate",
"Resource": "*"
}
]
}

Ejemplo 3: Requiere el uso de servicios de metadatos de


instancia versión 2 (IMDSv2)
Important

Si necesita exigir el uso de IMDSv2 en todas las instancias nuevas, los grupos de Auto Scaling
deben usar plantillas de lanzamiento.

Para mayor seguridad, puede establecer los permisos de los usuarios para exigir el uso de una plantilla de
lanzamiento que requiera IMDSv2. Para obtener más información, consulteConfiguración del servicio de
metadatos de instanciaen laGuía del usuario de Amazon EC2 para instancias de Linux.

La siguiente política especifica que los usuarios no pueden llamar a laec2:RunInstancesA menos que la
instancia también requiera el uso de IMDSv2 (indicado por"ec2:MetadataHttpTokens":"required").
Si no especifican que la instancia requiere IMDSv2, obtienen un error UnauthorizedOperation cuando
llaman a la acción ec2:RunInstances.

{
"Version": "2012-10-17",
"Statement": [

298
Auto Scaling de Amazon EC2 Guía del usuario
Soporte para plantillas de lanzamiento de

{
"Sid": "RequireImdsV2",
"Effect": "Deny",
"Action": "ec2:RunInstances",
"Resource": "arn:aws:ec2:*:*:instance/*",
"Condition": {
"StringNotEquals": { "ec2:MetadataHttpTokens": "required" }
}
}
]
}

Para actualizar un grupo de Auto Scaling existente, asegúrese de que utiliza una nueva plantilla de
lanzamiento con las opciones de metadatos de la instancia configuradas o una nueva versión de la plantilla
de lanzamiento actual con las opciones de metadatos de la instancia configuradas.
Tip

Para forzar el lanzamiento de instancias de reemplazo que utilicen la nueva plantilla de


lanzamiento, puede terminar las instancias existentes en el grupo de. Amazon EC2 Auto Scaling
comienza inmediatamente a lanzar nuevas instancias para reemplazar las instancias que ha
terminado.
Como alternativa, si utiliza políticas de escalado, puede aumentar la capacidad deseada del grupo
para lanzar nuevas instancias. Si se cumplen las condiciones de política de escalado, el grupo
de Auto Scaling termina gradualmente las instancias más antiguas (dependiendo de la política de
terminación del grupo).

Permisos necesarios adicionales


En función de los escenarios que desee admitir, puede especificar estas acciones adicionales en
laActionElemento de una declaración de política de IAM.

Para crear y actualizar grupos de Auto Scaling desde la consola, los usuarios también deben tener los
siguientes permisos de Amazon EC2:

• ec2:DescribeLaunchTemplates
• ec2:DescribeLaunchTemplateVersions
• ec2:DescribeVpcs
• ec2:DescribeSubnets
• ec2:DescribeAvailabilityZones

Sin estos permisos mínimos adicionales, las opciones de plantilla de lanzamiento y red no se pueden
cargar en el asistente de grupos de Auto Scaling, y los usuarios no podrán recorrer el asistente para lanzar
instancias con una plantilla de lanzamiento.

Puede agregar más acciones a la política para conceder a los usuarios más opciones en el asistente. Por
ejemplo, puede agregar permisos para las acciones de la API de Elastic Load Balancing para permitir a los
usuarios seleccionar de una lista de balanceadores de carga existentes en el paso 3 del asistente.

Usariam:PassRolePara permitir o denegar que los usuarios pasen un rol a Amazon EC2 si la plantilla
de lanzamiento especifica un perfil de instancia con un rol de IAM. Los usuarios sin este permiso reciben
un error que indica que no están autorizados a utilizar la plantilla de lanzamiento. Para ver una política de
ejemplo, consulte Controlar qué roles de IAM se pueden transferir (usando PassRole) (p. 291).

Para verificar el aprovisionamiento desde la consola Amazon EC2, es posible que los
usuarios necesiten permisos adicionales (por ejemplo,ec2:DescribeInstancespara
ver instancias,ec2:DescribeInstanceStatuspara mostrar el estado de la instancia,
oec2:DescribeTagspara mostrar las etiquetas).

299
Auto Scaling de Amazon EC2 Guía del usuario
Función de IAM para aplicaciones que
se ejecutan en instancias Amazon EC2

Función de IAM para aplicaciones que se ejecutan en


instancias Amazon EC2
Las aplicaciones que se ejecutan en instancias de Amazon EC2 necesitan credenciales para obtener
acceso a otros Amazon Web Services. Para proporcionar estas credenciales de una forma segura,
utilice un rol de IAM. El rol proporciona permisos temporales que la aplicación puede utilizar al acceder a
otrosAWSde AWS. Los permisos del rol determinan lo que puede hacer la aplicación.

Las aplicaciones que se ejecutan en la instancia pueden acceder a credenciales temporales para el rol a
través de los metadatos del perfil de instancia. Para obtener más información, consulte Uso de un rol de
IAM para conceder permisos a aplicaciones que se ejecutan en instancias Amazon EC2 en la Guía del
usuario de IAM.

Para las instancias de un grupo de Auto Scaling, debe crear una plantilla de lanzamiento o una
configuración de lanzamiento y elegir un perfil de instancia que asociar con las instancias. Un perfil de
instancia es un contenedor de una función de IAM que permite que Amazon EC2 transfiera el rol de IAM
a una instancia cuando se lance la instancia. En primer lugar, cree un rol de IAM que tenga todos los
permisos necesarios para obtener acceso a laAWSde AWS. A continuación, cree el perfil de instancia y
asígnele el rol. Para obtener más información, consulteUso de perfiles de instanciaen laIAM User Guide.
Note
Al utilizar la consola de IAM para crear un rol para Amazon EC2, la consola le guía a través de los
pasos para crear el rol y crea automáticamente un perfil de instancia con el mismo nombre que el
rol de IAM.

Para obtener más información, consulteRoles de IAM para Amazon EC2en laGuía del usuario de Amazon
EC2 para instancias de Linux.

Contenido
• Prerequisites (p. 300)
• Crear una plantilla de lanzamiento (p. 301)
• Creación de una configuración de lanzamiento (p. 301)

Prerequisites
Cree el rol de IAM que la aplicación que se ejecuta en Amazon EC2 puede asumir. Elija los permisos
adecuados, de modo que la aplicación a la que se le asigne posteriormente el rol pueda realizar las
llamadas a la API específicas que necesita.
Important
Como práctica recomendada, le recomendamos encarecidamente que cree un rol, de forma que
así, tenga los permisos mínimos para otros Amazon Web Services que necesita la aplicación.

Para crear un rol de IAM (consola)

1. Abra la consola de IAM en https://console.aws.amazon.com/iam/.


2. En el panel de navegación, elija Roles, Create role.
3. En Select type of trusted entity (Seleccionar tipo de entidad de confianza), elija AWS service (Servicio
de AWS).
4. En Choose the service that will use this role (Seleccione el servicio que utilizará este rol), elija EC2 y el
caso de uso EC2. Seleccione Next (Siguiente): Permisos.
5. En Attach permissions policy (Asociar políticas de permisos), elija las políticas administradas por AWS
que contengan los permisos necesarios. Seleccione Next (Siguiente): Etiquetasy luegoSiguiente:
Consulte.

300
Auto Scaling de Amazon EC2 Guía del usuario
AWS KMSdirectiva de claves para
su uso con volúmenes cifrados

6. En la página Review (Revisar), escriba el nombre del rol y elija Create role (Crear rol).

Laiam:PassRolePara el usuario de IAM que crea o actualiza un grupo de Auto Scaling mediante una
plantilla de lanzamiento que especifique un perfil de instancia o una configuración de lanzamiento que
especifique un perfil de instancia. Para ver una política de ejemplo, consulte Controlar qué roles de IAM se
pueden transferir (usando PassRole) (p. 291).

Crear una plantilla de lanzamiento


Cuando cree la plantilla de lanzamiento mediante laAWS Management Console, en elDetalles avanzados
de, seleccione el rol enPerfil de instancia IAM. Para obtener más información, consulte Configuración de
opciones avanzadas para la plantilla de lanzamiento (p. 32).

Cuando cree la plantilla de lanzamiento mediante lacreate-launch-template de plantilla de lanzamientoEl


comando desde la configuración deAWS CLIEn el siguiente ejemplo, especifique el nombre del perfil de
instancia.

aws ec2 create-launch-template --launch-template-name my-lt-with-instance-profile --


version-description version1 \
--launch-template-data
'{"ImageId":"ami-04d5cc9b88example","InstanceType":"t2.micro","IamInstanceProfile":
{"Name":"my-instance-profile"}}'

Creación de una configuración de lanzamiento


Cuando cree la configuración de lanzamiento mediante laAWS Management Console, en elConfiguración
adicional, seleccione el rol enPerfil de instancia IAM. Para obtener más información, consulte Creación de
una configuración de lanzamiento (p. 42).

Cuando cree la configuración de lanzamiento mediante lacreate-launch-configuration deEl comando desde


la configuración deAWS CLIEn el siguiente ejemplo, especifique el nombre del perfil de instancia.

aws autoscaling create-launch-configuration --launch-configuration-name my-lc-with-


instance-profile \
--image-id ami-04d5cc9b88example --instance-type t2.micro \
--iam-instance-profile my-instance-profile

Política de claves CMK necesarias para su uso con


volúmenes cifrados
Compatibilidad Auto Scaling Amazon EC2roles vinculados a servicios vinculados a (p. 281), un nuevo
tipo de rol de IAM que le ofrece una forma más segura y transparente de delegar permisos a Amazon
Web Services. Los roles vinculados a servicios con Auto Scaling están predefinidos por Amazon EC2
Auto Scaling e incluyen todos los permisos que el servicio requiere para llamar a otros Amazon Web
Services en su nombre. Los permisos predefinidos también incluyen el acceso a suAWSClaves maestras
administradas de cliente (CMK). Sin embargo, no incluyen el acceso a los CMK administrados por el
cliente, lo que le permite mantener un control total sobre estas claves.

En este tema se describe cómo configurar la directiva de claves que necesita para iniciar instancias de
Auto Scaling cuando se especifica un CMK gestionado por el cliente para el cifrado de Amazon EBS.
Note

Amazon EC2 Auto Scaling no necesita autorización adicional para utilizar elAWSPara proteger los
volúmenes cifrados en su cuenta de.

301
Auto Scaling de Amazon EC2 Guía del usuario
AWS KMSdirectiva de claves para
su uso con volúmenes cifrados

Contenido
• Overview (p. 302)
• Configuración de políticas de claves (p. 302)
• Ejemplo 1: Secciones de políticas clave que permiten el acceso a la CMK (p. 303)
• Ejemplo 2: Las secciones de políticas de claves que permiten el acceso entre cuentas a la
CMK (p. 304)
• Edición de directivas clave en elAWS KMSconsole (p. 305)

Overview
Los siguientes ejemplos deAWS KMSLas claves se pueden utilizar para el cifrado de Amazon EBS cuando
Amazon EC2 Auto Scaling lanza instancias:

• AWSCMK administrada por: clave de cifrado de su cuenta que Amazon EBS crea, posee y administra.
Esta es la clave de cifrado predeterminada en las cuentas nuevas. LaAWSLa CMK administrada se
utiliza para el cifrado a menos que se especifique una CMK administrada por el cliente.
• CMK administrada por el clienteClave de cifrado personalizada que cree, posee y administra. Para
obtener más información, consulteCrear clavesen laAWS Key Management ServiceGuía para
desarrolladores.

Nota: La clave debe ser simétrica. Amazon EBS no admite CMK asimétricas.

Puede especificar claves KMS cuando cree una instantánea de cifrada o una plantilla de lanzamiento que
especifique volúmenes cifrados o con el cifrado habilitado de forma predeterminada.

Configuración de políticas de claves


Las claves KMS deben tener una política de claves que permita que Amazon EC2 Auto Scaling inicie
instancias con volúmenes de Amazon EBS cifrados con un CMK gestionado por el cliente.

Utilice los ejemplos de esta página para configurar una política de claves que proporcione a Amazon EC2
Auto Scaling acceso a la CMK administrada por el cliente. Puede modificar la política de claves cuando se
crea la CMK o en un momento posterior.

Como mínimo, debe añadir dos instrucciones a la política de claves de CMK para que funcione con
Amazon EC2 Auto Scaling.

• La primera instrucción permite que la identidad de IAM especificada enPrincipalElemento para utilizar
la CMK directamente. Incluye permisos para realizar las operaciones AWS KMS Encrypt, Decrypt,
ReEncrypt*, GenerateDataKey* y DescribeKey en la CMK.
• La segunda instrucción permite la identidad de IAM especificada en elPrincipalelemento para utilizar
concesiones para delegar un subconjunto de sus propios permisos a Amazon Web Services que están
integrados conAWS KMSu otro principal. Esto les permite utilizar la CMK para crear recursos cifrados en
su nombre.

Cuando añada las nuevas instrucciones a la política de CMK, no cambie las instrucciones existentes en la
política.

En cada uno de los siguientes ejemplos, los argumentos que deben reemplazarse, como los ID de clave
o el nombre de un rol vinculado a servicios, aparecen en cursiva como texto reemplazable. En
la mayoría de los casos, puede sustituir el nombre del rol vinculado a servicios por el de otro rol vinculado
a servicios de Amazon EC2 Auto Scaling. Sin embargo, cuando utilice una configuración de lanzamiento
para lanzar instancias de spot, emplee el rol llamado AWSServiceRoleForEC2Spot.

302
Auto Scaling de Amazon EC2 Guía del usuario
AWS KMSdirectiva de claves para
su uso con volúmenes cifrados

Para obtener más información, consulte los recursos siguientes:

• Para crear una CMK con la AWS CLI, consulte create-key.


• Para actualizar una política de CMK con la AWS CLI, consulte put-key-policy.
• Para encontrar el ID y el nombre de recurso de Amazon (ARN) de una clave, consulteEncontrar el ID y el
ARN de la claveen laAWS Key Management ServiceGuía para desarrolladores.
• Para obtener más información acerca de los roles vinculados a servicios de Amazon EC2 Auto Scaling,
consulteFunciones vinculadas a servicios para Amazon EC2 Auto Scaling (p. 281).
• Para obtener más información acerca de Amazon EBS y KMS,cifrado de Amazon EBS deen laGuía
del usuario de Amazon EC2 para instancias de Linuxy laAWS Key Management ServiceGuía para
desarrolladores.

Ejemplo 1: Secciones de políticas clave que permiten el acceso a


la CMK
Añada las dos instrucciones siguientes a la política de claves de la CMK administrada por el cliente,
sustituyendo el ARN del ejemplo por el ARN del rol vinculado a servicios correspondiente que tiene
permitido el acceso a la CMK. En este ejemplo, las secciones de la política conceden permisos al rol
vinculado al servicio denominado AWSServiceRoleForAutoScaling para utilizar la CMK administrada por el
cliente.

{
"Sid": "Allow service-linked role use of the CMK",
"Effect": "Allow",
"Principal": {
"AWS": [
"arn:aws:iam::123456789012:role/aws-service-role/
autoscaling.amazonaws.com/AWSServiceRoleForAutoScaling"
]
},
"Action": [
"kms:Encrypt",
"kms:Decrypt",
"kms:ReEncrypt*",
"kms:GenerateDataKey*",
"kms:DescribeKey"
],
"Resource": "*"
}

{
"Sid": "Allow attachment of persistent resources",
"Effect": "Allow",
"Principal": {
"AWS": [
"arn:aws:iam::123456789012:role/aws-service-role/
autoscaling.amazonaws.com/AWSServiceRoleForAutoScaling"
]
},
"Action": [
"kms:CreateGrant"
],
"Resource": "*",
"Condition": {
"Bool": {
"kms:GrantIsForAWSResource": true
}
}

303
Auto Scaling de Amazon EC2 Guía del usuario
AWS KMSdirectiva de claves para
su uso con volúmenes cifrados

Ejemplo 2: Las secciones de políticas de claves que permiten el


acceso entre cuentas a la CMK
Si su CMK administrada por el cliente se encuentra en una cuenta diferente a la del grupo Auto Scaling,
debe utilizar una concesión en combinación con la política de claves para permitir el acceso a la CMK.
Para obtener más información, consulteUsar concesionesen laAWS Key Management ServiceGuía para
desarrolladores.

En primer lugar, añada las dos instrucciones siguientes a la política de claves de la CMK, sustituyendo
el ARN de ejemplo por el ARN de la cuenta externa y especificando la cuenta en la que se puede utilizar
la clave. Esto le permite utilizar políticas de IAM para conceder a un usuario o rol de IAM en la cuenta
especificada permiso para crear una concesión para la CMK mediante el comando de la CLI que se indica.
Otorgar a la cuenta acceso completo a la CMK no proporciona por sí solo acceso a la CMK a ningún
usuario o rol de IAM.

{
"Sid": "Allow external account 111122223333 use of the CMK",
"Effect": "Allow",
"Principal": {
"AWS": [
"arn:aws:iam::111122223333:root"
]
},
"Action": [
"kms:Encrypt",
"kms:Decrypt",
"kms:ReEncrypt*",
"kms:GenerateDataKey*",
"kms:DescribeKey"
],
"Resource": "*"
}

{
"Sid": "Allow attachment of persistent resources in external account 111122223333",
"Effect": "Allow",
"Principal": {
"AWS": [
"arn:aws:iam::111122223333:root"
]
},
"Action": [
"kms:CreateGrant"
],
"Resource": "*"
}

A continuación, desde la cuenta externa, cree una concesión que delegue los permisos pertinentes en
el rol vinculado a servicios apropiado. El elemento Grantee Principal de la concesión es el ARN
del rol vinculado al servicio pertinente. El key-id es el ARN de la CMK. A continuación, se muestra un
ejemplo del comando de la CLI create-a-grant que proporciona al rol vinculado al servicio denominado
AWSServiceRoleForAutoScaling en la cuenta permisos 111122223333 para utilizar la CMK en la cuenta
444455556666.

aws kms create-grant \


--region us-west-2 \

304
Auto Scaling de Amazon EC2 Guía del usuario
Validación de la conformidad

--key-id arn:aws:kms:us-west-2:444455556666:key/1a2b3c4d-5e6f-1a2b-3c4d-5e6f1a2b3c4d \
--grantee-principal arn:aws:iam::111122223333:role/aws-service-role/
autoscaling.amazonaws.com/AWSServiceRoleForAutoScaling \
--operations "Encrypt" "Decrypt" "ReEncryptFrom" "ReEncryptTo" "GenerateDataKey"
"GenerateDataKeyWithoutPlaintext" "DescribeKey" "CreateGrant"

Para que este comando se ejecute correctamente, el usuario que realiza la solicitud debe tener permisos
para la acción CreateGrant. La siguiente política de IAM permite que un usuario o un rol de IAM en la
cuenta de111122223333Para crear una subvención para la CMK en la cuenta444455556666.

{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowCreationOfGrantForTheCMKinExternalAccount444455556666",
"Effect": "Allow",
"Action": "kms:CreateGrant",
"Resource": "arn:aws:kms:us-
west-2:444455556666:key/1a2b3c4d-5e6f-1a2b-3c4d-5e6f1a2b3c4d"
}
]
}

Después de conceder estos permisos, todo debería funcionar como se esperaba. Para obtener más
información, consulte esta entrada del foro.

Edición de directivas clave en elAWS KMSconsole


En los ejemplos de las secciones anteriores, se explica únicamente cómo añadir instrucciones a una
política de claves, que es una de las múltiples formas de cambiar una política de claves. La forma más
sencilla de cambiar una política de claves consiste en utilizar laAWS KMSPara las políticas de claves
y convertir a una identidad de IAM (un usuario o un rol) en uno de losusuarios clavepara obtener la
política clave adecuada. Para obtener más información, consulteUso de laAWSVista predeterminada de
Management Consoleen laAWS Key Management ServiceGuía para desarrolladores.
Important

Tenga cuidado. Las instrucciones de la política de la vista predeterminada de la consola contienen


permisos para realizar operaciones Revoke de AWS KMS en la CMK. Si proporciona a una
cuenta externa acceso a una CMK de la cuenta y accidentalmente revoca la concesión que le
daba este permiso, los usuarios externos ya no podrán obtener acceso a sus datos cifrados ni a la
clave que se utilizó para cifrar los datos.

Validación de conformidad de Amazon EC2 Auto


Scaling
La seguridad y la conformidad de Amazon Web Services (AWS) son evaluados por auditores externos
como parte de variosAWSProgramas de conformidad. Estos incluyen SOC, PCI, FedRAMP, HIPAA y otros.

Para obtener una lista deAWSen el ámbito de programas de conformidad específicos,


consulteAWSServicios de en el ámbito del programa de conformidad. Para obtener información general,
consulte Programas de conformidad de AWS.

Puede descargar los informes de auditoría de terceros utilizando AWS Artifact. Para obtener más
información, consulte Descarga de informes en AWS Artifact.

305
Auto Scaling de Amazon EC2 Guía del usuario
Resiliencia

Su responsabilidad de conformidad al utilizar Amazon EC2 Auto Scaling se determina en función de la


confidencialidad de los datos, los objetivos de conformidad de su empresa y de la legislación y normativa
aplicables.AWSproporciona los siguientes recursos para ayudar con la conformidad:

• Guías de inicio rápido de seguridad y cumplimiento: estas guías de implementación tratan


consideraciones sobre arquitectura y ofrecen pasos para implementar los entornos de referencia
centrados en la seguridad y la conformidad enAWS.
• Documento técnico sobre la arquitectura para la seguridad y el cumplimiento de HIPAA— Este
documento técnico describe cómo las empresas pueden utilizarAWSPara crear aplicaciones que se
ajusten al estándar HIPAA.
• AWSRecursos de conformidad: es posible que este conjunto de manuales y guías se apliquen a su
sector y ubicación.
• Evaluación de recursos de con reglas deen laAWS ConfigGuía para desarrolladores— ElAWS Configde
este modo, se evalúa en qué medida las configuraciones de los recursos cumplen las prácticas internas,
las directrices del sector y las normativas.
• AWS Security Hub— EstoAWSproporciona una visión completa de su estado de seguridad dentro
deAWSDe este modo, podrá contrariar el grado de conformidad con las prácticas recomendadas y los
estándares sectoriales.

Resiliencia en Auto Scaling de Amazon EC2


La infraestructura global de AWS está conformada por regiones y zonas de disponibilidad de AWS.

Las regiones de AWS proporcionan varias zonas de disponibilidad físicamente independientes y aisladas
que se encuentran conectadas mediante redes con un alto nivel de rendimiento y redundancia, además de
baja latencia.

Con las zonas de disponibilidad, puede diseñar y utilizar aplicaciones y bases de datos que realizan una
conmutación por error automática entre las zonas sin interrupciones. Las zonas de disponibilidad tienen
una mayor disponibilidad, tolerancia a errores y escalabilidad que las infraestructuras tradicionales de
centros de datos únicos o múltiples.

Para obtener más información sobre las zonas de disponibilidad y las regiones de AWS, consulte
Infraestructura global de AWS.

Temas relacionados

• Resiliencia en Amazon EC2en laGuía del usuario de Amazon EC2 para instancias de Linux

Seguridad de la infraestructura en Amazon EC2


Auto Scaling
Como servicio gestionado, Auto Scaling de Amazon EC2 está protegido por laAWSProcedimientos de
seguridad de red globales de que se describen enAmazon Web Services: Información general sobre
procesos de seguridadDocumento técnico.

UtilizaAWSpara obtener acceso a Amazon EC2 Auto Scaling a través de la red. Los clientes deben ser
compatibles con Transport Layer Security (TLS) 1.0 o una versión posterior. Le recomendamos TLS
1.2 o una versión posterior. Los clientes también deben ser compatibles con conjuntos de cifrado con
confidencialidad directa total (PFS) tales como Ephemeral Diffie-Hellman (DHE) o Elliptic Curve Ephemeral
Diffie-Hellman (ECDHE). La mayoría de los sistemas modernos como Java 7 y posteriores son compatibles
con estos modos.

306
Auto Scaling de Amazon EC2 Guía del usuario
Uso de puntos de enlace de la
VPC para conectividad privada

Además, las solicitudes deben estar firmadas mediante un ID de clave de acceso y una clave de acceso
secreta que esté asociada a una entidad principal de IAM. También puede utilizar AWS Security Token
Service (AWS STS) para generar credenciales de seguridad temporales para firmar solicitudes.

Temas relacionados

• Seguridad de la infraestructura en Amazon EC2en laGuía del usuario de Amazon EC2 para instancias
de Linux

Puntos de conexión de la VPC de tipo interfaz y


escala de Amazon EC2
Puede establecer una conexión privada entre su nube virtual privada (VPC) y la API de Auto Scaling de
Amazon EC2. Puede utilizar esta conexión para llamar a la API de Auto Scaling de Amazon EC2 desde la
VPC sin enviar tráfico por Internet. El punto de enlace proporciona una conectividad fiable y escalable a la
API de Auto Scaling de Amazon EC2. Lo hace sin necesidad de una gateway de Internet, instancia NAT o
conexión de VPN.

Puntos de conexión de la VPC de interfaz cuentan con tecnología de AWS PrivateLink , una característica
que permite la comunicación privada entreAWSmediante direcciones IP privadas. Para obtener más
información, consulte AWS PrivateLink .
Note

Debe habilitar explícitamente cada una de las API a las que desee obtener acceso a través de
un punto de enlace de la VPC de tipo interfaz. Por ejemplo, es posible que también tenga que
configurar un punto de enlace de la VPC de tipo interfaz paraec2.region.amazonaws.compara
utilizar cuando llame a las operaciones de la API de Amazon EC2. Para obtener más información,
consultePuntos de conexión de la VPC de interfaz ( AWS PrivateLink )en laGuía del usuario de
Amazon VPC.

Creación de un punto de enlace de la VPC de tipo


interfaz
Puede crear un punto de enlace de la VPC para el servicio de Auto Scaling de Amazon EC2AWS
Command Line Interface(AWS CLI). Cree un punto de enlace para Auto Scaling de Amazon EC2 con uno
de los siguientes nombres de servicio:

• com.amazonaws.región.autoscaling: crea un punto de enlace para las operaciones de la API de Auto


Scaling de Amazon EC2.

• cn.com.amazonaws.región.autoscaling: crea un punto de enlace para las operaciones de la API de


Auto Scaling de Amazon EC2AWSRegión China (Pekín)AWSRegión China (Ningxia).

Para obtener más información, consulte Creación de un punto de enlace de interfaz en la Guía del usuario
de Amazon VPC.

Habilite el DNS privado para que el punto de enlace pueda realizar solicitudes de API al servicio
admitido utilizando su nombre de host DNS predeterminado(por ejemplo,autoscaling.us-
east-1.amazonaws.com). Cuando se crea un punto de enlace paraAWS, esta configuración está
activada de manera predeterminada. Para obtener más información, consulte Acceso a un servicio a través
de un punto de enlace de interfaz en la Guía del usuario de Amazon VPC.

307
Auto Scaling de Amazon EC2 Guía del usuario
Creación de una política de puntos de enlace de la VPC

No es necesario cambiar ninguna configuración de Auto Scaling de Amazon EC2. Auto Scaling de Amazon
EC2 llama a otrosAWSutilizando los puntos de enlace de servicio o los puntos de conexión de la VPC de
tipo interfaz privada, lo que esté en uso.

Creación de una política de puntos de enlace de la


VPC
Puede asociar una política a su punto de enlace de la VPC para controlar el acceso a la API de Auto
Scaling de Amazon EC2. La política especifica:

• La entidad principal que puede realizar acciones.


• Las acciones que se pueden realizar.
• El recurso en el que se pueden realizar las acciones.

En el ejemplo siguiente, se muestra una política de puntos de enlace de la VPC que deniega a todos los
usuarios el permiso para eliminar una política de escalado a través del punto de enlace. La política de
ejemplo también concede permiso a todos los usuarios para realizar todas las demás acciones.

{
"Statement": [
{
"Action": "*",
"Effect": "Allow",
"Resource": "*",
"Principal": "*"
},
{
"Action": "autoscaling:DeleteScalingPolicy",
"Effect": "Deny",
"Resource": "*",
"Principal": "*"
}
]
}

Para obtener más información, consulteUso de políticas de punto de enlace de la VPCen laGuía del
usuario de Amazon VPC.

308
Auto Scaling de Amazon EC2 Guía del usuario
Recuperación de un mensaje de error

Solución de problemas de Auto


Scaling de Amazon EC2
Amazon EC2 Auto Scaling proporciona errores específicos y descriptivos para ayudarle a solucionar
problemas. Puede encontrar los mensajes de error en la descripción de las actividades de escalado.

Temas
• Recuperación de un mensaje de error de las actividades de escalado (p. 309)
• Solución de problemas de Auto Scaling de Amazon EC2 Fallos de lanzamiento de instancias
EC2 (p. 312)
• Solución de problemas de Auto Scaling de Amazon EC2 ProblAMI con el (p. 318)
• Solución de problemas de Auto Scaling de Amazon EC2 Problemas de carga (p. 319)
• Solución de problemas de Auto Scaling de Amazon EC2 Plantillas de lanzamiento (p. 321)
• Solución de problemas de Auto Scaling de Amazon EC2 Comprobaciones de estado (p. 322)

Recuperación de un mensaje de error de las


actividades de escalado
Para recuperar un mensaje de error de la descripción de las actividades de escalado, utilice ladescribe-
scaling-activitiesEl comando de. Tiene un registro de actividades de escalado que se remonta a 6 semanas
atrás. Las actividades de escalado se ordenan por hora de inicio, con las actividades de escalado más
recientes enumeradas en primer lugar.

Para ver las actividades de escala de un grupo de Auto Scaling específico, utilice el siguiente comando.

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

A continuación se muestra un ejemplo de respuesta, dondeStatusCodecontiene el estado actual de la


actividad yStatusMessagecontiene el mensaje de error.

{
"Activities": [
{
"ActivityId": "3b05dbf6-037c-b92f-133f-38275269dc0f",
"AutoScalingGroupName": "my-asg",
"Description": "Launching a new EC2 instance: i-003a5b3ffe1e9358e. Status
Reason: Instance failed to complete user's Lifecycle Action: Lifecycle Action with token
e85eb647-4fe0-4909-b341-a6c42d8aba1f was abandoned: Lifecycle Action Completed with
ABANDON Result",
"Cause": "At 2021-01-11T00:35:52Z a user request created an AutoScalingGroup
changing the desired capacity from 0 to 1. At 2021-01-11T00:35:53Z an instance was
started in response to a difference between desired and actual capacity, increasing the
capacity from 0 to 1.",
"StartTime": "2021-01-11T00:35:55.542Z",
"EndTime": "2021-01-11T01:06:31Z",
"StatusCode": "Cancelled",
"StatusMessage": "Instance failed to complete user's Lifecycle Action:
Lifecycle Action with token e85eb647-4fe0-4909-b341-a6c42d8aba1f was abandoned: Lifecycle
Action Completed with ABANDON Result",

309
Auto Scaling de Amazon EC2 Guía del usuario
Recuperación de un mensaje de error

"Progress": 100,
"Details": "{\"Subnet ID\":\"subnet-5ea0c127\",\"Availability Zone\":\"us-
west-2b\"...}",
"AutoScalingGroupARN": "arn:aws:autoscaling:us-
west-2:123456789012:autoScalingGroup:283179a2-
f3ce-423d-93f6-66bb518232f7:autoScalingGroupName/my-asg"
},
...
]
}

Para obtener una descripción de los campos de la salida, consulteActividaden laReferencia de la API de
Auto Scaling de Amazon EC2.

Para ver las actividades de escalado para un grupo de Auto Scaling eliminado, agregue el--include-
deleted-groupsa ladescribe-scaling-activitiesComando de la:

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


deleted-groups

A continuación se muestra un ejemplo de respuesta con una actividad de escalado para un grupo
eliminado.

{
"Activities": [
{
"ActivityId": "e1f5de0e-f93e-1417-34ac-092a76fba220",
"AutoScalingGroupName": "my-asg",
"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.",
"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"
},
...
]
}

En las tablas siguientes se relacionan los tipos de mensajes de error y se proporcionan enlaces a recursos
de solución de problemas que puede utilizar para solucionar sus problemas.

Problemas de lanzamiento

Problema Mensaje de error

Zona de disponibilidad La zona de disponibilidad solicitada ya no se admite. Vuelva a realizar la


solicitud... (p. 314)

310
Auto Scaling de Amazon EC2 Guía del usuario
Recuperación de un mensaje de error

Problema Mensaje de error

Mapeo de dispositivos Carga de nombre de dispositivo no válido. El lanzamiento de la instancia EC2


de bloques ha producido un error. (p. 315)

Mapeo de dispositivos El valor (<nombre asociado al dispositivo de almacenamiento de la instancia>)


de bloques del parámetro virtualName no es válido... (p. 315)

Mapeo de dispositivos Mapeos de dispositivos de bloques de EBS no admitidos para las AMI del
de bloques almacén de instancias. (p. 315)

Configuración de La configuración solicitada no se admite actualmente. (p. 313)


instancias

Tipo de instancia y zona el tipo de instancia solicitado (<tipo de instancia>) ya no es compatible


de disponibilidad con la zona de disponibilidad solicitada (<zona de disponibilidad de la
instancia>)... (p. 314)

Capacidad insuficiente En la actualidad, no dispone de suficiente <instance type> capacidad en la


en la zona de zona de disponibilidad que ha solicitado... El lanzamiento de la instancia EC2
disponibilidad ha producido un error. (p. 317)

Capacidad de instancia No hay capacidad puntual disponible que coincida con su solicitud. El
insuficiente para una lanzamiento de la instancia EC2 ha producido un error. (p. 317)
solicitud puntual

Par de claves El par de claves <par de claves asociado a la instancia EC2> no existe. El
lanzamiento de la instancia EC2 ha producido un error. (p. 314)

Grupo de ubicación Los grupos de ubicación no se pueden utilizar con instancias de


tipo "m1.large". El lanzamiento de la instancia EC2 ha producido un
error. (p. 316)

Límites de cuotas Ya se están ejecutando <número de instancias> instancias. El lanzamiento de


la instancia EC2 ha producido un error. (p. 318)

Grupo de seguridad El grupo de seguridad <nombre del grupo de seguridad > no existe. El
lanzamiento de la instancia EC2 ha producido un error. (p. 313)

Función vinculada al Client.InternalError: Error del cliente en el lanzamiento. (p. 316)


servicio

Precio de spot Su precio de solicitud puntual de 0.015 es menor que el precio mínimo
demasiado bajo requerido de cumplimiento de solicitud puntual de 0.0735... (p. 314)

ProblAMI con el

Problema Mensaje de error

ID de AMI El ID de AMI <ID de la AMI> no existe. El lanzamiento de la instancia EC2 ha


producido un error. (p. 318)

ID de AMI La AMI <ID de AMI> está pendiente y no se puede ejecutar. El lanzamiento de


la instancia EC2 ha producido un error. (p. 319)

ID de AMI El valor (<ID de AMI>) del parámetro virtualName no es válido. (p. 319)

311
Auto Scaling de Amazon EC2 Guía del usuario
Error de lanzamiento de la instancia

Problema Mensaje de error

Arquitectura no La arquitectura del tipo de instancia solicitado (i386) no coincide con la


coincidente arquitectura del manifiesto para ami-6622f00f (x86_64). El lanzamiento de la
instancia EC2 ha producido un error. (p. 319)

Problemas de carga

Problema Mensaje de error

No se puede encontrar No se puede encontrar el balanceador de carga <su entorno de lanzamiento>.


el balanceador de carga Error al validar la configuración del balanceador de carga. (p. 320)

Instancias en VPC La instancia EC2 <ID de instancia> no está en VPC. Error al actualizar la
configuración del balanceador de carga. (p. 321)

No hay ningún No hay ningún balanceador de carga ACTIVO denominado <nombre del
balanceador de carga balanceador de carga>. Error al actualizar la configuración del balanceador de
activo carga. (p. 320)

Solución de problemas de Auto Scaling de Amazon


EC2 Fallos de lanzamiento de instancias EC2
En esta página se proporciona información acerca de las instancias EC2 que no se pueden lanzar, las
causas posibles y los pasos que puede realizar para resolver el problema.

Para recuperar un mensaje de error, consulte Recuperación de un mensaje de error de las actividades de
escalado (p. 309).

Cuando su instancia EC2 no se puede lanzar, es posible que aparezca un mensaje de error similar a los
siguientes:

Problemas de lanzamiento
• La configuración solicitada no se admite actualmente. (p. 313)
• El grupo de seguridad <nombre del grupo de seguridad > no existe. El lanzamiento de la instancia EC2
ha producido un error. (p. 313)
• El par de claves <par de claves asociado a la instancia EC2> no existe. El lanzamiento de la instancia
EC2 ha producido un error. (p. 314)
• La zona de disponibilidad solicitada ya no se admite. Vuelva a realizar la solicitud... (p. 314)
• el tipo de instancia solicitado (<tipo de instancia>) ya no es compatible con la zona de disponibilidad
solicitada (<zona de disponibilidad de la instancia>)... (p. 314)
• Su precio de solicitud puntual de 0.015 es menor que el precio mínimo requerido de cumplimiento de
solicitud puntual de 0.0735... (p. 314)
• Carga de nombre de dispositivo no válido. El lanzamiento de la instancia EC2 ha producido un
error. (p. 315)
• El valor (<nombre asociado al dispositivo de almacenamiento de la instancia>) del parámetro
virtualName no es válido... (p. 315)
• Mapeos de dispositivos de bloques de EBS no admitidos para las AMI del almacén de
instancias. (p. 315)

312
Auto Scaling de Amazon EC2 Guía del usuario
La configuración solicitada no se admite actualmente.

• Los grupos de ubicación no se pueden utilizar con instancias de tipo "m1.large". El lanzamiento de la
instancia EC2 ha producido un error. (p. 316)
• Client.InternalError: Error del cliente en el lanzamiento. (p. 316)
• En la actualidad, no dispone de suficiente <instance type> capacidad en la zona de disponibilidad que
ha solicitado... El lanzamiento de la instancia EC2 ha producido un error. (p. 317)
• No hay capacidad puntual disponible que coincida con su solicitud. El lanzamiento de la instancia EC2
ha producido un error. (p. 317)
• Ya se están ejecutando <número de instancias> instancias. El lanzamiento de la instancia EC2 ha
producido un error. (p. 318)

La configuración solicitada no se admite actualmente.


• Causa: Es posible que algunas opciones de la plantilla de inicio o la configuración de inicio no sean
compatibles con el tipo de instancia, o que la configuración de instancia no sea compatible con
elAWSZonas de disponibilidad o región.
• Solución:

Pruebe una configuración de instancia diferente. Para buscar un tipo de instancia que cumpla sus
requisitos, consulteBúsqueda de un tipo de instancia Amazon EC2en laGuía del usuario de Amazon EC2
para instancias de Linux.

Para obtener más información para resolver este problema, consulte lo siguiente:
• Asegúrese de haber elegido una AMI compatible con su tipo de instancia. Por ejemplo, si el tipo de
instancia utiliza unAWSProcesador Graviton en lugar de un procesador Intel Xeon, necesita una AMI
compatible con ARM.
• Compruebe que el tipo de instancia está disponible en las zonas de disponibilidad y región solicitadas.
Es posible que los tipos de instancia de última generación aún no estén disponibles en una región o
zona de disponibilidad determinada. Es posible que los tipos de instancias de la generación anterior
no estén disponibles en las regiones y zonas de disponibilidad más recientes. Para buscar tipos de
instancia ofrecidos por ubicación (Región o Zona de disponibilidad), utilice ladescribe-instance-type-
offeringsEl comando de. Para obtener más información, consulteBúsqueda de un tipo de instancia
Amazon EC2en laGuía del usuario de Amazon EC2 para instancias de Linux.
• Si utiliza instancias dedicadas o hosts dedicados, asegúrese de haber elegido un tipo de instancia
admitido como instancia dedicada o host dedicado.

El grupo de seguridad <nombre del grupo de


seguridad > no existe. El lanzamiento de la instancia
EC2 ha producido un error.
• Causa: Es posible que se haya eliminado el grupo de seguridad especificado en la plantilla de
lanzamiento o en la configuración de lanzamiento.
• Solución:
1. Utilice el comando describe-security-groups para obtener la lista de los grupos de seguridad
asociados a su cuenta.
2. En la lista, seleccione los grupos de seguridad que desea usar. Si lo que desea es crear un grupo de
seguridad, utilice el comando create-security-group.
3. Cree una nueva plantilla de lanzamiento o una configuración de lanzamiento.
4. Actualice el grupo de Auto Scaling con la nueva plantilla de lanzamiento o la configuración de
lanzamiento usandoupdate-auto-scaling-groupEl comando de.

313
Auto Scaling de Amazon EC2 Guía del usuario
El par de claves <par de claves asociado a
la instancia EC2> no existe. El lanzamiento
de la instancia EC2 ha producido un error.

El par de claves <par de claves asociado a la instancia


EC2> no existe. El lanzamiento de la instancia EC2 ha
producido un error.
• Causa: Puede que se haya eliminado el key pair al lanzar la instancia.
• Solución:
1. Utilice el comando describe-key-pairs para obtener la lista de los pares de claves disponibles.
2. En la lista, seleccione el par de claves que desea usar. Si lo que desea es crear un par de claves,
utilice el comando create-key-pair.
3. Cree una nueva plantilla de lanzamiento o una configuración de lanzamiento.
4. Actualice el grupo de Auto Scaling con la nueva plantilla de lanzamiento o la configuración de
lanzamiento usandoupdate-auto-scaling-groupEl comando de.

La zona de disponibilidad solicitada ya no se admite.


Vuelva a realizar la solicitud...
• Mensaje de error: La zona de disponibilidad solicitada ya no se admite. Vuelva a realizar la solicitud
sin especificar ninguna zona de disponibilidad o elija <lista de zonas de disponibilidad disponibles>. El
lanzamiento de la instancia EC2 ha producido un error.
• Causa: : puede que la zona de disponibilidad asociada al grupo de Auto Scaling no esté disponible
actualmente.
• Solución: Actualice el grupo de Auto Scaling con las recomendaciones del mensaje de error.

el tipo de instancia solicitado (<tipo de instancia>)


ya no es compatible con la zona de disponibilidad
solicitada (<zona de disponibilidad de la instancia>)...
• Mensaje de error: El tipo de instancia solicitado (<instance type>) no es compatible con la zona de
disponibilidad solicitada (<instance Availability Zone>). Realice de nuevo la solicitud sin especificar
ninguna zona de disponibilidad o elija <lista de zonas de disponibilidad que admite el tipo de instancia>.
El lanzamiento de la instancia EC2 ha producido un error.
• Causa: Es posible que el tipo de instancia seleccionado no se encuentre disponible en las zonas de
disponibilidad especificadas en el grupo de Auto Scaling.
• Solución: Actualice el grupo de Auto Scaling con las recomendaciones del mensaje de error.

Su precio de solicitud puntual de 0.015 es menor


que el precio mínimo requerido de cumplimiento de
solicitud puntual de 0.0735...
• Causa: El precio máximo de spot de la solicitud es inferior al precio de spot del tipo de instancia
seleccionado.
• Solución: Envíe una nueva solicitud con un precio máximo puntual más alto (posiblemente el precio bajo
demanda). Anteriormente, el precio puntual que pagabas se basaba en pujas. Hoy, usted paga el precio

314
Auto Scaling de Amazon EC2 Guía del usuario
Carga de nombre de dispositivo no válido. El
lanzamiento de la instancia EC2 ha producido un error.

puntual actual. Al establecer su precio máximo más alto, ofrece al servicio Spot Amazon EC2 una mejor
oportunidad de lanzar y mantener la cantidad de capacidad requerida.

Carga de nombre de dispositivo no válido. El


lanzamiento de la instancia EC2 ha producido un
error.
• Causa: : puede que el mapeo de dispositivos de bloques de su plantilla de lanzamiento o configuración
de lanzamiento contenga nombres de dispositivos de bloques que no estén disponibles o que no se
admitan actualmente.
• Solución:
1. Utilice el comando describe-volumes para ver cómo se exponen los volúmenes en la instancia.
2. Cree una nueva plantilla de lanzamiento o una nueva configuración de lanzamiento utilizando el
nombre del dispositivo que se muestra en la descripción del volumen.
3. Actualice el grupo de Auto Scaling con la nueva plantilla de lanzamiento o la configuración de
lanzamiento usandoupdate-auto-scaling-groupEl comando de.

El valor (<nombre asociado al dispositivo de


almacenamiento de la instancia>) del parámetro
virtualName no es válido...
• Mensaje de error: El valor (<name associated with the instance storage device>) del parámetro
virtualName no es válido. Formato esperado: 'ephemeralNUMBER". El lanzamiento de la instancia EC2
ha producido un error.
• Causa: El formato especificado para el nombre virtual asociado al dispositivo de bloques es incorrecto.
• Solución:
1. Cree una nueva plantilla de lanzamiento o una configuración de lanzamiento especificando el nombre
del dispositivo en lavirtualNameParámetro. Para obtener más información sobre el formato de
nombres de dispositivo, consulteNomenclatura de dispositivos en instancias Linuxen laGuía del
usuario de Amazon EC2 para instancias de Linux.
2. Actualice el grupo de Auto Scaling con la nueva plantilla de lanzamiento o la configuración de
lanzamiento usandoupdate-auto-scaling-groupEl comando de.

Mapeos de dispositivos de bloques de EBS no


admitidos para las AMI del almacén de instancias.
• Causa: Las mapeos de dispositivos de bloques especificadas en la plantilla de lanzamiento o en la
configuración de lanzamiento no se admiten en la instancia.
• Solución:
1. Cree una nueva plantilla de lanzamiento o una nueva configuración de lanzamiento con mapeos
de dispositivos de bloques compatibles con el tipo de instancia. Para obtener más información,
consulteMapeo de dispositivos de bloquesen laGuía del usuario de Amazon EC2 para instancias de
Linux.
2. Actualice el grupo de Auto Scaling con la nueva plantilla de lanzamiento o la configuración de
lanzamiento usandoupdate-auto-scaling-groupEl comando de.

315
Auto Scaling de Amazon EC2 Guía del usuario
Los grupos de ubicación no se pueden utilizar
con instancias de tipo "m1.large". El lanzamiento
de la instancia EC2 ha producido un error.

Los grupos de ubicación no se pueden utilizar con


instancias de tipo "m1.large". El lanzamiento de la
instancia EC2 ha producido un error.
• Causa: El grupo de ubicación en clúster contiene un tipo de instancia no válido.
• Solución:
1. Para obtener información sobre los tipos de instancia válidos admitidos por los grupos de ubicación,
consulteGrupos de ubicaciónen laGuía del usuario de Amazon EC2 para instancias de Linux.
2. Siga las instrucciones que se detallan en elGrupos de ubicaciónpara crear un nuevo grupo de
ubicación.
3. Otra opción es crear una nueva plantilla de lanzamiento o una nueva configuración de lanzamiento
con el tipo de instancia compatible.
4. Actualice el grupo de Auto Scaling con un nuevo grupo de ubicación, una plantilla de lanzamiento o
una nueva configuración de lanzamiento usando laupdate-auto-scaling-groupEl comando de.

Client.InternalError: Error del cliente en el lanzamiento.


• Problema: Amazon EC2 Auto Scaling intenta lanzar una instancia que tiene un volumen de EBS cifrado,
pero la función vinculada al servicio no tiene acceso a la CMK administrada por el cliente que se utiliza
para cifrarlo. Para obtener más información, consulte Política de claves CMK necesarias para su uso con
volúmenes cifrados (p. 301).
• Causa 1: Necesita una directiva clave que dé permiso para usar el CMK para el rol vinculado al servicio
adecuado.
• Solución 1: Permita que el rol vinculado al servicio use la CMK tal y como se indica a continuación:
1. Determine qué función vinculada al servicio se va a utilizar para este grupo de Auto Scaling.
2. Actualice la política de claves en la CMK y permita que el rol vinculado al servicio utilice la CMK.
3. Actualice el grupo de Auto Scaling para que utilice el rol vinculado al servicio.

Para obtener un ejemplo de una directiva clave que permite que el rol vinculado al servicio utilice el
CMK, consulteEjemplo 1: Secciones de políticas clave que permiten el acceso a la CMK (p. 303).
• Causa 2: Si el grupo de CMK y Auto Scaling están enDiferentes AWS, debe configurar el acceso entre
cuentas al CMK para dar permiso para usar el CMK para el rol vinculado al servicio adecuado.
• Solución 2: Permita que la función vinculada al servicio de la cuenta externa use la CMK en la cuenta
local tal y como se indica a continuación:
1. : actualice la política de claves en la CMK para permitir el acceso de la cuenta del grupo de Auto
Scaling a la CMK.
2. Defina un usuario o función de IAM en la cuenta del grupo de Auto Scaling que pueda conceder
permisos.
3. Determine qué función vinculada al servicio se va a utilizar para este grupo de Auto Scaling.
4. Cree una concesión a la CMK con la función vinculada al servicio adecuada como la entidad principal
beneficiaria.
5. Actualice el grupo de Auto Scaling para que utilice el rol vinculado al servicio.

Para obtener más información, consulte Ejemplo 2: Las secciones de políticas de claves que permiten el
acceso entre cuentas a la CMK (p. 304).
• Solución 3: Use un CMK en el mismoAWScomo el grupo de Auto Scaling.
1. Copie y vuelva a cifrar la instantánea con otra CMK que pertenezca a la misma cuenta que el grupo
de Auto Scaling.
316
Auto Scaling de Amazon EC2 Guía del usuario
En la actualidad, no dispone de suficiente <instance type>
capacidad en la zona de disponibilidad que ha solicitado...
El lanzamiento de la instancia EC2 ha producido un error.
2. Permita que el rol vinculado al servicio use la nueva CMK. Consulte los pasos que se indican para la
Solución 1.

En la actualidad, no dispone de suficiente <instance


type> capacidad en la zona de disponibilidad que ha
solicitado... El lanzamiento de la instancia EC2 ha
producido un error.
• Mensaje de error: En la actualidad, no dispone de suficiente <instance type> capacidad en la zona de
disponibilidad que ha solicitado (<requested Availability Zone>). Estamos trabajando para aprovisionar
capacidad adicional. Puede obtener capacidad para <tipo de instancia> sin especificar una zona de
disponibilidad en la solicitud o eligiendo <lista de zonas de disponibilidad que admite actualmente el tipo
de instancia>. El lanzamiento de la instancia EC2 ha producido un error.
• Causa: En este momento, Amazon EC2 no admite el tipo de instancia en la zona de disponibilidad
solicitada.
• Solución:

Para resolver este problema, pruebe lo siguiente:


• Espere unos minutos y después envíe la solicitud de nuevo; la capacidad puede cambiar
frecuentemente.
• : envíe una solicitud de siguiendo las recomendaciones del mensaje de error.
• Envíe una nueva solicitud con una cantidad reducida de instancias.

No hay capacidad puntual disponible que coincida con


su solicitud. El lanzamiento de la instancia EC2 ha
producido un error.
• Causa: En este momento, no hay suficiente capacidad disponible para satisfacer su solicitud de
instancias puntuales.
• Solución:

Para resolver este problema, pruebe lo siguiente:


• Espere unos minutos; la capacidad puede cambiar frecuentemente. La solicitud de spot sigue
realizando automáticamente la solicitud de lanzamiento hasta que haya capacidad disponible. Cuando
la capacidad esté disponible, el servicio Spot de Amazon EC2 satisface la solicitud de subasta.
• Siga la práctica recomendada de utilizar un conjunto diverso de tipos de instancia para que no
dependa de un tipo de instancia específico. Para obtener más información, incluida una lista de
prácticas recomendadas para utilizar las instancias puntuales correctamente, consulteGrupos de Auto
Scaling con varios tipos de instancias y opciones de compra (p. 56).
• Envíe una nueva solicitud con una cantidad reducida de instancias.

317
Auto Scaling de Amazon EC2 Guía del usuario
Ya se están ejecutando <número de instancias> instancias.
El lanzamiento de la instancia EC2 ha producido un error.

Ya se están ejecutando <número de instancias>


instancias. El lanzamiento de la instancia EC2 ha
producido un error.
• Causa: Ha alcanzado el límite del número total de instancias que puede lanzar en una región. Cuando
crea la cuenta de AWS, establecemos los límites predeterminados en el número de instancias que
puede ejecutar por región.
• Solución:

Para resolver este problema, pruebe lo siguiente:


• Si los límites actuales no son suficientes para sus necesidades, puede solicitar un aumento de cuota
por región. Para obtener más información, consulteCuotas de servicio Amazon EC2en laGuía del
usuario de Amazon EC2 para instancias de Linux.
• Envíe una nueva solicitud con una cantidad reducida de instancias.

Solución de problemas de Auto Scaling de Amazon


EC2 ProblAMI con el
En esta página se proporciona información acerca de los problemas asociados con las AMI, las causas
posibles y los pasos que puede realizar para resolver los problemas.

Para recuperar un mensaje de error, consulte Recuperación de un mensaje de error de las actividades de
escalado (p. 309).

Cuando las instancias EC2 no se pueden lanzar debido a problemas con su AMI, puede recibir uno o
varios mensajes de error similares a los siguientes.

ProblAMI con el
• El ID de AMI <ID de la AMI> no existe. El lanzamiento de la instancia EC2 ha producido un
error. (p. 318)
• La AMI <ID de AMI> está pendiente y no se puede ejecutar. El lanzamiento de la instancia EC2 ha
producido un error. (p. 319)
• El valor (<ID de AMI>) del parámetro virtualName no es válido. (p. 319)
• La arquitectura del tipo de instancia solicitado (i386) no coincide con la arquitectura del manifiesto para
ami-6622f00f (x86_64). El lanzamiento de la instancia EC2 ha producido un error. (p. 319)

El ID de AMI <ID de la AMI> no existe. El lanzamiento


de la instancia EC2 ha producido un error.
• Causa: Después AMI crear la plantilla de lanzamiento o la configuración de lanzamiento.
• Solución:
1. Cree una nueva plantilla de lanzamiento o una configuración de lanzamiento con una AMI válida.
2. Actualice el grupo de Auto Scaling con la nueva plantilla de lanzamiento o la configuración de
lanzamiento usandoupdate-auto-scaling-groupEl comando de.

318
Auto Scaling de Amazon EC2 Guía del usuario
La AMI <ID de AMI> está pendiente y no se puede ejecutar.
El lanzamiento de la instancia EC2 ha producido un error.

La AMI <ID de AMI> está pendiente y no se puede


ejecutar. El lanzamiento de la instancia EC2 ha
producido un error.
• Causa: Es posible que acabe de crear su AMI (tomando una snapshot de una instancia en ejecución o
de otra manera) y que aún no esté disponible.
• Solución: Debe esperar a que la AMI esté disponible y, a continuación, crear la plantilla de lanzamiento o
la configuración de lanzamiento.

El valor (<ID de AMI>) del parámetro virtualName no


es válido.
• Causa: Valor incorrecto. El parámetro virtualName hace referencia al nombre virtual asociado al
dispositivo.
• Solución:
1. Cree una nueva plantilla de lanzamiento o una nueva configuración de lanzamiento especificando el
nombre del dispositivo virtual de la instancia para elvirtualNameParámetro.
2. Actualice el grupo de Auto Scaling con la nueva plantilla de lanzamiento o la configuración de
lanzamiento usandoupdate-auto-scaling-groupEl comando de.

La arquitectura del tipo de instancia solicitado (i386)


no coincide con la arquitectura del manifiesto para
ami-6622f00f (x86_64). El lanzamiento de la instancia
EC2 ha producido un error.
• Causa: La arquitectura delInstanceTypeque se menciona en la plantilla de lanzamiento o la
configuración de lanzamiento no coincide con la arquitectura de la imagen.
• Solución:
1. Cree una nueva plantilla de lanzamiento o una nueva configuración de lanzamiento utilizando la
arquitectura de AMI que coincida con la arquitectura del tipo de instancia solicitado.
2. Actualice el grupo de Auto Scaling con la nueva plantilla de lanzamiento o la configuración de
lanzamiento usandoupdate-auto-scaling-groupEl comando de.

Solución de problemas de Auto Scaling de Amazon


EC2 Problemas de carga
En esta página se proporciona información sobre los problemas causados por el balanceador de carga
asociado con su grupo de Auto Scaling, las causas posibles y los pasos que puede realizar para resolver
los problemas.

Para recuperar un mensaje de error, consulte Recuperación de un mensaje de error de las actividades de
escalado (p. 309).

319
Auto Scaling de Amazon EC2 Guía del usuario
No se puede encontrar el balanceador de carga
<su entorno de lanzamiento>. Error al validar
la configuración del balanceador de carga.
Cuando sus instancias EC2 no se pueden lanzar debido a problemas con el balanceador de carga
asociado con su grupo de Auto Scaling, es posible que aparezcan uno o varios mensajes de error similares
a los siguientes.

Problemas de carga
• No se puede encontrar el balanceador de carga <su entorno de lanzamiento>. Error al validar la
configuración del balanceador de carga. (p. 320)
• No hay ningún balanceador de carga ACTIVO denominado <nombre del balanceador de carga>. Error
al actualizar la configuración del balanceador de carga. (p. 320)
• La instancia EC2 <ID de instancia> no está en VPC. Error al actualizar la configuración del
balanceador de carga. (p. 321)
• La instancia EC2 <ID de instancia> está en VPC. Error al actualizar la configuración del balanceador
de carga. (p. 321)

No se puede encontrar el balanceador de carga


<su entorno de lanzamiento>. Error al validar la
configuración del balanceador de carga.
• Causa 1: El balanceador de carga se ha eliminado.
• Solución 1:
1. Compruebe si el balanceador de carga sigue existiendo. Puede utilizar el comando describe-load-
balancers.
2. Si el balanceador de carga aparece en la respuesta, consulte la Causa 2.
3. Si el balanceador de carga no figura en la respuesta, puede crear un nuevo balanceador de carga y,
a continuación, crear un nuevo grupo de Auto Scaling o puede crear un nuevo grupo de Auto Scaling
sin el balanceador de carga.
• Causa 2: El nombre del balanceador de carga no se ha especificado en el orden correcto al crear el
grupo de Auto Scaling.
• Solución 2: Cree un nuevo grupo de Auto Scaling y especifique el nombre del balanceador de carga al
final.

No hay ningún balanceador de carga ACTIVO


denominado <nombre del balanceador de carga>.
Error al actualizar la configuración del balanceador de
carga.
• Causa: Puede que se haya eliminado el balanceador especificado.
• Solución: Es posible crear un nuevo balanceador de carga y, a continuación, crear un nuevo grupo de
Auto Scaling o crear un nuevo grupo de Auto Scaling sin el balanceador de carga.

320
Auto Scaling de Amazon EC2 Guía del usuario
La instancia EC2 <ID de instancia> no está en VPC. Error
al actualizar la configuración del balanceador de carga.

La instancia EC2 <ID de instancia> no está en VPC.


Error al actualizar la configuración del balanceador de
carga.
• Causa: La instancia especificada no existe en la VPC.
• Solución: : puede eliminar el balanceador de carga asociado a la instancia o crear un nuevo grupo de
Auto Scaling.

La instancia EC2 <ID de instancia> está en VPC.


Error al actualizar la configuración del balanceador de
carga.
• Causa: El balanceador de carga está en EC2-Classic, pero el grupo de Auto Scaling está en una VPC.
• Solución: Asegúrese de que el balanceador de carga y el grupo de Auto Scaling estén en la misma red
(EC2-Classic o VPC).

Solución de problemas de Auto Scaling de Amazon


EC2 Plantillas de lanzamiento
Utilice la siguiente información para diagnosticar y solucionar los problemas comunes que puedan surgir
cuando se utiliza una plantilla de lanzamiento con su grupo de Auto Scaling.

No tiene autorización para realizar esta operación


Problema: Cuando intenta especificar una plantilla de lanzamiento, obtiene el error «No está autorizado a
realizar esta operación».

Causa 1: Si está intentando utilizar una plantilla de lanzamiento y las credenciales de IAM que está
utilizando no tienen suficientes permisos, recibirá un error que indica que no tiene autorización para utilizar
la plantilla de lanzamiento.

Solución 1: Compruebe que el usuario o rol de IAM que está utilizando para realizar la solicitud tiene
permisos para llamar a las acciones de API EC2 que necesita, incluido elec2:RunInstancesaction.
Si ha especificado etiquetas en la plantilla de lanzamiento, también debe tener permiso para usar
laec2:CreateTagsaction. Para ver un tema que muestra cómo puede crear su propia política para
permitir exactamente lo que desea que su usuario o rol de IAM pueda hacer, consulteSoporte para
plantillas de lanzamiento de (p. 295).

Solución 2: Compruebe que su usuario o rol de IAM está utilizando elAmazonEC2FullAccessPolítica.


EsteAWSgarantiza acceso completo a todos los recursos de Amazon EC2 y servicios relacionados,
incluidos Amazon EC2 Auto Scaling, CloudWatch y Elastic Load Balancing.

Causa 2: Si intenta utilizar una plantilla de inicio que especifique un perfil de instancia, debe tener permiso
para pasar el rol de IAM asociado al perfil de instancia.

Solución 3: Compruebe que el usuario o función de IAM que está utilizando para realizar la solicitud tiene
los permisos adecuados para transferir la función especificada al servicio de Auto Scaling de Amazon EC2.

321
Auto Scaling de Amazon EC2 Guía del usuario
Comprobaciones de estado

Para obtener más información, consulte Función de IAM para aplicaciones que se ejecutan en instancias
Amazon EC2 (p. 300).

Para obtener más información sobre los temas relacionados con los perfiles de instancia, consulteSolución
de problemas de Amazon EC2 e IAMen laGuía del usuario de IAM.

Solución de problemas de Auto Scaling de Amazon


EC2 Comprobaciones de estado
Esta página proporciona información sobre las instancias de EC2 que terminan debido a una
comprobación de estado. Describe posibles causas y los pasos que puede adoptar para resolver los
problemas.

Para recuperar un mensaje de error, consulte Recuperación de un mensaje de error de las actividades de
escalado (p. 309).

Problemas Health comprobación de estado


• Se sacó de servicio una instancia en respuesta a un error de comprobación del estado de la instancia
EC2 (p. 322)
• Se sacó de servicio una instancia en respuesta a un reinicio programado de EC2 (p. 323)
• Se sacó de servicio una instancia en respuesta a una comprobación de estado de EC2 que indicaba
que se había terminado o detenido (p. 323)
• Se sacó de servicio una instancia en respuesta a un error de comprobación de estado del sistema
ELB (p. 324)

Note

Puede recibir una notificación cuando Amazon EC2 Auto Scaling finalice las instancias del grupo
Auto Scaling, incluso cuando la causa de la terminación de la instancia no sea el resultado de una
actividad de escalado. Para obtener más información, consulte Obtener notificaciones de Amazon
SNS cuando su grupo de Auto Scaling se escala (p. 259).
En las secciones siguientes se describen los errores y causas de comprobación de estado más
comunes que encontrará. Si tiene un problema diferente, consulte la siguienteAWSArtículos de
Knowledge Center para obtener ayuda adicional para solucionar problemas:

• ¿Por qué ha terminado una instancia de Amazon EC2 Auto Scaling?


• ¿Por qué Amazon EC2 Auto Scaling no ha terminado una instancia que no está en buen
estado?

Se sacó de servicio una instancia en respuesta a un


error de comprobación del estado de la instancia EC2
Problema: Las instancias de Auto Scaling fallan en las comprobaciones de estado de Amazon EC2.

Causa 1: Si hay problemas que provocan que Amazon EC2 considere las instancias de su grupo de
Auto Scaling deterioradas, Amazon EC2 Auto Scaling reemplaza automáticamente las instancias con
problemas como parte de su comprobación de estado. Las comprobaciones de estado están integradas
en Amazon EC2, de manera que no se pueden deshabilitar ni eliminar. Cuando una comprobación de
estado de instancias falla, debe resolver el problema por sí mismo realizando cambios en la configuración
de instancias hasta que la aplicación ya no presenta ningún problema.

322
Auto Scaling de Amazon EC2 Guía del usuario
Se sacó de servicio una instancia en
respuesta a un reinicio programado de EC2

Solución 1: Para solucionar este problema, siga estos pasos:

1. Cree manualmente una instancia de Amazon EC2 que no forme parte del grupo de Auto Scaling e
investigue el problema. Para obtener ayuda general sobre la investigación de instancias con problemas,
consulteSolucionar problemas de las instancias con comprobaciones de estado no superadasen laGuía
del usuario de Amazon EC2 para instancias de LinuxySolución de problemas de las instancias de
Windowsen laGuía del usuario de Amazon EC2.
2. Después de confirmar que todo funciona, implemente una nueva configuración de instancia sin errores
en el grupo Auto Scaling.
3. Elimine la instancia que ha creado para evitar cargos continuos en suAWSaccount.

Causa 2: Hay una discrepancia entre el período de gracia de la comprobación de estado y el tiempo de
inicio de la instancia.

Solución 2: Edite el período de gracia de la comprobación de estado del grupo Auto Scaling a un período
de tiempo adecuado para su aplicación. Las instancias lanzadas en un grupo de Auto Scaling requieren
suficiente tiempo de calentamiento (período de gracia) para evitar la terminación anticipada debido a un
reemplazo de comprobación de estado. Para obtener más información, consulte Período de gracia de
Health (p. 240).

Se sacó de servicio una instancia en respuesta a un


reinicio programado de EC2
Problema: Las instancias de Auto Scaling se reemplazan inmediatamente cuando un evento programado
indica un problema con la instancia.

Causa: Amazon EC2 Auto Scaling reemplaza las instancias con un futuro evento de mantenimiento o
retirada programado antes de la hora programada.

Solución: Estos eventos no ocurren con frecuencia. Si no desea que se reemplacen las instancias debido
a un evento programado, puede suspender el proceso de comprobación de estado de un grupo de Auto
Scaling. Para obtener más información, consulte Suspensión y reanudación de un proceso para un grupo
de Auto Scaling (p. 232).

Alternativamente, si necesita que suceda algo en la instancia que está terminando o en la instancia
que se está iniciando, puede usar ganchos de ciclo de vida. Estos enlaces permiten realizar una acción
personalizada a medida que Amazon EC2 Auto Scaling lanza o termina instancias. Para obtener más
información, consulte Enganches de ciclo de vida de Amazon EC2 Auto Scaling (p. 184).

Se sacó de servicio una instancia en respuesta a una


comprobación de estado de EC2 que indicaba que se
había terminado o detenido
Problema: Las instancias de Auto Scaling que han sido detenidas, reiniciadas o terminadas se reemplazan.

Causa 1: Un usuario detuvo, reinició o finalizó manualmente la instancia.

Solución 1: Si se produce un error en una comprobación de estado porque un usuario detuvo, reinició
o finalizó manualmente la instancia, esto se debe al funcionamiento de las comprobaciones de estado
de Auto Scaling de Amazon EC2. La instancia debe estar sana y alcanzable. Si necesita reiniciar
las instancias en su grupo de Auto Scaling, le recomendamos que ponga las instancias en espera
primero. Para obtener más información, consulte Eliminación temporal de instancias del grupo de Auto
Scaling (p. 228).

323
Auto Scaling de Amazon EC2 Guía del usuario
Se sacó de servicio una instancia en respuesta a un
error de comprobación de estado del sistema ELB

Tenga en cuenta que cuando finaliza instancias manualmente, los enlaces del ciclo de vida de terminación
y la anulación del registro de Elastic Load Balancing (y el drenaje de conexiones) deben completarse antes
de que se termine realmente la instancia.

Causa 2: Amazon EC2 Auto Scaling intenta reemplazar las instancias puntuales después de que el servicio
de subasta de Amazon EC2 interrumpa las instancias, ya que el precio de subasta aumenta por encima de
su precio o capacidad máximos ya no está disponible.

Solución 2: No hay garantía de que exista una instancia puntual para cumplir la solicitud en un momento
dado. Sin embargo, puede intentar lo siguiente:

• Utilice un precio máximo puntual más alto (posiblemente el precio bajo demanda). Al establecer su
precio máximo más alto, ofrece al servicio Spot Amazon EC2 una mejor oportunidad de lanzar y
mantener la cantidad de capacidad requerida.
• Aumente el número de grupos de capacidad diferentes desde los que puede iniciar instancias
ejecutando varios tipos de instancias en varias zonas de disponibilidad. Para obtener más información,
consulte Grupos de Auto Scaling con varios tipos de instancias y opciones de compra (p. 56).
• Si utiliza varios tipos de instancias, considere la posibilidad de habilitar la función de reequilibrio de
capacidad. Esto resulta útil si desea que el servicio de subasta de Amazon EC2 intente iniciar una nueva
instancia de subasta antes de que se termine una instancia en ejecución. Para obtener más información,
consulte Reequilibrio de capacidad de Amazon EC2 Auto Scaling de Amazon EC2 (p. 242).

Se sacó de servicio una instancia en respuesta a un


error de comprobación de estado del sistema ELB
Problema: Las instancias de Auto Scaling pueden pasar las comprobaciones de estado de EC2. Pero
pueden fallar las comprobaciones de estado de Elastic Load Balancing para los grupos de destino o los
equilibradores de carga clásicos con los que está registrado el grupo Auto Scaling.

Causa: Si el grupo de Auto Scaling se basa en las comprobaciones de estado proporcionadas por Elastic
Load Balancing, Amazon EC2 Auto Scaling determina el estado de las instancias comprobando los
resultados de las comprobaciones de estado de EC2 y de las comprobaciones de estado de Elastic
Load Balancing. El equilibrador de carga realiza comprobaciones de estado enviando una solicitud a
cada instancia y esperando la respuesta correcta, o estableciendo una conexión con la instancia. Una
instancia podría no superar la comprobación de estado de Elastic Load Balancing porque una aplicación
que se ejecuta en la instancia tiene algún problema como consecuencia del cual el balanceador de carga
considera que la instancia se encuentra fuera de servicio. Para obtener más información, consulte Adición
de comprobaciones de estado Elastic Load Balancing a un grupo de Auto Scaling (p. 95).

Solución 1: Para pasar las comprobaciones de estado de Elastic Load Balancing:

• Tome nota de los códigos de éxito que el balanceador de carga está esperando y compruebe que la
aplicación está configurada correctamente para devolver estos códigos de éxito.
• Compruebe que los grupos de seguridad para el equilibrador de carga y el grupo Auto Scaling están
configurados correctamente.
• Compruebe que la configuración de comprobación de estado de los grupos de destino está configurada
correctamente. Puede definir la configuración de comprobación de estado del balanceador de carga por
grupo de destino.
• Establezca el período de gracia de comprobación de estado para el grupo Auto Scaling en un período
de tiempo suficiente para admitir el número de comprobaciones de estado consecutivas correctas
necesarias antes de que Elastic Load Balancing considere que una instancia recién iniciada es correcta.
• Considere agregar un enlace del ciclo de vida de lanzamiento al grupo Auto Scaling para asegurarse
de que las aplicaciones de las instancias estén listas para aceptar tráfico antes de registrarse en el
equilibrador de carga al final del enlace del ciclo de vida.

324
Auto Scaling de Amazon EC2 Guía del usuario
Se sacó de servicio una instancia en respuesta a un
error de comprobación de estado del sistema ELB

• Compruebe que el equilibrador de carga está configurado en las mismas zonas de disponibilidad que el
grupo Auto Scaling.

Para obtener más información, consulte los siguientes temas:

• Comprobaciones de estado de los grupos de destinoen laGuía del usuario para Application Load
Balancers
• Comprobaciones de estado de los grupos de destinoen laGuía del usuario para Network Load Balancers
• Comprobaciones de estado de los grupos de destinoen laGuía del usuario de balanceadores de carga
de gateway
• Configure comprobaciones de estado para el Classic Load Balanceren laGuía del usuario para Classic
Load Balancers

Solución 2: Actualice el grupo Auto Scaling para deshabilitar las comprobaciones de estado de Elastic
Load Balancing.

325
Auto Scaling de Amazon EC2 Guía del usuario

Recursos de Auto Scaling de


Amazon EC2
Los recursos relacionados siguientes pueden serle de ayuda cuando trabaje con este servicio.

• Auto Scaling de Amazon EC2: página web principal con información sobre Auto Scaling de Amazon
EC2.
• Preguntas frecuentes técnicas de Amazon EC2: las respuestas a las preguntas de los clientes sobre
Amazon EC2 y Amazon EC2 Auto Scaling.
• Foro de debate de Amazon EC2: obtenga ayuda de la comunidad.
• AWS Auto ScalingGuía del usuario— ElAWS Auto ScalingConsola de facilita el uso de las funciones
de escalado de varios servicios. conAWS Auto ScalingCon, también puede simplificar el proceso
de definición de políticas de escalado dinámico para sus grupos de Auto Scaling y usar el escalado
predictivo para escalar la capacidad de Amazon EC2 antes de los cambios de tráfico previstos.

Los siguientes recursos adicionales están disponibles para ayudarle a obtener más información acerca de
Amazon Web Services.

• Classes & Workshops: enlaces a cursos basados en roles y especializados, así como a laboratorios
autoguiados para ayudarle a desarrollar suAWShabilidades y adquirir experiencia práctica.
• AWSHerramientas para desarrolladores: enlaces a herramientas para desarrolladores, SDK,
conjuntos de herramientas de IDE y herramientas de línea de comandos para desarrollar y
administrarAWSaplicaciones de.
• AWSDocumentos técnicos— Enlaces a una lista completa deAWSDocumentos técnicos, que tratan
una gran variedad de temas técnicos, como arquitecturas, seguridad y economía de la nube, escritos
porAWSArquitectos de soluciones u otros expertos técnicos.
• AWS SupportCenter: el centro para crear y administrarAWS SupportCasos de. También incluye enlaces
a otros recursos útiles como foros, preguntas técnicas frecuentes, estado de los servicios y AWS Trusted
Advisor.
• AWS Support: página web principal con información sobreAWS Support, un canal de soporte
individualizado y de respuesta rápida que le ayudará a crear y ejecutar aplicaciones en la nube.
• ContactoUn punto de contacto centralizado para las consultas relacionadas conAWSFacturación,
cuentas, eventos, abuso y otros problemas relacionados con.
• AWSTérminos del sitio: información detallada sobre nuestros derechos de autor y marca comercial, su
cuenta, licencia y acceso al sitio, entre otros temas.

326
Auto Scaling de Amazon EC2 Guía del usuario

Historial de revisión
En la siguiente tabla se describen los cambios importantes de la documentación de Amazon EC2
Auto Scaling, a partir de julio de 2018. Para obtener notificaciones sobre las actualizaciones de esta
documentación, puede suscribirse a la fuente RSS.

update-history-change update-history-description update-history-date

Support con políticas Ahora puede crear políticas 29 de julio de 2021


de terminación de terminación personalizadas
personalizadas (p. 327) conAWS Lambda. Para
obtener más información,
consulteCreación de una política
de terminación personalizada
con Lambda. La documentación
para especificar políticas de
terminación se ha actualizado en
consecuencia.

Cambios en la guía (p. 327) La consola de Amazon EC2 3 de junio de 2021


Auto Scaling se ha actualizado
y mejorado con características
adicionales que le ayudarán a
crear acciones programadas con
una zona horaria especificada.
La documentación de la
paraEscalado programadoSe ha
revisado en consecuencia.

volúmenes gp3 en Ahora puede especificar 2 de junio de 2021


configuraciones de volúmenes gp3 en las
lanzamiento (p. 327) asignaciones de dispositivos de
bloque para configuraciones de
inicio.

Support con el escalado Ahora puede utilizar el escalado 19 de mayo de 2021


predictivo (p. 327) predictivo para escalar de
forma proactiva los grupos
de Auto Scaling de Amazon
EC2 mediante una política de
escalado. Para obtener más
información, consulteEscaling
predictivo para Amazon EC2
Auto Scalingen laGuía del
usuario de Amazon EC2 Auto
Scaling. Con esta actualización,
elAutoScalingServiceRolePolicyahora
incluye permiso para llamar al
métodocloudwatch:GetMetricDataAcción
de la API.

Cambios en la guía (p. 327) Ahora puede acceder a plantillas 9 de abril de 2021
de ejemplo para los ganchos
del ciclo de vida desde GitHub.
Para obtener más información,

327
Auto Scaling de Amazon EC2 Guía del usuario

consulte Enlaces de ciclo de vida


de Amazon EC2 Auto Scaling
en la guía del usuario de Auto
Scaling de Amazon EC2.

Support para piscinas Ahora puede equilibrar el 8 de abril de 2021


calientes (p. 327) rendimiento (minimizar los inicios
en frío) y el costo (detener el
sobreaprovisionamiento de la
capacidad de instancia) para
aplicaciones con largos tiempos
de primer inicio agregando
grupos calientes a grupos de
Auto Scaling. Para obtener más
información, consulteGrupos de
abrigo para Amazon EC2 Auto
Scalingen laGuía del usuario de
Amazon EC2 Auto Scaling.

Support con los puntos de Ahora puede agregar puntos 18 de marzo de 2021
control (p. 327) de control a una actualización
de instancia para reemplazar
instancias en fases y realizar
verificaciones en las instancias
en puntos específicos. Para
obtener más información,
consulteAgregar puntos de
control a una actualización de
instanciaen laGuía del usuario de
Amazon EC2 Auto Scaling.

Cambios en la guía (p. 327) Se ha mejorado la 18 de marzo de 2021


documentación para usar
EventBridge con eventos de
Auto Scaling de Amazon EC2
Auto Scaling y enlaces de ciclo
de vida. Para obtener más
información, consulteUsar el Auto
Scaling de Amazon EC2yTutorial:
Configure un enlace de ciclo de
vida que invoca a una función
Lambdaen laGuía del usuario de
Amazon EC2 Auto Scaling.

Support para zonas horarias Ahora puede crear acciones 9 de marzo de 2021
locales (p. 327) programadas recurrentes
en la zona horaria local
agregando el--time-zonea
la opciónput-scheduled-update-
group-actioncomando. Si
la zona horaria observa el
horario de verano (DST), la
acción recurrente se ajusta
automáticamente para el horario
de verano. Para obtener más
información, consulteEscalado
programadoen laGuía del usuario
de Amazon EC2 Auto Scaling.

328
Auto Scaling de Amazon EC2 Guía del usuario

Amplía la funcionalidad de Ahora puede asignar prioridad 8 de marzo de 2021


las directivas de instancias a los tipos de instancia de su
mixtas (p. 327) capacidad de spot cuando utilice
una directiva de instancias
mixtas. Amazon EC2 Auto
Scaling intenta cumplir las
prioridades sobre la base de
los mejores esfuerzos, pero
optimiza primero la capacidad.
Para obtener más información,
consulte la sección sobre Grupos
de Auto Scaling con varios tipos
de instancias y opciones de
compra en la guía del usuario de
Amazon EC2 Auto Scaling.

Escalar actividades para grupos Ahora puede ver las actividades 23 de febrero de 2021
eliminados (p. 327) de escalado para los grupos
de Auto Scaling eliminados
agregando el--include-
deleted-groupsa la
opcióndescribe-scaling-
activitiescomando. Para
obtener más información,
consulteSolución de problemas
de Amazon EC2 Auto Scalingen
laGuía del usuario de Amazon
EC2 Auto Scaling.

Mejoras en la consola (p. 327) Ahora puede crear y adjuntar 24 de noviembre de 2020
un Balanceador de carga de
aplicaciones o un Balanceador
de Network Load Balancer desde
la consola de Auto Scaling de
Amazon EC2 Auto Scaling.
Para obtener más información,
consulteCrear y adjuntar un
balanceador de carga de
aplicaciones o un Network Load
Balancer (consola)en laGuía del
usuario de Amazon EC2 Auto
Scaling.

Interfaces de red Ahora puede configurar una 23 de noviembre de 2020


múltiples (p. 327) plantilla de lanzamiento para
un grupo de Auto Scaling que
especifica varias interfaces
de red. Para obtener más
información, consulteInterfaces
de red en una VPC.

329
Auto Scaling de Amazon EC2 Guía del usuario

Plantillas de Ahora se pueden utilizar varias 19 de noviembre de 2020


lanzamiento (p. 327) plantillas de inicio con grupos
de Auto Scaling. Para obtener
más información, consulte
Especificación de una plantilla
de lanzamiento diferente para un
tipo de instancia en la Guía del
usuario de Amazon EC2 Auto
Scaling.

Balanceadores de carga de Guía actualizada para mostrar 10 de noviembre de 2020


gateway (p. 327) cómo adjuntar un Load Balancer
de puerta de enlace a un
grupo de Auto Scaling para
garantizar que las instancias
de dispositivo iniciadas por
Amazon EC2 Auto Scaling se
registren automáticamente y
anulen el registro del equilibrador
de carga. Para obtener más
información, consulteTipos de
Elastic Load BalancingyAsociar
un balanceador de carga a su
grupo de Auto Scalingen laGuía
del usuario de Amazon EC2 Auto
Scaling.

Duración máxima de la Ahora puede reducir la duración 9 de noviembre de 2020


instancia (p. 327) máxima de la instancia a un día
(86 400 segundos). Para obtener
más información, consulte
Sustitución de instancias de Auto
Scaling en función de la duración
máxima de las instancias en la
guía del usuario de Amazon EC2
Auto Scaling.

Reequilibrio de la Puede configurar el grupo de 4 de noviembre de 2020


capacidad (p. 327) Auto Scaling para lanzar una
instancia de spot de reemplazo
cuando Amazon EC2 emita una
recomendación de reequilibrio.
Para obtener más información,
consulte Reequilibrio de
capacidad de Amazon EC2 Auto
Scaling en la Guía del usuario de
Amazon EC2 Auto Scaling.

330
Auto Scaling de Amazon EC2 Guía del usuario

Servicio de metadatos de Puede requerir el uso de Servicio 28 de julio de 2020


instancia versión 2 (p. 327) de metadatos de instancia
versión 2, que es un método
orientado a la sesión para
solicitar metadatos de instancia,
cuando use configuraciones
de lanzamiento. Para obtener
más información, consulte
Configuración de las opciones
de metadatos de instancias en la
Guía del usuario de Amazon EC2
Auto Scaling.

Cambios en la guía (p. 327) Varias mejoras y nuevos 28 de julio de 2020


procedimientos de consola
en elControlar qué instancias
de Auto Scaling terminan
durante la escala en,Supervisión
de instancias y grupos de
Auto Scaling,Plantillas de
lanzamiento, yConfiguraciones
de lanzamientoSecciones sobre
de laGuía del usuario de Amazon
EC2 Auto Scaling.

Actualización de Comience una actualización de 16 de junio de 2020


instancias (p. 327) instancias para actualizar todas
las instancias del grupo de Auto
Scaling cuando realice un cambio
de configuración. Para obtener
más información, consulte
Sustitución de instancias de
Auto Scaling en función de una
actualización de instancias en la
Guía del usuario de Amazon EC2
Auto Scaling.

Cambios en la guía (p. 327) Varias mejoras en elReemplazo 6 de mayo de 2020


de instancias de Auto Scaling
en función de la duración
máxima,Grupos de Auto Scaling
con diferentes tipos de instancias
y opciones de compra,Escalado
basado en Amazon SQS,
yEtiquetado de grupos e
instancias Auto ScalingSecciones
sobre de laGuía del usuario de
Amazon EC2 Auto Scaling.

331
Auto Scaling de Amazon EC2 Guía del usuario

Cambios en la guía (p. 327) Varias mejoras en la 4 de marzo de 2020


documentación de IAM. Para
obtener más información,
consulteCompatibilidad
con plantillas de
lanzamientoyEjemplos de
políticas basadas en identidades
de Amazon EC2 Auto Scalingen
laGuía del usuario de Amazon
EC2 Auto Scaling.

Deshabilitar políticas de Ahora puede deshabilitar y 18 de febrero de 2020


escalado (p. 327) volver a habilitar las políticas de
escalado. Esta característica
le permite deshabilitar
temporalmente una política de
escalado mientras conserva los
detalles de configuración para
que pueda volver a habilitar
la política más adelante. Para
obtener más información,
consulteDeshabilitar una política
de escalado para un grupo
de Auto Scalingen laGuía del
usuario de Amazon EC2 Auto
Scaling.

Añadir la funcionalidad de Ahora, Amazon EC2 Auto 12 de febrero de 2020


notificaciones (p. 327) Scaling envía eventos aAWS
Personal Health DashboardSi
los grupos de Auto Scaling no
pueden realizar el escalado
horizontal debido a que falta
un grupo de seguridad o una
plantilla de lanzamiento. Para
obtener más información,
consulteAWS Personal Health
DashboardNotificaciones de
Amazon EC2 Auto Scalingen
laGuía del usuario de Amazon
EC2 Auto Scaling.

Cambios en la guía (p. 327) Diversas mejoras y correcciones 10 de febrero de 2020


en elCómo funciona Amazon
EC2 Auto Scaling,Ejemplos
de políticas basadas en
identidades de Amazon EC2
Auto Scaling,Política de claves
CMK necesarias para su uso con
volúmenes cifrados, ySupervisión
de instancias y grupos de Auto
ScalingSecciones sobre de
laGuía del usuario de Amazon
EC2 Auto Scaling.

332
Auto Scaling de Amazon EC2 Guía del usuario

Cambios en la guía (p. 327) Documentación mejorada 6 de febrero de 2020


para grupos de Auto Scaling
que utilizan la ponderación de
instancias. Aprenda a utilizar las
políticas de escalado cuando
utilice “unidades de capacidad”
para medir la capacidad
deseada. Para obtener más
información, consulteCómo
funcionan las políticas de
escaladoyTipos de ajuste de
escaladoen laGuía del usuario de
Amazon EC2 Auto Scaling.

Nuevo capítulo sobre Un nuevoSeguridadCapítulo 4 de febrero de 2020


seguridad (p. 327) sobre de laGuía del
usuario de Amazon EC2
Auto Scalingle ayuda a
comprender cómo aplicar
elModelo de responsabilidad
compartidaCuando se utiliza
Amazon EC2 Auto Scaling. En
esta actualización, el capítulo de
la guía del usuario «Control del
acceso a los recursos de Auto
Scaling de Amazon EC2» se ha
sustituido por una sección nueva
y más útil,Gestión de identidades
y accesos para Amazon EC2
Auto Scaling.

Recomendaciones para tipos de AWS Compute Optimizer 3 de diciembre de 2019


instancias (p. 327) ofrece recomendaciones de
instancias de Amazon EC2
para ayudarle a mejorar el
rendimiento, ahorrar dinero o
ambas cosas. Para obtener más
información, consulteObtención
de recomendaciones para un tipo
de instanciaen laGuía del usuario
de Amazon EC2 Auto Scaling.

Hosts dedicados y grupos de Guía actualizada para mostrar 3 de diciembre de 2019


recursos de host (p. 327) cómo crear una plantilla de
lanzamiento que especifica un
grupo de recursos del host. Esto
le permite crear un grupo de
Auto Scaling con una plantilla de
lanzamiento que especifica una
AMI BYOL para usar en hosts
dedicados. Para obtener más
información, consulteCreación
de una plantilla de lanzamiento
para un grupo de Auto Scalingen
laGuía del usuario de Amazon
EC2 Auto Scaling.

333
Auto Scaling de Amazon EC2 Guía del usuario

Compatibilidad con los puntos Ahora puede establecer una 22 de noviembre de 2019
de enlace de la VPC de conexión privada entre su VPC
Amazon (p. 327) y Amazon EC2 Auto Scaling.
Para obtener más información,
consulteAmazon EC2 Auto
Scaling y puntos de enlace de
la VPC de interfazen laGuía del
usuario de Amazon EC2 Auto
Scaling.

Duración máxima de la Ahora puede reemplazar 19 de noviembre de 2019


instancia (p. 327) instancias automáticamente
especificando la duración
máxima que una instancia
puede estar en servicio. Si
las instancias se acercan a
este límite, Amazon EC2 Auto
Scaling las va reemplazando
gradualmente. Para obtener más
información, consulte Sustitución
de instancias de Auto Scaling en
función de la duración máxima
de las instancias en la guía del
usuario de Amazon EC2 Auto
Scaling.

Ponderación de En los grupos de Auto Scaling 19 de noviembre de 2019


instancias (p. 327) con varios tipos de instancia, si lo
desea, ahora puede especificar
el número de unidades de
capacidad que cada tipo de
instancia aporta a la capacidad
del grupo. Para obtener
más información, consulte
Ponderación de instancias para
Amazon EC2 Auto Scaling en la
guía del usuario de Auto Scaling
de Amazon EC2.

Número mínimo de tipos de Ya no tiene que especificar tipos 16 de septiembre de 2019


instancias (p. 327) de instancias adicionales para
grupos de instancias reservadas,
de spot o bajo demanda. En
todos los grupos de Auto Scaling,
el mínimo es ahora un tipo de
instancia. Para obtener más
información, consulte la sección
sobre Grupos de Auto Scaling
con varios tipos de instancias y
opciones de compra en la guía
del usuario de Amazon EC2 Auto
Scaling.

334
Auto Scaling de Amazon EC2 Guía del usuario

Compatibilidad con una nueva Ahora Amazon EC2 Auto Scaling 12 de agosto de 2019
estrategia de asignación de es compatible con una nueva
instancias de spot (p. 327) estrategia de asignación de
instancias de spot «optimizada
para la capacidad» que atiende
la solicitud mediante grupos de
instancias de spot que se eligen
de forma óptima en función de
la capacidad de spot disponible.
Para obtener más información,
consulte la sección sobre Grupos
de Auto Scaling con varios tipos
de instancias y opciones de
compra en la guía del usuario de
Amazon EC2 Auto Scaling.

Cambios en la guía (p. 327) Documentación mejorada 1 de agosto de 2019


de Amazon EC2 Auto
Scaling enRoles vinculados a
serviciosyPolítica de claves CMK
necesarias para su uso con
volúmenes cifradosTemas.

Compatibilidad con las mejoras Ahora Amazon EC2 Auto 26 de julio de 2019
de etiquetado (p. 327) Scaling añade etiquetas a las
instancias de Amazon EC2
durante la misma llamada a la
API que lanza las instancias.
Para obtener más información,
consulteEtiquetado de grupos e
instancias Auto Scaling.

Cambios en la guía (p. 327) Documentación mejorada de 13 de junio de 2019


Amazon EC2 Auto Scaling
enSuspensión y reanudación
de procesos de escaladoTema.
ActualizadoEjemplos de políticas
administradas por el clientePara
incluir una política de ejemplo
que permite a los usuarios
transferir únicamente los roles
vinculados a servicios con un
sufijo personalizado específico a
Amazon EC2 Auto Scaling.

335
Auto Scaling de Amazon EC2 Guía del usuario

Compatibilidad de la nueva Se ha añadido la compatibilidad 13 de mayo de 2019


característica de Amazon de la nueva característica de
EBS (p. 327) Amazon EBS en el tema de
la plantilla de lanzamiento.
Cambie el estado de cifrado de
un volumen de EBS al restaurarlo
a partir de una instantánea.
Para obtener más información,
consulteCreación de una plantilla
de lanzamiento para un grupo
de Auto Scalingen laGuía del
usuario de Amazon EC2 Auto
Scaling.

Cambios en la guía (p. 327) Documentación mejorada de 12 de marzo de 2019


Amazon EC2 Auto Scaling
en las siguientes secciones:
Controlar qué instancias de
Auto Scaling terminan durante
la escala en,Grupos de Auto
Scaling,Grupos de Auto Scaling
con diferentes tipos de instancias
y opciones de compra, yAuto
Scaling de Amazon EC2.

Combinación permitida de tipos Aprovisione y escale 13 de noviembre de 2018


de instancias y opciones de automáticamente instancias
compra (p. 327) entre distintas opciones de
compra (instancias de spot,
bajo demanda y reservadas) y
tipos de instancias dentro de un
único grupo de Auto Scaling.
Para obtener más información,
consulte la sección sobre Grupos
de Auto Scaling con varios tipos
de instancias y opciones de
compra en la guía del usuario de
Amazon EC2 Auto Scaling.

Tema actualizado para Se ha actualizado la guía para 26 de julio de 2018


escalar basado en Amazon explicar cómo puede utilizar
SQS (p. 327) métricas personalizadas para
escalar un grupo de Auto Scaling
en respuesta a los cambios
en la demanda de una cola de
Amazon SQS. Para obtener más
información, consulteEscalado
basado en Amazon SQSen
laGuía del usuario de Amazon
EC2 Auto Scaling.

En la siguiente tabla se describen cambios importantes en la documentación de Amazon EC2 Auto Scaling
de antes de julio de 2018.

336
Auto Scaling de Amazon EC2 Guía del usuario

Característica Descripción Fecha de la


versión

Compatibilidad Configure el escalado dinámico de la aplicación en unos 12 de julio de 2017


con las políticas pocos pasos. Para obtener más información, consultePolíticas
de escalado de de escalado de seguimiento de destino para Amazon EC2
seguimiento de Auto Scaling.
destino

Compatibilidad con Cree políticas de IAM para controlar el acceso en el nivel de 15 de mayo de
los permisos de recursos. Para obtener más información, consulteControl del 2017
nivel de recursos acceso a sus recursos de Amazon EC2 Auto Scaling.

Mejoras en la Las métricas de grupo de Auto Scaling ya no necesitan que 18 de agosto de


monitorización se habilite la monitorización detallada. Ahora puede habilitar 2016
la recopilación de métricas del grupo y ver los gráficos de las
métricas en la pestaña Monitoring de la consola. Para obtener
más información, consulteSupervisión de grupos e instancias
de Auto Scaling mediante Amazon CloudWatch.

Support con los Asocie uno o varios grupos de destino a un grupo de Auto 11 de agosto de
equilibradores Scaling nuevo o existente. Para obtener más información, 2016
de carga de consulteAsociar un balanceador de carga a su grupo de Auto
aplicaciones Scaling.

Eventos de Amazon EC2 Auto Scaling envía eventos a EventBridge 24 de febrero de


enlaces de ciclo de cuando ejecuta enlaces de ciclo de vida. Para obtener más 2016
vida información, consulteObtener EventBridge cuando se escala
el grupo de Auto Scaling.

Protección de Impida que Amazon EC2 Auto Scaling seleccione instancias 07 de diciembre de
instancias específicas para su terminación durante el escalado de. Para 2015
obtener más información, consulteProtección de instancias.

Políticas de Cree una política de escalado que le permita escalar en 06 de julio de 2015
escalado por función del tamaño de la interrupción de alarma. Para obtener
pasos más información, consulteTipos de política de escalado.

Actualizar el Asocie un balanceador de carga o desasocie un balanceador 11 de junio de


balanceador de de carga de un grupo de Auto Scaling existente. Para obtener 2015
carga más información, consulteAsociar un balanceador de carga a
su grupo de Auto Scaling.

Compatibilidad con Vincule instancias EC2-Classic vinculadas de su grupo de 19 de enero de


ClassicLink Auto Scaling a una VPC, lo que permite la comunicación entre 2015
estas instancias EC2-Classic vinculadas y las instancias de
la VPC mediante direcciones IP privadas. Para obtener más
información, consulteVincular instancias EC2-Classic a una
VPC.

Enlaces de ciclo Mantenga sus instancias recién lanzadas o terminadas en 30 de julio de 2014
de vida un estado pendiente mientras realiza acciones en ellas. Para
obtener más información, consulteHooks de ciclo de vida de
Amazon EC2 Auto Scaling.

Desasociar Desasocie instancias de un grupo de Auto Scaling. Para 30 de julio de 2014


instancias obtener más información, consulteDesasocie instancias EC2
del grupo de Auto Scaling.

337
Auto Scaling de Amazon EC2 Guía del usuario

Característica Descripción Fecha de la


versión

Poner las Ponga las instancias que se encuentran en estado 30 de julio de 2014
instancias en InService en el estado Standby. Para obtener más
estado de espera información, consulteEliminación temporal de instancias de su
grupo de Auto Scaling.

Administrar Administre los grupos de Auto Scaling mediante elAWS 01 de mayo de


etiquetas Management Console. Para obtener más información, 2014
consulteEtiquetado de grupos e instancias Auto Scaling.

Compatibilidad Lance instancias dedicadas especificando un atributo 23 de abril de 2014


con instancias de tenencia de ubicación cuando cree una configuración
dedicadas de lanzamiento. Para obtener más información,
consulteTenencia de ubicación de instancias.

Crear un grupo Cree un grupo de Auto Scaling o una configuración de 02 de enero de


o configuración lanzamiento mediante una instancia EC2. Para obtener más 2014
de lanzamiento a información acerca de cómo crear una configuración de
partir una instancia lanzamiento mediante una instancia EC2, consulteCreación
EC2 de una configuración de lanzamiento mediante una instancia
EC2. Para obtener más información acerca de cómo crear
un grupo de Auto Scaling mediante una instancia EC2,
consulteCreación de un grupo de Auto Scaling mediante una
instancia EC2.

Asociar instancias Habilite el escalado automático para una instancia EC2, 02 de enero de
asociando la instancia a un grupo de Auto Scaling existente. 2014
Para obtener más información, consulteConecte instancias
EC2 al grupo de Auto Scaling.

Ver límites de la Consulte los límites de los recursos de Auto Scaling de su 02 de enero de
cuenta cuenta. Para obtener más información, consulteLímites de 2014
Auto Scaling.

Compatibilidad Acceda a Amazon EC2 Auto ScalingAWS Management 10 de diciembre de


con la consola de Console. Para obtener más información, consulteIntroducción 2013
Amazon EC2 Auto a Amazon EC2 Auto Scaling.
Scaling

Asignar una Asigne una dirección IP pública a una instancia lanzada en 19 de septiembre
dirección IP una VPC. Para obtener más información, consulteIniciar de 2013
pública instancias de Auto Scaling en una VPC.

Política de Especifique una política de terminación de instancias que use 17 de septiembre


terminación de Amazon EC2 Auto Scaling cuando se terminen las instancias de 2012
instancias EC2. Para obtener más información, consulteControlar qué
instancias de Auto Scaling terminan durante la escala en.

Support con roles Inicie instancias EC2 con un perfil de instancia de IAM. Puede 11 de junio de
de IAM utilizar esta característica para asignar roles de IAM a sus 2012
instancias, lo que permite que las aplicaciones tengan acceso
a otros Amazon Web Services de forma segura. Para obtener
más información, consulteInicie instancias de Auto Scaling
con un rol de IAM.

338
Auto Scaling de Amazon EC2 Guía del usuario

Característica Descripción Fecha de la


versión

Compatibilidad con Solicite instancias de spot en grupos de Auto Scaling 7 de junio de 2012
instancias de spot especificando un precio de puja de la instancia de spot en la
configuración de lanzamiento. Para obtener más información,
consulteLanzamiento de instancias de spot en el grupo de
Auto Scaling.

Etiquetar grupos e Etiquete grupos de Auto Scaling y especifique que la etiqueta 26 de enero de
instancias se aplique también a las instancias EC2 lanzadas después 2012
de la creación de la etiqueta. Para obtener más información,
consulteEtiquetado de grupos e instancias Auto Scaling.

Support con Utilice Amazon SNS para recibir notificaciones cuando 20 de julio de 2011
Amazon SNS Amazon EC2 Auto Scaling lance o termine instancias EC2.
Para obtener más información, consulteObtener notificaciones
de SNS cuando se escala el grupo de Auto Scaling.

Amazon EC2 Auto Scaling también añade las siguientes


características:

• La posibilidad de configurar actividades de


escalado recurrentes con sintaxis cron. Para
obtener más información, consulte el comando
PutScheduledUpdateGroupAction de la API.
• Una nueva opción de configuración que le permite escalar
sin añadir la instancia lanzada en el balanceador de carga
(LoadBalancer). Para obtener más información, consulte el
tipo de datos ProcessType de la API.
• LaForceDeleteMarca sobre de
laDeleteAutoScalingGroupLa operación de Auto
Scaling de Amazon EC2 que elimine el grupo de Auto
Scaling con las instancias que tiene asociadas sin tener
que esperar a que primero se terminen las instancias.
Para obtener más información, consulte la operación
DeleteAutoScalingGroup de la API.

Acciones Se ha agregado compatibilidad con acciones de 2 de diciembre de


de escalado escalado programadas. Para obtener más información, 2010
programadas consulteEscaling programado para Amazon EC2 Auto
Scaling.

Support con Se ha agregado compatibilidad con Amazon VPC. Para 2 de diciembre de


Amazon VPC obtener más información, consulteIniciar instancias de Auto 2010
Scaling en una VPC.

Compatibilidad con Se ha agregado compatibilidad con clústeres de informática 2 de diciembre de


clústeres de HPC de alto rendimiento (HPC). 2010

Compatibilidad con Se ha añadido compatibilidad para usar las comprobaciones 2 de diciembre de


comprobaciones de estado de Elastic Load Balancing con instancias EC2 2010
de estado administradas por Amazon EC2 Auto Scaling. Para obtener
más información, consulteUsar comprobaciones de estado de
ELB con Auto Scaling.

339
Auto Scaling de Amazon EC2 Guía del usuario

Característica Descripción Fecha de la


versión

Compatibilidad Se ha eliminado el mecanismo de activación anterior y se 2 de diciembre de


con alarmas de ha rediseñado Amazon EC2 Auto Scaling para que use la 2010
CloudWatch característica de alarmas de CloudWatch. Para obtener más
información, consulteAuto Scaling de Amazon EC2.

Suspender y Se ha agregado compatibilidad para suspender y reanudar 2 de diciembre de


reanudar el procesos de escalado. 2010
escalado

Support con IAM Se ha agregado compatibilidad para IAM. Para obtener más 2 de diciembre de
información, consulteControl del acceso a sus recursos de 2010
Amazon EC2 Auto Scaling.

340
Auto Scaling de Amazon EC2 Guía del usuario

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.

cccxli

También podría gustarte