Ram*_*eza 3 amazon-web-services aws-cloudformation
我有一个cloudformation模板,它创建一个S3存储桶作为cloudformation堆栈的一部分.在我的模板的新版本上,我计划将我的应用程序从S3迁移到EFS.
有没有办法从模板中删除S3存储桶资源,而不删除它?理想情况下,我希望我的老用户在升级后可以使用s3存储桶,但是对于新用户来说根本没有它.看起来DeletionPolicies在这里可能有所帮助,但是它上面的文档说它只适用于堆栈删除,而不适用于升级.
Ind*_*ity 10
详细说明user3470009的答案.
在主,广告的目的的DeletionPolicy是保持一个资源时堆栈被删除.这几乎提到作为一种事后AWS文档的DeletionPolicy,它从堆栈资源拆卸过程中也发挥作用:
请注意,此功能也适用于堆栈更新操作,这些操作会导致从堆栈中删除资源.例如,如果从堆栈模板中删除资源,然后使用模板更新堆栈.
因此,在不删除实际资源的情况下从堆栈中删除资源的工作流程是:
"DeletionPolicy" : "Retain"到CF模板中的资源声明aws cloudformation在CLI或您使用的任何其他工具上运行来应用更改DELETE_SKIPPED:
2018-10-15T15:32:32.956Z HostedZone DELETE_SKIPPED
小智 6
将 DeletionPolicy 设置为“Retain”将导致存储桶本身在删除资源的堆栈更新后保留。
Mat*_*ser -4
当您从模板中删除资源并从此模板更新堆栈时,这些资源将被删除。没有办法避免这种情况。
由于您的现有用户将继续使用 S3 存储桶,因此我建议在您的模板中保留该存储桶。当桶完全从产品中取出后,将其取出。
如果需要,您可以对模板进行版本控制(旧与新)。
如果您确实需要从模板中删除存储桶,则可以利用漏洞。当CloudFormation删除存储桶时,该存储桶必须为空。如果它不为空,则应保留该存储桶并将其从堆栈中删除。您可以尝试一下,看看它是否适合您。如果它在测试中有效,那么您可以尝试在生产中使用它。
| 归档时间: |
|
| 查看次数: |
3465 次 |
| 最近记录: |