【发布时间】:2021-12-29 07:28:24
【问题描述】:
使用 CloudFormation,我创建了一个带有附加 EBS 卷的 EC2 实例。虽然创建工作正常,但删除总是失败,因为 CloudFormation 尝试在 EC2 实例之前删除 EBS 卷,因此可以预见会发生错误。
卷 vol-xxxxxx 目前已附加到 i-xxxxxx
在模板中,没有显式的依赖,但是我的理解是依赖也可以是隐式的。从下面的sn-p可以看出,EC2实例指定的VolumeId是!Ref SasEbsVolume,因此隐含了依赖关系,应该在EBS卷之前删除EC2实例。
Resources:
SasEbsVolume:
Type: AWS::EC2::Volume
DeletionPolicy: Snapshot
Properties:
...
SasInstance:
Type: AWS::EC2::Instance
Properties:
...
Volumes:
- Device: /dev/xvdd
VolumeId: !Ref SasEbsVolume
我对 CloudFormation 中的依赖项如何工作的理解不正确,在这种情况下我可以声明一个显式依赖项,还是 CloudFormation 没有做它应该做的事情?
【问题讨论】:
标签: dependencies amazon-cloudformation