Seleccione sus preferencias de cookies

Usamos cookies esenciales y herramientas similares que son necesarias para proporcionar nuestro sitio y nuestros servicios. Usamos cookies de rendimiento para recopilar estadísticas anónimas para que podamos entender cómo los clientes usan nuestro sitio y hacer mejoras. Las cookies esenciales no se pueden desactivar, pero puede hacer clic en “Personalizar” o “Rechazar” para rechazar las cookies de rendimiento.

Si está de acuerdo, AWS y los terceros aprobados también utilizarán cookies para proporcionar características útiles del sitio, recordar sus preferencias y mostrar contenido relevante, incluida publicidad relevante. Para aceptar o rechazar todas las cookies no esenciales, haga clic en “Aceptar” o “Rechazar”. Para elegir opciones más detalladas, haga clic en “Personalizar”.

Reequilibrio de la capacidad en Auto Scaling para reemplazar las instancias puntuales en riesgo

Modo de enfoque
Reequilibrio de la capacidad en Auto Scaling para reemplazar las instancias puntuales en riesgo - Amazon EC2 Auto Scaling

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.

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.

El reequilibrio de capacidad en Auto Scaling le ayuda a mantener la disponibilidad de la carga de trabajo mediante la sustitución proactiva de las instancias puntuales con riesgo de interrupción.

Cuando las instancias puntuales corren un riesgo elevado de interrupción, el servicio Amazon EC2 Spot envía una recomendación de reequilibrio de EC2 instancias a Amazon EC2 Auto Scaling. Si habilita el reequilibrio de capacidad, Auto Scaling intentará reemplazar de forma proactiva las instancias puntuales de su grupo que hayan recibido una recomendación de reequilibrio de EC2 instancias. Esto le da la oportunidad de reequilibrar la carga de trabajo con nuevas instancias de spot que no tengan un riesgo elevado de interrupción.

Cuando no se utiliza el reequilibrio de capacidad, Auto Scaling no reemplaza a las instancias puntuales hasta que el servicio Amazon EC2 Spot interrumpe las instancias y no se comprueba su estado. Antes de interrumpir una instancia, Amazon EC2 siempre ofrece una recomendación de reequilibrio de la EC2 instancia y un aviso puntual de interrupción de la instancia de dos minutos.

Descripción general

Para usar el reequilibrio de la capacidad con su grupo de escalado automático, los pasos básicos son:

  1. Configure su grupo de escalado automático para utilizar varios tipos de instancia y zonas de disponibilidad. De esta forma, Amazon EC2 Auto Scaling puede analizar la capacidad disponible para las instancias puntuales en cada zona de disponibilidad. Para obtener más información, consulte Grupos de Auto Scaling con varios tipos de instancia y opciones de compra.

  2. Agregue enlaces de ciclo de vida según sea necesario para cerrar correctamente la aplicación dentro de las instancias que reciben la notificación de reequilibrio. Para obtener más información, consulte Ganchos del ciclo de vida de Amazon EC2 Auto Scaling.

    A continuación, se indican algunos de los motivos por los que podría utilizar un enlace de ciclo de vida:

    • Apagar correctamente los trabajos de Amazon SQS

    • Completar la anulación del registro del sistema de nombres de dominio (DNS)

    • Extracción de registros del sistema o de aplicaciones y carga en Amazon Simple Storage Service (Amazon S3)

  3. Desarrolle una acción personalizada para el enlace de ciclo de vida. Para invocar su acción personalizada lo antes posible, necesita saber cuándo una instancia está lista para ser terminada. Averígüelo detectando el estado del ciclo de vida de la instancia.

    • Para invocar una acción fuera de la instancia, escriba una EventBridge regla y automatice la acción que se debe realizar cuando un patrón de eventos coincida con la regla.

    • Para invocar una acción dentro de la instancia, configure la instancia para que ejecute un script de cierre y recupere el estado del ciclo de vida a través de los metadatos de la instancia.

    Es fundamental diseñar la acción personalizada para que finalice en menos de dos minutos. Esto garantiza que haya tiempo suficiente para completar las tareas antes de la terminación de la instancia.

