AWS::RDS::DBCluster - AWS CloudFormation
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

AWS::RDS::DBCluster

AWS::RDS::DBCluster 资源创建一个 Amazon Aurora 数据库集群。有关更多信息,请参阅 Amazon Aurora 用户指南 中的管理 Amazon Aurora 数据库集群

注意

您只能在支持 Amazon Aurora 的区域中创建此资源。

更新数据库集群

当对标记为“更新要求:替换”的属性进行更新时,AWS CloudFormation 首先会创建一个替换数据库集群,再将其他依赖资源的引用更改为指向该替换数据库集群,最后才删除旧的数据库集群。

重要

我们强烈建议您在更新堆栈之前制作数据库的快照。如果您不这样做,则在 AWS CloudFormation 替换您的数据库集群时会丢失数据。要保留您的数据,请执行以下过程:

  1. 停用所有使用数据库集群的应用程序,以便数据库实例上没有任何活动。

  2. 创建数据库集群的快照。有关创建数据库快照的更多信息,请参阅创建数据库集群快照

  3. 如果要使用数据库集群快照还原数据库集群,请使用数据库集群更改来修改已更新的模板,并添加具有要使用的数据库集群快照 ID 的 SnapshotIdentifier 属性。

    使用 SnapshotIdentifier 属性还原数据库群集后,您必须为以后对该数据库群集的更新指定相同的 SnapshotIdentifier 属性。为更新指定此属性时,不会再次从数据库集群快照还原数据库集群,并且数据库中的数据也不会更改。但是,如果您不指定 SnapshotIdentifier 属性,则会创建一个空的数据库群集,并删除原始数据库群集。如果指定的属性与先前的快照还原属性不同,则将从指定的 SnapshotIdentifier 属性还原新的数据库集群,并删除原始数据库集群。

  4. 更新堆栈。

有关更新此资源的其他属性的更多信息,请参阅 ModifyDBCluster。有关更新堆栈的更多信息,请参阅 AWS CloudFormation 堆栈更新

删除数据库集群

DeletionPolicy 资源的默认 AWS::RDS::DBClusterSnapshot。有关 AWS CloudFormation 如何删除资源的更多信息,请参阅 DeletionPolicy 属性

语法

要在 AWS CloudFormation 模板中声明此实体,请使用以下语法:

JSON

{ "Type" : "AWS::RDS::DBCluster", "Properties" : { "AssociatedRoles" : [ DBClusterRole, ... ], "AvailabilityZones" : [ String, ... ], "BacktrackWindow" : Long, "BackupRetentionPeriod" : Integer, "DatabaseName" : String, "DBClusterIdentifier" : String, "DBClusterParameterGroupName" : String, "DBSubnetGroupName" : String, "DeletionProtection" : Boolean, "EnableCloudwatchLogsExports" : [ String, ... ], "EnableHttpEndpoint" : Boolean, "EnableIAMDatabaseAuthentication" : Boolean, "Engine" : String, "EngineMode" : String, "EngineVersion" : String, "KmsKeyId" : String, "MasterUsername" : String, "MasterUserPassword" : String, "Port" : Integer, "PreferredBackupWindow" : String, "PreferredMaintenanceWindow" : String, "ReplicationSourceIdentifier" : String, "RestoreType" : String, "ScalingConfiguration" : ScalingConfiguration, "SnapshotIdentifier" : String, "SourceDBClusterIdentifier" : String, "SourceRegion" : String, "StorageEncrypted" : Boolean, "Tags" : [ Tag, ... ], "UseLatestRestorableTime" : Boolean, "VpcSecurityGroupIds" : [ String, ... ] } }

属性

AssociatedRoles

提供与数据库集群关联的 AWS Identity and Access Management (IAM) 角色的列表。与数据库集群关联的 IAM 角色授予数据库集群代表您访问其他 AWS 服务的权限。

必需:否

类型DBClusterRole 列表

Update requires: No interruption

AvailabilityZones

可以在其中创建数据库集群中的实例的可用区 (AZ) 的列表。有关 AWS 区域和可用区的信息,请参阅 Amazon Aurora 用户指南 中的选择区域和可用区

