Configurer la protection contre la suppression pour vos ressources Amazon EC2 Auto Scaling - Amazon EC2 Auto Scaling

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Configurer la protection contre la suppression pour vos ressources Amazon EC2 Auto Scaling

Protégez votre infrastructure Amazon EC2 Auto Scaling contre toute suppression accidentelle en configurant plusieurs niveaux de protection. Auto Scaling propose plusieurs approches pour empêcher la suppression de ressources indésirables pour vos groupes Auto Scaling et les instances Amazon EC2 qu'il gère.

Configurer la protection contre la suppression des groupes Auto Scaling

La protection contre la suppression est un paramètre au niveau des ressources qui empêche la suppression accidentelle de votre groupe Amazon EC2 Auto Scaling. Lorsqu'elle est activée, la protection contre la suppression empêche l'opération de l' DeleteAutoScalingGroupAPI de réussir. Vous devez d'abord mettre à jour le paramètre de protection contre la suppression à un niveau moins restrictif avant de pouvoir supprimer le groupe Auto Scaling.

Amazon EC2 Auto Scaling propose trois niveaux de protection contre la suppression :

Aucun (par défaut)

Aucune protection contre la suppression n'est activée, ce qui signifie que votre groupe Auto Scaling peut être supprimé avec ou sans ForceDelete cette option. Lorsqu'elles ForceDelete sont utilisées, toutes les instances Amazon EC2 gérées par votre groupe Auto Scaling seront également résiliées de force sans exécuter de hooks de cycle de vie de résiliation.

Empêcher la suppression forcée

Votre groupe Auto Scaling ne peut pas être supprimé lorsque vous utilisez ForceDelete cette option. Cette configuration permet de supprimer des groupes Auto Scaling vides (groupes sans instances). Cette option est recommandée pour les charges de travail de production pour lesquelles vous souhaitez empêcher la fermeture massive des instances tout en autorisant le nettoyage des groupes vides.

Empêcher toute suppression

Votre groupe Auto Scaling ne peut pas être supprimé, que l'ForceDeleteoption soit utilisée ou non. Cette option offre la meilleure protection contre les suppressions accidentelles. Cela nécessite de désactiver explicitement la protection contre les suppressions avant que votre groupe Auto Scaling puisse être supprimé. Cela est recommandé pour les groupes Auto Scaling critiques qui devraient être rarement ou jamais supprimés.

Comment fonctionne la protection contre la suppression

Lorsque vous tentez d'utiliser l' DeleteAutoScalingGroupAPI avec la protection contre la suppression activée :

  1. Amazon EC2 Auto Scaling valide le paramètre de protection contre la suppression avant de traiter la demande.

  2. Si le niveau de protection contre la suppression configuré bloque la tentative de suppression, Amazon EC2 Auto Scaling renvoie ValidationError un.

  3. Votre groupe Auto Scaling et ses instances Amazon EC2 restent inchangés.

  4. Vous devez mettre à jour le paramètre de protection contre la suppression à un niveau moins restrictif avant de pouvoir supprimer votre groupe Auto Scaling.

La protection contre la suppression n'empêche pas d'autres opérations telles que :

  • Mise à jour de la configuration du groupe Auto Scaling.

  • Mettre fin à des instances individuelles.

  • Opérations de mise à l'échelle (manuelles ou automatiques).

  • Suspension ou reprise des processus.

Pour plus d'informations sur la manière de gérer correctement la résiliation d'une instance, consultezConcevez vos applications pour gérer avec élégance la résiliation des instances.

Configuration de la protection contre la suppression

Vous pouvez définir la protection contre la suppression lorsque vous créez un groupe Auto Scaling ou que vous mettez à jour le paramètre d'un groupe Auto Scaling existant.