Una vez que complete estos pasos, podrá empezar a utilizar el reequilibrio de la capacidad.

Comportamiento de reequilibrio de la capacidad

Con el reequilibrio de capacidad, Amazon EC2 Auto Scaling se comporta de la siguiente manera cuando una instancia recibe una recomendación de reequilibrio:

  • Cuando se lanza la nueva instancia puntual, Amazon EC2 Auto Scaling espera a que la nueva instancia supere su comprobación de estado antes de cerrar la anterior. Al reemplazar más de una instancia, la terminación de cada instancia anterior comienza después de que la nueva instancia se lanzó y superó la comprobación de estado.

  • Dado que Amazon EC2 Auto Scaling intenta lanzar nuevas instancias antes de terminar las anteriores, estar en la capacidad máxima especificada o cerca de ella podría impedir o detener por completo las actividades de reequilibrio. Para evitar este problema, Amazon EC2 Auto Scaling puede superar temporalmente el tamaño máximo del grupo hasta un 10 por ciento de la capacidad deseada.

  • Si no ha añadido un enlace de ciclo de vida a su grupo de Auto Scaling, Amazon EC2 Auto Scaling empezará a cerrar las instancias anteriores en cuanto las nuevas pasen su comprobación de estado.

  • Si agregó un enlace de ciclo de vida, esto prolonga el tiempo necesario para que empecemos a terminar las instancias anteriores en función del valor de tiempo de espera que especificó para el enlace de ciclo de vida.

  • Si utiliza políticas de escalado o un escalado programado, las actividades de escalado se ejecutan en paralelo. Si hay una actividad de escalado en curso y su grupo de Auto Scaling está por debajo de la nueva capacidad deseada, Amazon EC2 Auto Scaling primero se reduce antes de finalizar las instancias anteriores.

Si no hay capacidad para sus tipos de instancias en una zona de disponibilidad, Amazon EC2 Auto Scaling sigue intentando lanzar instancias puntuales en otras zonas de disponibilidad habilitadas hasta que lo consiga.

En el peor de los casos, si las nuevas instancias no se lanzan o sus comprobaciones de estado fallan, Amazon EC2 Auto Scaling sigue intentando volver a lanzarlas. Mientras está tratando de lanzar nuevas instancias, las anteriores finalmente se verán interrumpidas y se terminarán a la fuerza previo aviso de interrupción tras dos minutos.

Consideraciones

Tenga en cuenta lo siguiente cuando use el reequilibrio de la capacidad:

Diseño de su aplicación para que sea tolerante a las interrupciones de spot

La aplicación debería poder gestionar cambios dinámicos en el número de instancias y la posibilidad de que una instancia de spot se interrumpa antes. Por ejemplo, si tu grupo de Auto Scaling está detrás de un balanceador de cargas de Elastic Load Balancing, Amazon EC2 Auto Scaling espera a que la instancia anule el registro del balanceador de cargas antes de llamar a tu enlace de ciclo de vida. Si el tiempo necesario para anular el registro de la instancia y completar la acción del ciclo de vida es demasiado largo, es posible que la instancia se interrumpa mientras Amazon EC2 Auto Scaling espera a que se complete la acción del ciclo de vida antes de terminar la instancia.

Amazon EC2 no siempre puede enviar la señal de recomendación de reequilibrio antes del aviso de interrupción de una instancia puntual de dos minutos. En ocasiones, la señal de recomendación de reequilibrio llega al mismo tiempo que el aviso de interrupción de dos minutos. Cuando esto ocurre, Amazon EC2 Auto Scaling activa el enlace del ciclo de vida e intenta lanzar una nueva instancia puntual de forma inmediata.

Evite un riesgo elevado de interrupción de instancias de spot de reemplazo

Las instancias de spot de reemplazo podrían correr un riesgo elevado de interrupción si utiliza la estrategia de asignación lowest-price. Esto se debe a que siempre lanzamos instancias en el grupo de menor precio que tiene capacidad disponible en ese momento, incluso si es probable que las instancias de spot de reemplazo se interrumpan poco después de lanzarse. Para evitar un alto riesgo de interrupción, es recomendable no utilizar la estrategia de asignación del lowest-price. En su lugar, recomendamos la estrategia de asignación del price-capacity-optimized. Esta estrategia lanza instancias de spot de reemplazo en grupos de spot que tienen menos probabilidades de interrupción y el precio más bajo posible. Por lo tanto, es menos probable que se interrumpan en un futuro cercano.

