Comment puis-je supprimer une pile AWS CloudFormation bloquée dans le statut DELETE_FAILED ?

Lecture de 4 minute(s)
0

Je souhaite supprimer ma pile AWS CloudFormation, mais celle-ci est bloquée dans le statut DELETE_FAILED.

Brève description

Votre pile est peut-être bloquée dans le statut DELETE_FAILED pour les raisons suivantes :

  • Une ressource de pile possède un objet dépendant ou d’autres dépendances qui ne peuvent pas être supprimées. Pour résoudre ce problème, suivez les étapes décrites dans la section Supprimer une pile contenant un objet dépendant ou d’autres dépendances qui ne peuvent pas être supprimées.
  • Le rôle de service utilisé n’est pas valide ou ne peut pas être endossé. Pour résoudre ce problème, suivez les étapes décrites dans la section Supprimer une pile dont le rôle n’est pas valide.
  • Une ressource personnalisée n’a pas pu se stabiliser dans le délai prévu. Pour résoudre ce problème, suivez les étapes décrites dans la section Supprimer une pile pour une ressource personnalisée qui n’a pas pu se stabiliser.

Résolution

Supprimer une pile contenant un objet dépendant ou d’autres dépendances qui ne peuvent pas être supprimées

Les problèmes de dépendance surviennent généralement lorsque vous effectuez un changement hors bande. Par exemple, votre pile échoue si un groupe de sécurité qui fait partie de votre pile est attaché à une interface réseau Elastic qui ne fait pas partie de votre pile. La pile échoue, car la ressource du groupe de sécurité ne peut pas être supprimée. Pour supprimer la pile, vous devez conserver cette ressource dépendante.

Pour supprimer une pile tout en conservant une ressource, procédez comme suit :

Console AWS CloudFormation

  1. Ouvrez la console AWS CloudFormation.
  2. Choisissez la pile bloquée dans le statut DELETE_FAILED.
  3. Choisissez Supprimer.
    Remarque : une fenêtre s’ouvre et répertorie les ressources qui n’ont pas pu être supprimées.
  4. Dans cette fenêtre, sélectionnez toutes les ressources que vous souhaitez conserver, puis choisissez Supprimer la pile.

Interface de la ligne de commande AWS

Remarque : si vous recevez des messages d’erreur lors de l’exécution des commandes de l’AWS CLI, vérifiez que vous utilisez bien la version la plus récente de l’AWS CLI.

Exécutez la commande delete-stack suivante :

$ aws cloudformation delete-stack --stack-name my-stack --retain-resources myresource1 myresource2

**Remarque :**Remplacez my-stack par le nom de votre pile. Remplacez myresource1 et myresource2 par les identifiants logiques des ressources qui n’ont pas pu être supprimées.

La pile CloudFormation essaie à nouveau de supprimer la pile, mais ne supprime aucune des ressources que vous avez choisi de conserver. Le statut de votre pile passe à DELETE_COMPLETE.

Important : pour éviter des frais inutiles, vous devez supprimer manuellement les ressources conservées lors de la suppression de la pile.

Supprimer une pile dont le rôle n’est pas valide

Si vous essayez de supprimer une pile créée à l’aide d’un rôle de service qui n’existe plus, le message d’erreur suivant s’affiche : « An error occurred (ValidationError) when calling the DeleteStack operation: Role is invalid or cannot be assumed. »

Pour corriger cette erreur, procédez de la manière suivante :

  1. Ouvrez la console AWS CloudFormation.
  2. Choisissez la pile que vous souhaitez supprimer pour en afficher les détails.
  3. Dans l’onglet Informations sur la pile, notez le nom du rôle IAM attribué à la pile.
  4. Créez un rôle de AWS Identity and Access Management (AWS IAM) en utilisant le même nom que le rôle IAM à l’étape 3.
    Important : lorsque vous créez votre rôle IAM, vérifiez qu’il dispose des autorisations nécessaires pour supprimer les ressources de la pile.
  5. Dans la console AWS CloudFormation, réessayez de supprimer la pile.

Supprimer une pile pour une ressource personnalisée qui n’a pas pu se stabiliser

Pour supprimer la pile d’une ressource personnalisée qui n’a pas pu se stabiliser dans le délai prévu, consultez Comment puis-je résoudre les problèmes liés à une ressource personnalisée sauvegardée par AWS Lambda et bloquée dans le statut DELETE_FAILED ou DELETE_IN_PROGRESS dans AWS CloudFormation ?


AWS OFFICIEL
AWS OFFICIELA mis à jour il y a 2 ans