必需:否

类型:字符串列表

Update requires: Replacement

BacktrackWindow

目标回溯时段(以秒为单位)。要禁用回溯,请将此值设置为 0。

注意

目前,仅对于 Aurora MySQL 数据库集群支持回溯。

默认值:0

约束:

  • 如果指定,该值必须设置为 0 到 259,200(72 小时)之间的数字。

必需:否

类型:长整型

Update requires: No interruption

BackupRetentionPeriod

自动备份的保留天数。

默认值:1

约束:

  • 值必须介于 1 到 35 之间

必需:否

类型:整数

Update requires: No interruption

DatabaseName

数据库的名称。如果您不提供名称,Amazon RDS 将不会在此数据库集群中创建数据库。有关命名约束,请参阅 Amazon RDS 用户指南 中的命名约束

必需:否

类型:字符串

Update requires: Replacement

DBClusterIdentifier

数据库集群标识符。该参数作为一个小写字符串存储。

约束:

  • 必须包含 1 到 63 个字母、数字或连字符。

  • 第一个字符必须是字母。

  • 不能以连字符结尾,也不能包含两个连续连字符。

示例:my-cluster1

必需:否

类型:字符串

Update requires: Replacement

DBClusterParameterGroupName

要与该数据库集群关联的数据库集群参数组的名称。

重要

如果将参数组应用于现有数据库集群,则其数据库实例可能需要重新启动。这可能导致在数据库实例重新启动时出现中断。

如果将更改应用于与已停止的数据库集群关联的参数组,则更新堆栈将等待数据库集群启动。

注意

如果省略该参数,则会使用 default.aurora5.6。如果使用 default.aurora5.6,则为 aurora-mysql 属性指定 aurora-postgresqlEngine 可能会导致错误。

要列出所有可用的数据库集群参数组名称,请使用以下命令:

aws rds describe-db-cluster-parameter-groups --query "DBClusterParameterGroups[].DBClusterParameterGroupName" --output text

必需:否

类型:字符串

Update requires: No interruption

DBSubnetGroupName

要与此数据库群集关联的数据库子网组。

必需:否

类型:字符串

Update requires: Replacement

DeletionProtection

一个值,指示数据库集群是否已启用删除保护。在启用删除保护时,无法删除数据库。默认情况下,将禁用删除保护。

必需:否

类型:布尔值

Update requires: No interruption

EnableCloudwatchLogsExports

需要启用以导出到 CloudWatch Logs 的日志类型的列表。列表中的值取决于使用的数据库引擎。有关更多信息,请参阅 Amazon Aurora 用户指南 中的将数据库日志发布到 Amazon CloudWatch Logs

必需:否

类型:字符串列表

Update requires: No interruption

EnableHttpEndpoint

指示是否为 Aurora Serverless 数据库集群启用 HTTP 终端节点的值。默认情况下,将禁用 HTTP 终端节点。

如果启用,HTTP 终端节点将提供无连接 Web 服务 API,以便在 Aurora Serverless 数据库集群上运行 SQL 查询。您也可以使用查询编辑器从 RDS 控制台中查询数据库。

有关更多信息,请参阅 Amazon Aurora 用户指南 中的使用 Aurora Serverless 数据 API

必需:否

类型:布尔值

Update requires: No interruption

EnableIAMDatabaseAuthentication

一个值,指示是否启用 AWS Identity and Access Management (IAM) 账户与数据库账户之间的映射。默认情况下,映射处于禁用状态。

有关更多信息,请参阅 Amazon Aurora 用户指南中的 IAM 数据库身份验证

必需:否

类型:布尔值

Update requires: No interruption

Engine

用于此数据库集群的数据库引擎的名称。

有效值:aurora(对于 MySQL 5.6 兼容的 Aurora)、aurora-mysql(对于 MySQL 5.7 兼容的 Aurora)和 aurora-postgresql

必需:是

类型:字符串

Update requires: Replacement

EngineMode

