CloudFormation不可导入资源的伪导入方案及问题咨询
关于AWS CloudFormation关联挂载类资源伪导入的问题解答
问题1:VPCGatewayAttachment伪导入操作的生产无破坏性验证
该操作在属性完全匹配的前提下是100%无业务中断、无破坏性的,可直接用于生产环境:
- VPCGatewayAttachment本身属于AWS侧无独立实体ID的逻辑关联资源,你观测到的PhysicalResourceId变化是CloudFormation纳管逻辑资源时生成的内部标识,底层实际的VPC与IGW挂载关系不会有任何变动
- 只要模板中定义的
VpcId、InternetGatewayId参数和现有存量挂载的参数完全一致,CloudFormation执行UPDATE变更集时只会将该逻辑资源纳入堆栈管理,不会触发销毁重建操作,全程不会影响VPC的公网连通性
问题2:支持同类无中断伪导入的资源清单
所有不支持原生导入的逻辑关联、挂载、路由类资源,只要属性可唯一匹配存量资源,都可以用该方案纳管,常见可用资源如下:
- 路由类:
AWS::EC2::Route - 子网关联类:
AWS::EC2::SubnetRouteTableAssociation、AWS::EC2::SubnetNetworkAclAssociation - 地址绑定类:
AWS::EC2::EIPAssociation - 存储挂载类:
AWS::EC2::VolumeAttachment - VPC配置关联类:
AWS::EC2::VPCCidrBlock
操作注意事项
- 执行UPDATE变更集前务必先预览变更详情,确认变更类型仅为「添加资源」,无任何「替换」「删除」类操作后再执行
- 所有纳入模板的资源属性必须和存量资源的实际配置100%一致,属性不匹配会触发资源销毁重建,导致业务中断
- 你提供的实操演示代码运行前需将所有
.ps1和.yaml文件放在同一目录,提前配置好具备对应权限的AWS CLI,替换脚本内的S3存储桶名称为全局唯一值即可运行,脚本执行结束后会自动清理所有创建的资源,无残留。
内容的提问来源于stack exchange,提问作者MikeJansen
相关产品推荐
相关产品推荐

