Stack failure options

在部署或更新CloudFormation Stack的过程中,发生失败是常见的情况,这时可以指定CloudFormation的行为,分为两种情况:创建stack失败更新stack失败

创建stack失败

默认:所有已经创建的资源被删除。如果设置为Preserve successfully provisioned resources,则保留已经创建的资源。

应用场景:假设我们使用CloudFormation创建EC2,而EC2的userdata里有错误,则默认整个CloudFormation创建出来的资源都会被删除,我们也没法登录到EC2上定位错误;如果配置了保留资源,则即使userdata执行失败,EC2也不会被删除

更新stack失败

默认会自动回滚到之前版本的状态。如果设置为Preserve successfully provisioned resources,已更新的资源不会发生回退,更新失败的资源会回退到上一个状态

配置Stack failure Options

在创建CloudFormation时,在第三步可以配置Stak failure options,可以根据实际情况选择是否preserve:

image-20221023141218711