【问题标题】:Delete AWS Cloud formation stack with resources created by it删除 AWS Cloudformation 堆栈及其创建的资源
【发布时间】:2021-04-22 00:22:09
【问题描述】:

基于this页面我可以做到:

aws cloudformation delete-stack \
    --stack-name my-stack

它说我可以附加命令: [--retain-resources <value>]

这是否意味着如果我不指定该行,堆栈创建的所有资源都将被删除?我正在尝试删除堆栈生成的所有内容,这很多。

我怎样才能做到这一点?

谢谢

【问题讨论】:

    标签: amazon-web-services amazon-cloudformation aws-cli aws-cloudformation-custom-resource


    【解决方案1】:

    是的,如果您指定 [--retain-resources <value>],这些资源将被保留,如果您不指定,Cloudformation 将删除您提供的堆栈名称中的所有资源(包括嵌套堆栈),前提是您有权执行此操作。如果 cloudformation 堆栈中的任何资源具有保留策略集,则它们不会被删除。

    在删除期间,AWS CloudFormation 会删除堆栈,但不会删除保留的资源。

    来自同一页面aws cloudformation delete-stack

    你可能也想读这个How do I retain some of my resources when I delete an AWS CloudFormation stack?

    您也可以在 cloudformation 模板中指定retain policy

    【讨论】:

    • 但是我怎样才能删除全部资源的堆栈呢?
    • 我不想保留任何东西
    • @Arturo 这能回答你的问题吗?
    • 我想是的,我现在正在测试它,一秒钟
    • 是的,我会在 +1 后接受,谢谢
    【解决方案2】:

    如果你想删除帐户中创建的所有 CFN 堆栈,我会编写一个小的 bash 脚本来提供:

    #!/bin/bash
    STACKS=$(aws cloudformation list-stacks --stack-status-filter CREATE_IN_PROGRESS CREATE_COMPLETE ROLLBACK_IN_PROGRESS ROLLBACK_FAILED ROLLBACK_COMPLETE DELETE_IN_PROGRESS DELETE_FAILED UPDATE_IN_PROGRESS UPDATE_COMPLETE_CLEANUP_IN_PROGRESS UPDATE_COMPLETE UPDATE_ROLLBACK_IN_PROGRESS UPDATE_ROLLBACK_FAILED UPDATE_ROLLBACK_COMPLETE_CLEANUP_IN_PROGRESS UPDATE_ROLLBACK_COMPLETE REVIEW_IN_PROGRESS --query "StackSummaries[*].StackName" --output text)
    
    for stack in $STACKS
    do
        aws cloudformation delete-stack --stack-name $stack
    done
    

    【讨论】:

      猜你喜欢
      • 2021-01-16
      • 2021-12-18
      • 2020-11-09
      • 1970-01-01
      • 2018-10-25
      • 1970-01-01
      • 2020-12-02
      • 2020-05-16
      • 2018-03-24
      相关资源
      最近更新 更多