数据库集群的数据库引擎模式,可以是 provisionedserverless

限制和要求适用于 serverless 数据库引擎模式。有关更多信息,请参阅 Aurora Serverless 的限制

必需:否

类型:字符串

Update requires: Replacement

EngineVersion

要使用的数据库引擎的版本号。

要列出 aurora 的所有可用引擎版本(对于兼容 MySQL 5.6 的 Aurora),请使用以下命令:

aws rds describe-db-engine-versions --engine aurora --query "DBEngineVersions[].EngineVersion"

要列出 aurora-mysql 的所有可用引擎版本(对于兼容 MySQL 5.7 的 Aurora),请使用以下命令:

aws rds describe-db-engine-versions --engine aurora-mysql --query "DBEngineVersions[].EngineVersion"

要列出 aurora-postgresql 的所有可用引擎版本,请使用以下命令:

aws rds describe-db-engine-versions --engine aurora-postgresql --query "DBEngineVersions[].EngineVersion"

必需:否

类型:字符串

Update requires: Replacement

KmsKeyId

用于对数据库集群中的数据库实例进行加密的 AWS Key Management Service 主密钥的 Amazon 资源名称 (ARN),如 arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef。如果启用 StorageEncrypted 属性但不指定此属性,则使用默认主密钥。如果指定此属性,则必须将 StorageEncrypted 属性设为 true

必需:否

类型:字符串

Update requires: Replacement

MasterUsername

数据库集群的主用户名称。

注意

如果您指定了 SourceDBInstanceIdentifierSnapshotIdentifier 属性,请勿指定此属性。值继承自源数据库实例或快照。

必需:否

类型:字符串

Update requires: Replacement

MasterUserPassword

数据库实例的主密码。

注意

如果您指定了 SourceDBInstanceIdentifierSnapshotIdentifier 属性,请勿指定此属性。值继承自源数据库实例或快照。

必需:否

类型:字符串

Update requires: No interruption

Port

数据库集群中的数据库实例接受连接的端口号。

默认值:

  • EngineModeprovisioned 时,为 3306(同时适用于 Aurora MySQL 和 Aurora PostgreSQL)。

  • EngineModeserverless 时:

    • 3306Engineauroraaurora-mysql

    • 5432 (当 Engineaurora-postgresql 时)

必需:否

类型:整数

Update requires: No interruption

PreferredBackupWindow

使用 BackupRetentionPeriod 参数启用了自动备份时,自动执行备份的日常时间范围。

默认值是从每个 AWS 区域的 8 小时时间段中随机选择的 30 分钟时间。要查看可用的时段,请参阅 Amazon Aurora 用户指南 中的调整首选数据库集群维护时段

约束:

  • 必须采用 hh24:mi-hh24:mi 格式。

  • 必须采用通用协调时间 (UTC)。

  • 不得与首选维护时段冲突。

  • 必须至少为 30 分钟。

必需:否

类型:字符串

Update requires: No interruption

PreferredMaintenanceWindow

可进行系统维护的每周时间范围(采用通用协调时间 (UTC))。

格式:ddd:hh24:mi-ddd:hh24:mi

默认值是每个 AWS 区域 8 小时的时间段中随机选择的 30 分钟时段(随机选取周中的某天进行)。要查看可用的时段,请参阅 Amazon Aurora 用户指南 中的调整首选数据库集群维护时段

有效值:Mon、Tue、Wed、Thu、Fri、Sat、Sun。

约束:至少为 30 分钟的时段。

必需:否

类型:字符串

Update requires: No interruption

ReplicationSourceIdentifier

源数据库实例或数据库集群(如果该数据库集群是作为只读副本创建的)的 Amazon 资源名称 (ARN)。

必需:否

类型:字符串

Update requires: No interruption

RestoreType

要执行的还原类型。可以指定以下值之一:

  • full-copy – 新数据库集群作为源数据库集群的完整副本还原。

  • copy-on-write – 新数据库集群作为源数据库集群的克隆还原。

约束:如果源数据库群集的引擎版本早于 1.11,则不能指定 copy-on-write