Console
Pour créer un groupe Auto Scaling avec protection contre les suppressions
  1. Ouvrez la console Amazon EC2 à l'adresse https://console.aws.amazon.com/ec2/, puis sélectionnez Auto Scaling Groups dans le volet de navigation.

  2. Choisissez Créer un groupe Auto Scaling.

  3. Effectuez les étapes de configuration de votre groupe Auto Scaling.

  4. Sur la page Configurer la taille et le dimensionnement du groupe, développez Paramètres supplémentaires.

  5. Pour la protection contre la suppression de groupes Auto Scaling, choisissez le niveau de protection souhaité :

    • Aucune - Aucune protection contre la suppression (par défaut)

    • Empêcher la suppression forcée - Bloquer les opérations de suppression forcée

    • Empêcher toute suppression - Bloquer toutes les opérations de suppression

  6. Effectuez les étapes restantes pour créer votre groupe Auto Scaling.

Pour mettre à jour la protection contre la suppression sur un groupe Auto Scaling existant
  1. Ouvrez la console Amazon EC2 à l'adresse https://console.aws.amazon.com/ec2/, puis sélectionnez Auto Scaling Groups dans le volet de navigation.

  2. Cochez la case située en regard de votre groupe Auto Scaling.

  3. Choisissez Actions, Modifier.

  4. Sous Paramètres supplémentaires, mettez à jour le paramètre de protection contre la suppression des groupes Auto Scaling.

  5. Choisissez Mettre à jour.

AWS CLI
Pour créer un groupe Auto Scaling avec protection contre les suppressions

Utilisez la create-auto-scaling-groupcommande avec le --deletion-protection paramètre :

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

Les valeurs valides pour --deletion-protection sont : none | prevent-force-deletion | prevent-all-deletion

Pour mettre à jour la protection contre la suppression sur un groupe Auto Scaling existant

Utilisez la commande update-auto-scaling-group :

aws autoscaling update-auto-scaling-group \ --auto-scaling-group-name my-asg \ --deletion-protection prevent-all-deletion
Pour désactiver la protection contre la suppression

Définissez la protection contre la suppression sur none :

aws autoscaling update-auto-scaling-group \ --auto-scaling-group-name my-asg \ --deletion-protection none
Pour vérifier l'état de la protection contre les suppressions

Utilisez la commande describe-auto-scaling-groups :

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

Contrôlez les autorisations de suppression grâce aux politiques IAM

Utilisez des politiques Gestion des identités et des accès AWS (IAM) pour contrôler les utilisateurs et les rôles autorisés à supprimer des groupes Auto Scaling. Les contrôles basés sur l'IAM fournissent un niveau de sécurité supplémentaire en limitant les autorisations au niveau de l'identité.

Les politiques IAM sont particulièrement utiles lorsque vous souhaitez :

  • Accordez à différents utilisateurs différents niveaux d'accès aux opérations Auto Scaling.

  • Empêchez certains utilisateurs d'utiliser l'ForceDeleteoption même s'ils peuvent effectuer d'autres opérations Auto Scaling.

  • Limitez les autorisations de suppression à des groupes Auto Scaling spécifiques.

La politique suivante autorise la suppression d’un groupe Auto Scaling uniquement si le groupe comporte la balise environment=development.

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

La politique suivante utilise la clé de autoscaling:ForceDelete condition pour contrôler l'accès à l'action d'DeleteAutoScalingGroupAPI. Cela peut empêcher certains utilisateurs d'utiliser l'ForceDeleteopération, qui met fin à toutes les instances Amazon EC2 au sein d'un groupe Auto Scaling.

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

Sinon, si vous n'utilisez pas de clés de condition pour contrôler l'accès aux groupes Auto Scaling, vous pouvez spécifier les ressources ARNs de l'Resourceélément pour contrôler l'accès à la place.

La politique suivante autorise les utilisateurs à utiliser l'action DeleteAutoScalingGroup API, mais uniquement pour les groupes Auto Scaling dont le nom commence pardevteam-.

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

Vous pouvez également en spécifier plusieurs ARNs en les insérant dans une liste. L'inclusion de l'UUID permet de s'assurer que l'accès est accordé au groupe Auto Scaling spécifique. L'UUID d'un nouveau groupe est différent de l'UUID d'un groupe supprimé portant le même nom.

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

Pour d'autres exemples de politiques IAM pour Amazon EC2 Auto Scaling, y compris les politiques qui contrôlent les autorisations de suppression, consultez. Exemples de politiques basées sur l’identité