amazon-web-services - 无法使用 CloudFormation 创建 PostgreSQL,但可以使用 Web 界面

标签 amazon-web-services aws-cloudformation amazon-rds amazon-aurora aws-aurora-serverless

我正在尝试使用 CloudFormation 创建一个 Serverless V2 Aurora PostgreSQL 集群和一个实例。

使用 AWS Web 界面时工作正常,但使用 CloudFormation(通过无服务器)时我得到了

Error: CREATE_FAILED: auroraCluster (AWS::RDS::DBCluster) Resource handler returned message: "The engine mode serverless you requested is currently unavailable.

CF 模板:

# Database
auroraCluster:
  Type: AWS::RDS::DBCluster
  Properties: 
    AutoMinorVersionUpgrade: 'true'
    AvailabilityZones:
      - eu-north-1a
      - eu-north-1b
      - eu-north-1c
    DatabaseName:
      publisher
    DeletionProtection: !If [isProd, 'true', 'false']
    Engine: aurora-postgresql
    EngineMode: serverless
    EngineVersion: '14.6'

auroraInstance:
  Type: AWS::RDS::DBInstance
  Properties: 
    AllowMajorVersionUpgrade: !If [isProd, 'true', 'false']
    AutoMinorVersionUpgrade: 'true'
    AvailabilityZone: !Sub ${AWS::Region}a
    DBClusterIdentifier: !Ref auroraCluster
    DBInstanceIdentifier: ${self:service}-rds-${sls:stage}
    DeleteAutomatedBackups: !If [isProd, 'false', 'true']
    DeletionProtection: !If [isProd, 'true', 'false']
    Engine: aurora-postgresql
    ManageMasterUserPassword: 'true'
    MasterUsername: postgres
    MasterUserSecret:
      SecretArn: !Ref secretRds

最佳答案

postgress 14.6 的无服务器 aurora 仅支持 serverless v2 。这需要与您不同的设置。例如,您必须提供 ServerlessV2ScalingConfiguration、删除 EngineMode 并使用设置为 db.serverlessDBInstanceClass。例如:

Resources:

    auroraCluster:
        Type: AWS::RDS::DBCluster
        Properties:
            #AutoMinorVersionUpgrade: 'true'
            DatabaseName:
                publisher
            Engine: aurora-postgresql
            EngineVersion: '14.6'
            MasterUsername: "trdyd"
            MasterUserPassword: "gfsdg344231"
            ServerlessV2ScalingConfiguration:
                MinCapacity: 1
                MaxCapacity: 4


    auroraInstance:
        Type: 'AWS::RDS::DBInstance'
        Properties:
            Engine: aurora-postgresql
            DBInstanceClass: db.serverless
            DBClusterIdentifier: !Ref auroraCluster

显然,您必须根据您的实际需求调整上面的示例(该示例有效),同时考虑到无服务器 v2 功能。

关于amazon-web-services - 无法使用 CloudFormation 创建 PostgreSQL,但可以使用 Web 界面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75359606/

相关文章:

amazon-web-services - 在 Amazon Mechanical Turk 上进行不超过一次的调查

swift - 部署自定义运行时 lambda 时 sam 包太大

amazon-web-services - 如何使用lambda将s3中的最新代码部署到lambda函数

java - Amazon RDS + Spring MVC + Flyway - 未选择任何数据库

Django on EC2 security group fo postgresql on RDS

sql - AWS RDS : specifying lc_collate and lc_ctype for PostgreSQL

mysql - Navicat Premium Essentials 不支持 SSH

bash - AWS CLI 挂起等待用户输入

amazon-web-services - AWS S3 签名 url - X-Amz-Security-Token 过期太早

amazon-web-services - AWS RDS 证书捆绑 URL 之间有什么区别?