如果您没有指定 RestoreType 值,则新数据库集群作为源数据库集群的完整副本还原。

必需:否

类型:字符串

Update requires: Replacement

ScalingConfiguration

ScalingConfiguration 属性类型指定 Aurora Serverless 数据库集群的扩展配置。

必需:否

类型ScalingConfiguration

Update requires: No interruption

SnapshotIdentifier

要从中进行还原的数据库快照或数据库集群快照的标识符。

您可以使用名称或 Amazon 资源名称 (ARN) 指定数据库集群快照。但是,您只能使用 ARN 指定数据库快照。

使用 SnapshotIdentifier 属性还原数据库群集后,您必须为以后对该数据库群集的更新指定相同的 SnapshotIdentifier 属性。当您为更新指定此属性时,不会再次从快照还原数据库群集,并且数据库中的数据也不会更改。但是,如果您不指定 SnapshotIdentifier 属性,则会创建一个空的数据库群集,并删除原始数据库群集。如果指定的属性与先前的快照还原属性不同,则将从指定的 SnapshotIdentifier 属性还原新的数据库集群,并删除原始数据库集群。

约束:

  • 必须与现有快照的标识符匹配。

必需:否

类型:字符串

Update requires: Replacement

SourceDBClusterIdentifier

要从中还原的源数据库集群的标识符。

约束:

  • 必须匹配现有 DBCluster 的标识符。

必需:否

类型:字符串

Update requires: Replacement

SourceRegion

复制数据库集群时包含源数据库集群的 AWS 区域。例如:us-east-1

必需:否

类型:字符串

Update requires: Replacement

StorageEncrypted

指示数据库集群是否已加密。

如果您指定了 SnapshotIdentifierSourceDBInstanceIdentifier 属性,请勿指定此属性。值继承自快照或源数据库实例。

重要

如果指定 KmsKeyId 属性,则必须启用加密。

必需:否

类型:布尔值

Update requires: Replacement

Tags

要分配给数据库集群的标签。

必需:否

类型Tag 的列表

Update requires: No interruption

UseLatestRestorableTime

一个值,指示是否将数据库群集还原到最近的可还原备份时间。默认情况下,数据库群集不会还原到最近的可还原备份时间。

必需:否

类型:布尔值

Update requires: Replacement

VpcSecurityGroupIds

要与此数据库集群关联的 EC2 VPC 安全组的列表。

如果您计划更新资源,请勿在共享 VPC 中指定 VPC 安全组。

必需:否

类型:字符串列表

Update requires: No interruption

返回值

Ref

在将此资源的逻辑 ID 传递给内部 Ref 函数时,Ref 返回数据库集群的名称。

For more information about using the Ref function, see Ref.

Fn::GetAtt

Fn::GetAtt 内部函数返回此类型的一个指定属性的值。以下为可用属性和示例返回值。

有关使用 Fn::GetAtt 内部函数的更多信息,请参阅 Fn::GetAtt

Endpoint.Address

数据库集群的连接终端节点。例如:mystack-mydbcluster-1apw1j4phylrk.cg034hpkmmjt.us-east-2.rds.amazonaws.com

Endpoint.Port

在该数据库集群上接受连接的端口号。例如:3306

ReadEndpoint.Address

数据库集群的读取器终端节点。例如:mystack-mydbcluster-ro-1apw1j4phylrk.cg034hpkmmjt.us-east-2.rds.amazonaws.com

示例

以下示例创建数据库集群。

注意

有关使用 Application Auto Scaling 为数据库集群添加扩展策略的示例,请查阅声明 Aurora 数据库集群的扩展策略

创建具有两个数据库实例的 Amazon Aurora 数据库集群

以下示例创建一个 Amazon Aurora 数据库集群,然后在其中添加两个数据库实例。Amazon RDS 会在集群中自动分配写入器和读取器数据库实例,因此,使用集群终端节点读取和写入数据,而不是单个数据库实例终端节点。

注意

该示例使用 time_zone Aurora MySQL 参数。对于 Aurora PostgreSQL,请改用 timezone 参数。