Amazon EC2 Auto Scaling solo lanzará una nueva instancia si la disponibilidad es igual o mejor

Uno de los objetivos del reequilibrio de la capacidad es mejorar la disponibilidad de una instancia de spot. Si una instancia puntual existente recibe una recomendación de reequilibrio, Amazon EC2 Auto Scaling solo lanzará una nueva instancia si la nueva instancia proporciona la misma o mejor disponibilidad que la instancia existente. Si el riesgo de interrupción de una nueva instancia es mayor que el de la instancia existente, Amazon EC2 Auto Scaling no lanzará una nueva instancia. Sin embargo, Amazon EC2 Auto Scaling seguirá evaluando los grupos de capacidad de Amazon Spot en función de la información proporcionada por el servicio Amazon EC2 Spot y lanzará una nueva instancia si la disponibilidad mejora.

Existe la posibilidad de que su instancia existente se interrumpa sin que Amazon EC2 Auto Scaling lance una nueva instancia de forma proactiva. Cuando esto ocurre, Amazon EC2 Auto Scaling intenta lanzar una nueva instancia en cuanto recibe el aviso de interrupción de la instancia puntual. Esto ocurre independientemente de si la nueva instancia tiene un alto riesgo de interrupción.

El reequilibrio de la capacidad no aumenta la tasa de interrupciones de las instancias de spot

Al activar el reequilibrio de capacidad, no se incrementa la tasa de interrupciones de las instancias puntuales (el número de instancias puntuales que se recuperan cuando Amazon EC2 necesita recuperar la capacidad). Sin embargo, si el reequilibrio de capacidad detecta que una instancia corre el riesgo de ser interrumpida, Amazon EC2 Auto Scaling intentará lanzar inmediatamente una nueva instancia. Por lo tanto, es posible que se reemplacen más instancias que si hubiera esperado a que Amazon EC2 Auto Scaling lanzara una nueva instancia después de que se interrumpiera la instancia en riesgo.

Si bien es posible que se reemplacen más instancias con el reequilibrio de la capacidad habilitado, se beneficia de ser proactivo en lugar de reactivo. Esto le da más tiempo para tomar medidas antes de que sus instancias se interrumpan. Con un aviso de interrupción de instancias de spot, normalmente solo dispone de dos minutos para apagar correctamente la instancia. Dado que el reequilibrio de la capacidad lanza una nueva instancia por adelantado, le da a los procesos existentes una mejor oportunidad de completarse en la instancia en riesgo. También puede iniciar los procedimientos de apagado de la instancia, evitar que se programen nuevos trabajos en la instancia en riesgo y preparar la instancia recién lanzada para que se haga cargo de la aplicación. Con el reemplazo proactivo del reequilibrio de la capacidad, usted se beneficia de una continuidad estable.

El siguiente ejemplo teórico demuestra los riesgos y beneficios del uso del reequilibrio de la capacidad:

  • 14:00 — Se recibe una recomendación de reequilibrio, por ejemplo A. Amazon EC2 Auto Scaling intenta lanzar inmediatamente la instancia B de reemplazo, lo que le da tiempo para iniciar los procedimientos de cierre.

  • 14:30: se recibe una recomendación de reequilibrio para la instancia B, que es reemplazada por la instancia C. Esto le da tiempo para iniciar los procedimientos de apagado.

  • 14:32: si el reequilibrio de la capacidad no estuviera habilitado y si se hubiera recibido un aviso de interrupción de la instancia de spot a las 14:32 para la instancia A, usted solo habría tenido dos minutos para actuar. Sin embargo, la instancia A habría seguido ejecutándose hasta ese momento.

PrivacidadTérminos del sitioPreferencias de cookies
© 2025, Amazon Web Services, Inc o sus afiliados. Todos los derechos reservados.