View a markdown version of this page

Configure la protección contra la eliminación de sus recursos de Amazon EC2 Auto Scaling - 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.

Configure la protección contra la eliminación de sus recursos de Amazon EC2 Auto Scaling

Proteja su infraestructura de Amazon EC2 Auto Scaling contra la eliminación accidental mediante la configuración de varios niveles de protección. Auto Scaling ofrece varios enfoques para evitar la eliminación no deseada de los recursos de sus grupos de Auto Scaling y de las instancias de Amazon EC2 que administra.

Configure la protección de eliminación de grupos de Auto Scaling

La protección contra la eliminación es una configuración a nivel de recursos que evita que su grupo de Amazon EC2 Auto Scaling se elimine accidentalmente. Cuando está habilitada, la protección contra la eliminación bloquea el éxito de la operación de la DeleteAutoScalingGroup API, por lo que es necesario que actualice primero la configuración de protección contra la eliminación a un nivel menos restrictivo antes de poder eliminar el grupo de Auto Scaling.

Amazon EC2 Auto Scaling ofrece tres niveles de protección contra la eliminación:

Ninguno (predeterminado)

La protección contra la eliminación no está habilitada, lo que significa que tu grupo de Auto Scaling se puede eliminar con o sin usar la ForceDelete opción. Cuando ForceDelete se utilice, todas las instancias de Amazon EC2 administradas por su grupo de Auto Scaling también se cerrarán forzosamente sin ejecutar enlaces del ciclo de vida de terminación.

Impida la eliminación forzada

Tu grupo de Auto Scaling no se puede eliminar cuando usas ForceDelete esta opción. Esta configuración permite eliminar los grupos vacíos de Auto Scaling (grupos sin instancias). Esta opción se recomienda para las cargas de trabajo de producción en las que se desea evitar la terminación masiva de instancias, pero permitir la limpieza de los grupos vacíos.

Impedir todas las eliminaciones

Tu grupo de Auto Scaling no se puede eliminar independientemente de si se usa la ForceDelete opción o no. Esta opción ofrece la mayor protección contra la eliminación accidental. Es necesario deshabilitar explícitamente la protección contra la eliminación para poder eliminar el grupo de Auto Scaling. Esto se recomienda para los grupos de Auto Scaling de misión crítica que deberían eliminarse rara vez o nunca.

Cómo funciona la protección contra eliminaciones

Al intentar la operación de la DeleteAutoScalingGroup API con la protección contra eliminaciones habilitada:

  1. Amazon EC2 Auto Scaling valida la configuración de protección contra eliminaciones antes de procesar la solicitud.

  2. Si el nivel de protección de eliminación configurado bloquea el intento de eliminación, Amazon EC2 Auto Scaling devuelve un. ValidationError

  3. Su grupo de Auto Scaling y sus instancias de Amazon EC2 permanecen sin cambios.

  4. Debe actualizar la configuración de protección contra la eliminación a un nivel menos restrictivo antes de poder eliminar su grupo de Auto Scaling.

La protección contra la eliminación no impide otras operaciones, como:

  • Actualización de la configuración del grupo de Auto Scaling.

  • Terminar instancias individuales.

  • Operaciones de escalado (manuales o automáticas).

  • Suspender o reanudar los procesos.

Para obtener más información sobre cómo gestionar correctamente la terminación de instancias, consulte. Diseño de aplicaciones para gestionar sin problemas la terminación de instancias

Configure la protección contra eliminaciones

Puede configurar la protección contra la eliminación al crear un grupo de Auto Scaling o actualizar la configuración en un grupo de Auto Scaling existente.

Console
Para crear un grupo de Auto Scaling con protección contra eliminaciones
  1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/ y seleccione Auto Scaling Groups en el panel de navegación.

  2. Elija Create Auto Scaling group (Crear grupo de escalado automático).

  3. Complete los pasos de configuración de su grupo de Auto Scaling.

  4. En la página Configurar el tamaño y el escalado del grupo, expanda Ajustes adicionales.

  5. Para la protección contra la eliminación de grupos de Auto Scaling, elige el nivel de protección que desees:

    • Ninguno: sin protección contra la eliminación (predeterminado)

    • Impedir la eliminación forzada: bloquear las operaciones de eliminación forzada

    • Impedir todas las eliminaciones: bloquear todas las operaciones de eliminación

  6. Complete los pasos restantes para crear su grupo de Auto Scaling.