JSON

{ "RDSCluster": { "Type": "AWS::RDS::DBCluster", "Properties": { "MasterUsername": { "Ref": "username" }, "MasterUserPassword": { "Ref": "password" }, "Engine": "aurora", "DBSubnetGroupName": { "Ref": "DBSubnetGroup" }, "DBClusterParameterGroupName": { "Ref": "RDSDBClusterParameterGroup" } } }, "RDSDBInstance1": { "Type": "AWS::RDS::DBInstance", "Properties": { "DBSubnetGroupName": { "Ref": "DBSubnetGroup" }, "DBParameterGroupName": { "Ref": "RDSDBParameterGroup" }, "Engine": "aurora", "DBClusterIdentifier": { "Ref": "RDSCluster" }, "PubliclyAccessible": "true", "AvailabilityZone": { "Fn::GetAtt": [ "Subnet1", "AvailabilityZone" ] }, "DBInstanceClass": "db.r3.xlarge" } }, "RDSDBInstance2": { "Type": "AWS::RDS::DBInstance", "Properties": { "DBSubnetGroupName": { "Ref": "DBSubnetGroup" }, "DBParameterGroupName": { "Ref": "RDSDBParameterGroup" }, "Engine": "aurora", "DBClusterIdentifier": { "Ref": "RDSCluster" }, "PubliclyAccessible": "true", "AvailabilityZone": { "Fn::GetAtt": [ "Subnet2", "AvailabilityZone" ] }, "DBInstanceClass": "db.r3.xlarge" } }, "RDSDBClusterParameterGroup": { "Type": "AWS::RDS::DBClusterParameterGroup", "Properties": { "Description": "CloudFormation Sample Aurora Cluster Parameter Group", "Family": "aurora5.6", "Parameters": { "time_zone": "US/Eastern" } } }, "RDSDBParameterGroup": { "Type": "AWS::RDS::DBParameterGroup", "Properties": { "Description": "CloudFormation Sample Aurora Parameter Group", "Family": "aurora5.6", "Parameters": { "sql_mode": "IGNORE_SPACE" } } } }

YAML

--- RDSCluster: Properties: DBClusterParameterGroupName: Ref: RDSDBClusterParameterGroup DBSubnetGroupName: Ref: DBSubnetGroup Engine: aurora MasterUserPassword: Ref: password MasterUsername: Ref: username Type: "AWS::RDS::DBCluster" RDSDBClusterParameterGroup: Properties: Description: "CloudFormation Sample Aurora Cluster Parameter Group" Family: aurora5.6 Parameters: time_zone: US/Eastern Type: "AWS::RDS::DBClusterParameterGroup" RDSDBInstance1: Properties: AvailabilityZone: Fn::GetAtt: - Subnet1 - AvailabilityZone DBClusterIdentifier: Ref: RDSCluster DBInstanceClass: db.r3.xlarge DBParameterGroupName: Ref: RDSDBParameterGroup DBSubnetGroupName: Ref: DBSubnetGroup Engine: aurora PubliclyAccessible: "true" Type: "AWS::RDS::DBInstance" RDSDBInstance2: Properties: AvailabilityZone: Fn::GetAtt: - Subnet2 - AvailabilityZone DBClusterIdentifier: Ref: RDSCluster DBInstanceClass: db.r3.xlarge DBParameterGroupName: Ref: RDSDBParameterGroup DBSubnetGroupName: Ref: DBSubnetGroup Engine: aurora PubliclyAccessible: "true" Type: "AWS::RDS::DBInstance" RDSDBParameterGroup: Properties: Description: "CloudFormation Sample Aurora Parameter Group" Family: aurora5.6 Parameters: sql_mode: IGNORE_SPACE Type: "AWS::RDS::DBParameterGroup"

创建将日志导出到 Amazon CloudWatch Logs 的 Amazon Aurora 数据库集群

