Comment puis-je mettre à jour une pile CloudFormation défaillante en raison d'une ressource que j'ai supprimée manuellement ?

Date de la dernière mise à jour : 23/08/2021

J'ai supprimé manuellement une ressource qui a été créée par l'une de mes piles AWS CloudFormation et, à présent, ma pile refuse de se mettre à jour.

Brève description

Si vous supprimez une ressource créée par une pile CloudFormation, celle-ci ne parvient pas à se mettre à jour et un message d'erreur s'affiche.

En fonction de votre type de ressource, choisissez l'une des résolutions suivantes :

  • Mettre à jour une ressource avec un nom unique
  • Mettre à jour une ressource avec un ID unique

Résolution

Mettre à jour une ressource avec un nom unique

Si la ressource supprimée prend en charge un nom unique, vous pouvez mettre à jour votre pile en créant manuellement la ressource. Cependant, cette nouvelle ressource doit avoir le même nom que la ressource supprimée. Par exemple, vous pouvez avoir un impact sur la façon dont CloudFormation gère une ressource lorsque vous modifiez le nom d'une ressource. En effet, les rôles AWS Identity and Access Management (IAM) sont suivis en fonction de leur nom. Si vous supprimez accidentellement un rôle IAM, vous pouvez recréer manuellement ce rôle avec le même nom.

Pour mettre à jour un rôle IAM ou toute autre ressource avec un nom unique, procédez comme suit :

  1. Ouvrez la console AWS CloudFormation.
  2. Sélectionnez votre pile, puis choisissez la vue Ressources.
  3. Dans la colonne ID physique recherchez l'ID physique du rôle IAM que vous souhaitez remplacer par votre nouveau rôle IAM.
    Remarque : l'ID physique est le nom de la ressource.
  4. Créez un nouveau rôle IAM, puis attribuez au nouveau rôle un ID physique similaire à celui trouvé à l'étape 3.
  5. Mettez à jour votre pile.

Remarque : pour plus d'informations, consultez la section Modification d'un modèle de pile.

Mettre à jour une ressource avec un ID unique

Il est impossible de recréer manuellement une ressource, comme une table de routage, avec un ID unique. Au lieu de cela, vous devez supprimer la ressource et toutes les références à cette ressource de votre modèle CloudFormation.

Remarque : la résolution suivante fonctionne également pour les ressources qui ne prennent pas en charge un nom unique ou un ID unique. Par exemple, un jeu d'enregistrements dans une zone hébergée.

Pour permettre à CloudFormation de recréer une table de routage ou une autre ressource avec un ID unique, procédez comme suit :

  1. Dans votre modèle CloudFormation, retirez la table de routage et toutes ses références.
  2. Mettez à jour la pile.
    Remarque : CloudFormation tente de supprimer la table de routage. Étant donné que la ressource a déjà été supprimée, CloudFormation considère que la suppression est une opération réussie.
  3. Ajoutez de nouveau la table de routage et toutes les ressources ou références supplémentaires dont vous avez besoin à votre modèle CloudFormation.
  4. Mettez de nouveau à jour votre pile.
    Remarque : CloudFormation recrée la ressource supprimée.

Cet article vous a-t-il été utile ?


Besoin d'aide pour une question technique ou de facturation ?