You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为AWS::RDS::DBCluster设置DeletionPolicy和UpdateReplacePolicy?

能否修改AWS::RDS::DBCluster的DeletionPolicy和UpdateReplacePolicy?

根据AWS文档,AWS::RDS::DBCluster资源的默认DeletionPolicy是Snapshot,但我尝试将其设置为Delete时,收到错误提示:

#: extraneous key [DeletionPolicy] is not permitted

问题原因

模板报错是因为DeletionPolicy是资源级别的属性,不属于Properties的子项,同时你还多打了个逗号(Delete,),这两个问题共同导致CloudFormation验证失败。

解决方案

可以修改DeletionPolicy和UpdateReplacePolicy,只要将它们放在资源的根层级(与Type、Properties同级)即可,修正后的模板示例如下:

auroraCluster:
  Type: AWS::RDS::DBCluster
  DeletionPolicy: Delete
  UpdateReplacePolicy: Delete # 可选,按需设置资源被替换时的行为
  Properties:
    AvailabilityZones:
      - eu-north-1a
      - eu-north-1b
      - eu-north-1c
    DatabaseName: publisher
    DBClusterIdentifier: ${self:service}-db-cluster-${sls:stage}
    DBSubnetGroupName: !Ref subnetGroup
    DeletionProtection: !If [isProd, 'true', 'false']
    Engine: aurora-postgresql
    Port: 5432
    EngineVersion: 14.3
    KmsKeyId: !Ref kmsKey
    ManageMasterUserPassword: 'true'
    MasterUsername: postgres
    MasterUserSecret:
      SecretArn: !Ref secretRds
    ServerlessV2ScalingConfiguration:
      MaxCapacity: 2
      MinCapacity: 1
    StorageEncrypted: 'true'
    VpcSecurityGroupIds:
      - !Ref securityGroupDb

设置完成后,删除CloudFormation栈时会直接删除DBCluster,而非默认创建快照;UpdateReplacePolicy则用于控制当资源因属性修改需要被替换时的行为,同样支持Delete、Snapshot等选项。

内容的提问来源于stack exchange,提问作者r.r

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 13:55:41