以下示例创建将日志导出到 Amazon CloudWatch Logs 的 Amazon Aurora PostgreSQL 数据库集群。有关将 Aurora 数据库集群日志导出到 Amazon CloudWatch Logs 更多信息,请参阅 Amazon Aurora 用户指南 中的将数据库日志发布到 Amazon CloudWatch Logs

JSON

{ "AWSTemplateFormatVersion" : "2010-09-09", "Description" : "AWS CloudFormation Sample Template for sending Aurora DB cluster logs to CloudWatch Logs: Sample template showing how to create an Aurora PostgreSQL DB cluster that exports logs to CloudWatch Logs. **WARNING** This template enables log exports to CloudWatch Logs. You will be billed for the AWS resources used if you create a stack from this template.", "Parameters" : { "DBUsername" : { "NoEcho" : "true", "Description" : "Username for MySQL database access", "Type" : "String", "MinLength" : "1", "MaxLength" : "16", "AllowedPattern" : "[a-zA-Z][a-zA-Z0-9]*", "ConstraintDescription" : "must begin with a letter and contain only alphanumeric characters." }, "DBPassword" : { "NoEcho" : "true", "Description" : "Password MySQL database access", "Type" : "String", "MinLength" : "8", "MaxLength" : "41", "AllowedPattern" : "[a-zA-Z0-9]*", "ConstraintDescription" : "must contain only alphanumeric characters." } }, "Resources" : { "RDSCluster" : { "Type": "AWS::RDS::DBCluster", "Properties" : { "MasterUsername" : { "Ref" : "DBUsername" }, "MasterUserPassword" : { "Ref" : "DBPassword" }, "DBClusterIdentifier" : "aurora-postgresql-cluster", "Engine" : "aurora-postgresql", "EngineVersion" : "10.7", "DBClusterParameterGroupName" : "default.aurora-postgresql10", "EnableCloudwatchLogsExports" : ["postgresql"] } }, "RDSDBInstance1": { "Type" : "AWS::RDS::DBInstance", "Properties" : { "DBInstanceIdentifier" : "aurora-postgresql-instance1", "Engine" : "aurora-postgresql", "DBClusterIdentifier" : { "Ref" : "RDSCluster" }, "PubliclyAccessible" : "true", "DBInstanceClass" : "db.r4.large" } }, "RDSDBInstance2": { "Type" : "AWS::RDS::DBInstance", "Properties" : { "DBInstanceIdentifier" : "aurora-postgresql-instance2", "Engine" : "aurora-postgresql", "DBClusterIdentifier" : { "Ref" : "RDSCluster" }, "PubliclyAccessible" : "true", "DBInstanceClass" : "db.r4.large" } }, } }

YAML

AWSTemplateFormatVersion: 2010-09-09 Description: >- AWS CloudFormation Sample Template for sending Aurora DB cluster logs to CloudWatch Logs: Sample template showing how to create an Aurora PostgreSQL DB cluster that exports logs to CloudWatch Logs. **WARNING** This template enables log exports to CloudWatch Logs. You will be billed for the AWS resources used if you create a stack from this template. Parameters: DBUsername: NoEcho: 'true' Description: Username for MySQL database access Type: String MinLength: '1' MaxLength: '16' AllowedPattern: '[a-zA-Z][a-zA-Z0-9]*' ConstraintDescription: must begin with a letter and contain only alphanumeric characters. DBPassword: NoEcho: 'true' Description: Password MySQL database access Type: String MinLength: '8' MaxLength: '41' AllowedPattern: '[a-zA-Z0-9]*' ConstraintDescription: must contain only alphanumeric characters. Resources: RDSCluster: Type: 'AWS::RDS::DBCluster' Properties: MasterUsername: !Ref DBUsername MasterUserPassword: !Ref DBPassword DBClusterIdentifier: aurora-postgresql-cluster Engine: aurora-postgresql EngineVersion: '10.7' DBClusterParameterGroupName: default.aurora-postgresql10 EnableCloudwatchLogsExports: - postgresql RDSDBInstance1: Type: 'AWS::RDS::DBInstance' Properties: DBInstanceIdentifier: aurora-postgresql-instance1 Engine: aurora-postgresql DBClusterIdentifier: !Ref RDSCluster PubliclyAccessible: 'true' DBInstanceClass: db.r4.large RDSDBInstance2: Type: 'AWS::RDS::DBInstance' Properties: DBInstanceIdentifier: aurora-postgresql-instance2 Engine: aurora-postgresql DBClusterIdentifier: !Ref RDSCluster PubliclyAccessible: 'true' DBInstanceClass: db.r4.large

