可以说是使用CloudFormation创建了一个AWS堆栈。现在,这些资源之一已在CloudFormation外部进行了修改。
1)是否可以让CloudFormation专门创建那些资源?根据我的理解,我们无法做到这一点,因为CloudFormation无法识别差异,因此也不会创建修改后的资源。我的观察正确吗?
2)此外,如果在CloudFormation外部进行了修改,我还必须具有哪些选项才能将堆栈恢复为其原始状态?
首先,请注意,根据AWS CloudFormation最佳实践,明确建议不要在CloudFormation外部修改CloudFormation创建的资源:
通过AWS CloudFormation管理所有堆栈资源
启动堆栈后,请使用AWS CloudFormation控制台,API或AWS CLI更新堆栈中的资源。不要对AWS CloudFormation之外的堆栈资源进行更改。这样做可能会导致堆栈模板与堆栈资源的当前状态不匹配,如果您更新或删除堆栈,可能会导致错误。
但是,如果您意外地修改了CloudFormation管理的资源并需要恢复,则除了简单地完全删除并重新创建堆栈(可能是不可接受的选项)之外,您可能还有其他一些有限的选择:
CloudFormation不可能根据外部修改资源的当前状态自动更新其内部状态。
但是,根据确切的资源类型,在某些情况下,您可以在之后通过应用与资源的当前状态匹配的堆栈更新来手动更新CloudFormation。
同样,CloudFormation不可能将外部修改的资源自动还原回其原始未修改的CloudFormation状态。
但是,根据确切的资源类型,在某些情况下,您可以:
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句