Para actualizar la protección contra eliminaciones en un grupo de Auto Scaling existente
  1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/ y seleccione Grupos de Auto Scaling en el panel de navegación.

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

  3. Seleccione Acciones, Editar.

  4. En Configuración adicional, actualice la configuración de protección contra la eliminación de grupos de Auto Scaling.

  5. Elija Actualizar.

AWS CLI
Para crear un grupo de Auto Scaling con protección contra eliminaciones

Utilice el comando create-auto-scaling-group con el parámetro: --deletion-protection

aws autoscaling create-auto-scaling-group \ --auto-scaling-group-name my-asg \ --launch-template LaunchTemplateName=my-template,Version='$Latest' \ --min-size 1 \ --max-size 5 \ --desired-capacity 2 \ --vpc-zone-identifier "subnet-12345678,subnet-87654321" \ --deletion-protection prevent-force-deletion

Los valores válidos para son: | | --deletion-protection none prevent-force-deletion prevent-all-deletion

Para actualizar la protección contra la eliminación en un grupo de Auto Scaling existente

Usa el comando https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/update-auto-scaling-group.html update-auto-scaling-group:

aws autoscaling update-auto-scaling-group \ --auto-scaling-group-name my-asg \ --deletion-protection prevent-all-deletion
Para deshabilitar la protección contra borrados

Configure la protección contra la eliminación ennone:

aws autoscaling update-auto-scaling-group \ --auto-scaling-group-name my-asg \ --deletion-protection none
Para verificar el estado de protección contra la eliminación

Utilice el comando https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/describe-auto-scaling-groups.html describe-auto-scaling-groups:

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

Controle los permisos de eliminación con políticas de IAM

Usa políticas AWS Identity and Access Management (IAM) para controlar qué usuarios y roles pueden eliminar los grupos de Auto Scaling. IAM-basedLos controles proporcionan una capa adicional de seguridad al restringir los permisos a nivel de identidad.

Las políticas de IAM son especialmente útiles cuando quieres:

  • Permita que diferentes usuarios tengan diferentes niveles de acceso a las operaciones de Auto Scaling.

  • Impida que usuarios específicos utilicen la ForceDelete opción aunque puedan realizar otras operaciones de Auto Scaling.

  • Restrinja los permisos de eliminación a grupos específicos de Auto Scaling.

La siguiente política permite eliminar un grupo de escalado automático solo si el grupo tiene la etiqueta environment=development.

JSON
{ "Version":"2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "autoscaling:DeleteAutoScalingGroup", "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/environment": "development" } } }] }

La siguiente política usa la clave de autoscaling:ForceDelete condición para controlar el acceso a la acción de la DeleteAutoScalingGroup API. Esto puede impedir que ciertos usuarios utilicen la ForceDelete operación, que termina todas las instancias de Amazon EC2 dentro de un grupo de Auto Scaling.

JSON
{ "Version":"2012-10-17", "Statement": [{ "Effect": "Deny", "Action": "autoscaling:DeleteAutoScalingGroup", "Resource": "*", "Condition": { "Bool": { "autoscaling:ForceDelete": "true" } } }] }

Como alternativa, si no utiliza claves de condición para controlar el acceso a los grupos de escalado automático, puede especificar los ARN de los recursos del elemento Resource para controlar el acceso.

La siguiente política otorga a los usuarios permisos para usar la acción de la DeleteAutoScalingGroup API, pero solo para los grupos de Auto Scaling cuyo nombre comience por. devteam-

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "autoscaling:DeleteAutoScalingGroup", "Resource": "arn:aws:autoscaling:us-east-1:111122223333:autoScalingGroup:*:autoScalingGroupName/devteam-*" } ] }

También puede especificar varios ARN incluyéndolos en una lista. Al incluir el UUID, se garantiza que el acceso se conceda al grupo de escalado automático especificado. El UUID de un grupo nuevo es diferente del UUID de un grupo eliminado con el mismo nombre.

"Resource": [ "arn:aws:autoscaling:region:account-id:autoScalingGroup:uuid:autoScalingGroupName/devteam-1", "arn:aws:autoscaling:region:account-id:autoScalingGroup:uuid:autoScalingGroupName/devteam-2", "arn:aws:autoscaling:region:account-id:autoScalingGroup:uuid:autoScalingGroupName/devteam-3" ]

Para ver más ejemplos de políticas de IAM para Amazon EC2 Auto Scaling, incluidas las políticas que controlan los permisos de eliminación, consulte. Ejemplos de políticas basadas en identidades