创建 Amazon Aurora Serverless 数据库集群

以下示例创建 Amazon Aurora Serverless 数据库集群。Aurora Serverless 数据库集群是一种自动启动、关闭并根据应用程序的需求扩展或缩减计算容量的数据库集群。有关 Aurora Serverless 数据库集群的更多信息,请参阅 Amazon Aurora 用户指南 中的使用 Amazon Aurora Serverless

注意

此示例通过将 Engine 设置为 aurora 并将 EngineVersion 设置为 5.6.10a 来创建 Aurora MySQL Serverless 数据库集群。要创建 Aurora PostgreSQL Serverless 数据库集群,请将 Engine 设置为 aurora-postgresql 并将 EngineVersion 设置为 10.7

JSON

{ "AWSTemplateFormatVersion" : "2010-09-09", "Description" : "AWS CloudFormation Sample Template AuroraServerlessDBCluster: Sample template showing how to create an Amazon Aurora Serverless DB cluster. **WARNING** This template creates an Amazon Aurora DB cluster. You will be billed for the AWS resources used if you create a stack from this template.", "Parameters" : { "DBUsername" : { "NoEcho" : "true", "Description" : "Username for MySQL database access", "Type" : "String", "MinLength" : "1", "MaxLength" : "16", "AllowedPattern" : "[a-zA-Z][a-zA-Z0-9]*", "ConstraintDescription" : "must begin with a letter and contain only alphanumeric characters." }, "DBPassword" : { "NoEcho" : "true", "Description" : "Password MySQL database access", "Type" : "String", "MinLength" : "8", "MaxLength" : "41", "AllowedPattern" : "[a-zA-Z0-9]*", "ConstraintDescription" : "must contain only alphanumeric characters." } }, "Resources" : { "RDSCluster" : { "Type": "AWS::RDS::DBCluster", "Properties" : { "MasterUsername" : { "Ref": "DBUsername" }, "MasterUserPassword" : { "Ref": "DBPassword" }, "DBClusterIdentifier" : "my-serverless-cluster", "Engine" : "aurora", "EngineVersion" : "5.6.10a", "EngineMode" : "serverless", "ScalingConfiguration" : { "AutoPause" : true, "MinCapacity" : 4, "MaxCapacity" : 32, "SecondsUntilAutoPause" : 1000 } } } } }

YAML

AWSTemplateFormatVersion: 2010-09-09 Description: >- AWS CloudFormation Sample Template AuroraServerlessDBCluster: Sample template showing how to create an Amazon Aurora Serverless DB cluster. **WARNING** This template creates an Amazon Aurora DB cluster. You will be billed for the AWS resources used if you create a stack from this template. Parameters: DBUsername: NoEcho: 'true' Description: Username for MySQL database access Type: String MinLength: '1' MaxLength: '16' AllowedPattern: '[a-zA-Z][a-zA-Z0-9]*' ConstraintDescription: must begin with a letter and contain only alphanumeric characters. DBPassword: NoEcho: 'true' Description: Password MySQL database access Type: String MinLength: '8' MaxLength: '41' AllowedPattern: '[a-zA-Z0-9]*' ConstraintDescription: must contain only alphanumeric characters. Resources: RDSCluster: Type: 'AWS::RDS::DBCluster' Properties: MasterUsername: !Ref DBUsername MasterUserPassword: !Ref DBPassword DBClusterIdentifier: my-serverless-cluster Engine: aurora EngineVersion: 5.6.10a EngineMode: serverless ScalingConfiguration: AutoPause: true MinCapacity: 4 MaxCapacity: 32 SecondsUntilAutoPause: 1000