Uso de la protección de reducción horizontal de instancias - 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.

Uso de la protección de reducción horizontal de instancias

La protección de escalamiento interno de instancias le permite controlar qué instancias puede terminar Amazon EC2 Auto Scaling. Un caso de uso habitual de esta función es el escalado de las cargas de trabajo basadas en contenedores. Para obtener más información, consulte Diseño de sus aplicaciones en Amazon EC2 Auto Scaling para gestionar sin problemas la terminación de instancias.

De forma predeterminada, la protección de escalado interno de instancias está deshabilitada al crear un grupo de Auto Scaling. Esto significa que Auto Scaling de Amazon EC2 puede terminar cualquier instancia del grupo.

Puede proteger las instancias en cuanto se lanzan habilitando la configuración de protección frente a la reducción horizontal de instancias en el grupo de escalado automático. La protección de reducción horizontal de instancias comienza cuando la instancia tiene el estado InService. A continuación, para controlar qué instancias pueden terminar, deshabilite la configuración de protección contra la reducción horizontal en las instancias individuales del grupo de escalado automático. De este modo, puede seguir protegiendo determinadas instancias de las terminaciones no deseadas.

Consideraciones

A la hora de utilizar la protección de escalamiento interno de instancias, se tienen en cuenta las siguientes consideraciones:

  • Si todas las instancias de un grupo de escalado automático están protegidas frente a la reducción horizontal y se produce un evento de reducción horizontal, se reduce la capacidad deseada. Sin embargo, el grupo de escalado automático no puede terminar el número necesario de instancias hasta que se desactiva la configuración de protección frente a la reducción horizontal de instancias. En el AWS Management Console, el historial de actividades del grupo Auto Scaling incluye el siguiente mensaje si todas las instancias de un grupo de Auto Scaling están protegidas contra la escalabilidad cuando se produce un evento de escalado interno: Could not scale to desired capacity because all remaining instances are protected from scale-in.

  • Si desconecta una instancia que está protegida frente a la reducción horizontal, se pierde la configuración de protección frente a la reducción horizontal de instancias. Cuando vuelve a asociar la instancia al grupo, esta hereda la configuración de protección de reducción horizontal de instancias actual del grupo. Cuando Amazon EC2 Auto Scaling lanza una nueva instancia o traslada una instancia de un grupo activo al grupo de escalado automático, esta hereda la configuración de protección frente a la reducción horizontal de instancias del grupo de escalado automático.

  • La protección frente a la reducción horizontal de instancias no protege las instancias de Auto Scaling de lo siguiente:

    • 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 estado para instancias en un grupo de escalado automático.

    • 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.

    • La reserva de un bloque de capacidad finaliza. Amazon EC2 recupera las instancias del bloque de capacidad incluso si están protegidas contra la escalabilidad interna.

    • Terminación manual mediante el comando. terminate-instance-in-auto-scaling-group Para obtener más información, consulte Finalización de una instancia en su grupo de escalado automático (AWS CLI).

    • Terminación manual mediante la consola Amazon EC2, los comandos de la CLI y las operaciones de la API. Para proteger las instancias de Auto Scaling frente a la terminación manual, habilite la protección frente a la terminación de Amazon EC2. (Esto no impide que Auto Scaling de Amazon EC2 termine las instancias o finalice manualmente mediante el terminate-instance-in-auto-scaling-group comando). Para obtener información sobre cómo habilitar la protección por terminación de Amazon EC2 en una plantilla de lanzamiento, consulte. Creación de una plantilla de lanzamiento mediante la configuración avanzada

Cambiar la protección de escalamiento interno para un grupo de Auto Scaling

Puede habilitar o desactivar la configuración de protección frente a la reducción horizontal de instancias para un grupo de escalado automático. Al habilitarla, todas las instancias nuevas que lance el grupo tendrán habilitada la protección de escalamiento interno de instancias.

La activación o desactivación de esta configuración para un grupo de Auto Scaling no afecta a las instancias existentes.

Console
Para habilitar la protección escalable para un nuevo grupo de Auto Scaling

Al crear el grupo de Auto Scaling, en la página Configurar el tamaño del grupo y las políticas de escalado, en Protección de escalamiento interno de instancias, active la casilla de verificación Habilitar la protección de escalamiento de instancias.

Para activar o desactivar la protección escalable para un grupo existente
  1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/ y elija Auto Scaling Groups (Grupos de escalado automático) en el panel de navegación.

  2. Seleccione la casilla situada junto al grupo de escalado automático.

    Se abre un panel dividido en la parte inferior de la página.

  3. En la pestaña Details (Detalles) elija (Advanced configurations) Configuraciones avanzadas, Edit (Editar).

  4. Para la protección escalable de instancias, active o desactive la casilla Habilitar la protección de escalamiento interno de instancias para habilitar o deshabilitar esta opción según sea necesario.

  5. Elija Actualizar.

AWS CLI
Para habilitar la protección escalable para un nuevo grupo de Auto Scaling

Utilice el siguiente comando create-auto-scaling-group para habilitar la protección frente a la reducción horizontal de instancias.

aws autoscaling create-auto-scaling-group --auto-scaling-group-name my-asg --new-instances-protected-from-scale-in ...
Para habilitar la protección escalable para un grupo existente

Utilice el siguiente comando update-auto-scaling-group para habilitar la protección frente a la reducción horizontal de instancias para el grupo de escalado automático especificado.

aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-asg --new-instances-protected-from-scale-in
Para deshabilitar la protección escalable para un grupo existente

Utilice el siguiente comando para desactivar la protección de reducción horizontal 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

Cambiar la protección escalable de una instancia

De forma predeterminada, una instancia obtiene la configuración de protección frente a la reducción horizontal de instancias de su grupo de escalado automático. Sin embargo, puedes habilitar o deshabilitar la protección escalable de instancias para instancias individuales después de su lanzamiento.

Console
Para habilitar o deshabilitar la protección escalable de una instancia
  1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/ y elija Auto Scaling Groups (Grupos de escalado automático) en el panel de navegación.

  2. Seleccione la casilla situada junto al grupo de escalado automático.

    Se abre un panel dividido en la parte inferior de la página.

  3. En la pestaña Instance management (Administración de instancias), en Instances (Instancias), seleccione una instancia.

  4. Para habilitar la protección de reducción horizontal de instancias, elija Acciones, Establecer protección de reducción horizontal. Cuando se lo pidan, seleccione Establecer protección de reducción horizontal.

  5. Para deshabilitar la protección de reducción horizontal de instancias, seleccione Acciones, Eliminar protección de reducción horizontal. Cuando se lo pidan, seleccione Eliminar protección de reducción horizontal.

AWS CLI
Para habilitar la protección escalable de una instancia

Utilice el siguiente comando set-instance-protection para habilitar la protección frente a la reducción horizontal 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
Para deshabilitar la protección de escalamiento interno de una instancia

Utilice el siguiente comando para desactivar la protección de reducción horizontal 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
nota

Recuerde que la protección escalable de instancias no garantiza que las instancias no se cancelen en caso de un error humano, por ejemplo, si alguien termina manualmente una instancia mediante la consola Amazon EC2 o. AWS CLI Para proteger la instancia de una terminación accidental, puede utilizar la protección frente a la terminación de Amazon EC2. Sin embargo, incluso con la protección frente a la terminación y la protección frente a la reducción horizontal de instancias habilitadas, 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 en cualquier entorno, una práctica recomendada es realizar copias de seguridad de sus datos con frecuencia o cuando sea apropiado para los requisitos de continuidad de la empresa.