CloudFormation の外部で削除されたリソースを再作成する方法を教えてください。

所要時間1分
0

AWS CloudFormation スタックの外部で削除されたリソースを再作成したいと考えています。

簡単な説明

リソースの論理 ID がテンプレートから削除されると、CloudFormation はそのリソースが削除されたと解釈します。テンプレート内でリソースの論理 ID を変更すると、置換更新が開始されます。このアップデートにより、削除された CloudFormation リソースが置き換えられます。
注: 古い論理 ID への参照を、すべて更新する必要があります。

解決策

CloudFormation スタックの外部で削除されたリソースを復帰するには、以下の手順に従ってください。

  1. スタックテンプレート内の、帯域外で削除されたリソースの論理 ID を特定します。
    注: 論理 ID は、リソース名である物理 ID とは異なります。

    次の例では、Amazon Simple Storage Service (Amazon S3) バケットの論理 ID がエクスポート操作において参照されています。サンプルテンプレート内の S3Bucket リソースは、CloudFormation のスタック操作の外部で削除されました。

    Resources:  
      S3Bucket: #Logical ID of the Resource  
        Type: AWS::S3::Bucket  
    Outputs:  
      BucketName:  
        Value: !Ref S3Bucket  
        Export:  
          Name: PrimaryBucket
  2. 削除されたリソースに新しい論理 ID を割り当てます (S3NewBucket など)。

    Resources:  
      S3NewBucket: #The changed Logical ID of the Resource  
        Type: AWS::S3::Bucket  
    Outputs:  
      BucketName:  
        Value: !Ref S3Bucket  
        Export:  
          Name: PrimaryBucket
  3. 古い論理 ID のすべての参照を検索し、新しい論理 ID に置き換えます。

    Resources:  
      S3NewBucket: #The changed logical ID of the resource  
        Type: AWS::S3::Bucket  
    Outputs:  
      BucketName:  
        Value: !Ref S3NewBucket #Reference has been updated to point towards the new logical ID  
        Export:  
          Name: PrimaryBucket
  4. 編集したテンプレートを使用して CloudFormation スタックを更新します。更新により、削除されたリソースが再作成されます。

関連情報

スタックリソース更新の動作

AWS公式
AWS公式更新しました 1年前
コメントはありません

関連するコンテンツ