ALIYUN::RDS::DBInstance类型用于创建RDS数据库实例。
语法
{
"Type": "ALIYUN::RDS::DBInstance",
"Properties": {
"AutoUpgradeMinorVersion": String,
"PeriodType": String,
"Category": String,
"PrivateIpAddress": String,
"ResourceGroupId": String,
"TargetDedicatedHostIdForSlave": String,
"DBInstanceNetType": String,
"DBTimeZone": String,
"DedicatedHostGroupId": String,
"EncryptionKey": String,
"PreferredBackupPeriod": List,
"SecurityIPList": String,
"SecurityGroupId": String,
"DBIsIgnoreCase": Integer,
"DBInstanceStorage": Integer,
"DBMappings": List,
"Port": Integer,
"ConnectionStringPrefix": String,
"ConnectionStringType": String,
"MultiAZ": Boolean,
"MaintainTime": String,
"Engine": String,
"DBParamGroupId": String,
"DBInstanceDescription": String,
"Tags": Map,
"TargetDedicatedHostIdForMaster": String,
"EngineVersion": String,
"ZoneId": String,
"DBInstanceClass": String,
"AllocatePublicConnection": Boolean,
"PreferredBackupTime": String,
"VSwitchId": String,
"BackupPolicyMode": String,
"Period": Integer,
"PayType": String,
"DBInstanceStorageType": String,
"RoleARN": String,
"MasterUserPassword": String,
"MasterUserType": String,
"VpcId": String,
"MasterUsername": String,
"ConnectionMode": String,
"BackupRetentionPeriod": Number,
"TargetDedicatedHostIdForLog": String,
"SlaveZoneIds": List,
"AutoRenew": Boolean,
"SQLCollectorStatus": String,
"SSLSetting": String,
"LogBackupFrequency": String,
"EnableBackupLog": Boolean,
"ReleasedKeepPolicy": String,
"ArchiveBackupRetentionPeriod": Integer,
"ArchiveBackupKeepPolicy": String,
"ArchiveBackupKeepCount": Integer,
"LogBackupRetentionPeriod": Integer,
"HighSpaceUsageProtection": String,
"LocalLogRetentionSpace": Integer,
"BackUpCategory": String,
"CompressType": Integer,
"LocalLogRetentionHours": Integer,
"LogBackupLocalRetentionNumber": Integer,
"ServerlessConfig": Map,
"InstanceNetworkType": String,
"StorageAutoScale": String,
"StorageUpperBound": Number,
"StorageThreshold": Number,
"BurstingEnabled": Boolean,
"IoAccelerationEnabled": String,
"SubscriptionDeletionForce": Boolean,
"ColdDataEnabled": Boolean,
"DeletionProtection": Boolean
}
}属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
ResourceGroupId | String | 否 | 是 | 资源组ID。 | 无 |
Engine | String | 是 | 数据库类型。 | 取值:
| |
DBInstanceStorage | Integer | 是 | 是 | 数据库存储空间。 | 取值:
单位:GB。 说明 每5 GB进行递增。 |
EngineVersion | String | 是 | 否 | 数据库版本号。 | 取值:
|
AutoUpgradeMinorVersion | String | 否 | 是 | 实例升级小版本的方式。 | 取值:
|
Port | Integer | 否 | 是 | 实例端口。 | 无 |
ConnectionStringPrefix | String | 否 | 是 | 连接地址的前缀。 | 连接地址前缀以小写字母开头,以小写字母或数字结尾,可包含小写字母、数字和连字符(-)。 连接地址前缀至少包含8个字符、连接地址总长度(前缀+后缀)不得超过63个字符。 |
ConnectionStringType | String | 否 | 是 | 连接地址的类型。 | 取值:
|
DBTimeZone | String | 否 | 否 | UTC时区。 | 取值范围:-12:59~+13:00。 说明
|
DBParamGroupId | String | 否 | 否 | 参数模板ID。 | 无 |
Category | String | 否 | 是 | 实例系列。 | 取值:
说明 使用参数查询功能时,ZoneId,DBInstanceStorageType,Category建议必填,否则会导致校验不完全。 |
TargetDedicatedHostIdForMaster | String | 否 | 否 | 在专属集群内创建实例时,指定主实例的主机ID。 | 无 |
DBIsIgnoreCase | Integer | 否 | 否 | 表名是否区分大小写。 | 取值:
|
EncryptionKey | String | 否 | 否 | 同地域内的云盘加密的密钥ID。您可以在密钥管理服务控制台查看密钥ID,也可以创建新的密钥。 | 传入该参数表示开启云盘加密(开启后无法关闭),并且需要传入RoleARN。 |
MaintainTime | String | 否 | 否 | 实例的可维护时间段。 | 格式: |
TargetDedicatedHostIdForSlave | String | 否 | 否 | 在专属集群内创建实例时,指定备份实例的主机ID。 | 无 |
DedicatedHostGroupId | String | 否 | 否 | 在专属集群内创建实例时,指定专属集群ID。 | 无 |
DBInstanceStorageType | String | 否 | 是 | 实例存储类型。 | 实例存储类型,取值:
本参数的默认值根据DBInstanceClass参数中传入的规格代码自动判断:
说明
|
RoleARN | String | 否 | 否 | 角色ARN。RDS通过该角色访问KMS。 | 更多信息,请参见授权RDS访问KMS。 |
DBInstanceClass | String | 是 | 是 | 实例规格。 | 更多信息,请参见主实例规格列表。 |
SecurityIPList | String | 是 | 是 | 允许访问该实例下所有数据库的IP白名单。 | 多个IP以半角逗号(,)间隔,不可以重复。最多支持1000个。 支持格式:
|
SecurityGroupId | String | 否 | 是 | 关联的安全组ID。 | 最多支持关联3个安全组,多个安全组用半角逗号(,)隔开。清空安全组请指定空字符串。 |
MultiAZ | Boolean | 否 | 否 | 该数据库实例是否支持多可用区。 | 取值:
说明 使用参数查询功能时,MultiAZ建议设置为 false,否则会导致校验不完全。 |
VpcId | String | 否 | 否 | 专有网络ID。 | 无 |
DBMappings | List | 否 | 否 | 实例下创建新的数据库。 | 更多信息,请参见DBMappings属性。 |
DBInstanceDescription | String | 否 | 是 | 实例的描述或备注信息。 | 长度为2~256个字符。以英文字母或汉字开头,不能以 |
SubscriptionDeletionForce | Boolean | 否 | 否 | 该选项仅适用于包年包月实例。对于包年包月实例,如果此选项为 true,则在删除之前会将实例转换为按量付费实例;如果为 false,则不会执行强制删除。此操作会产生额外费用,请谨慎选择。 | 无 |
ConnectionMode | String | 否 | 否 | 数据库的连接模式。 | 取值:
如果未指定该参数,则默认由RDS系统分配。 说明 SQL Server 2012/2016/2017只支持标准访问模式。 |
MasterUsername | String | 否 | 是 | 数据库实例的主账号名称。 | 名称需要全局唯一。长度不超过16个字符。以英文字母开头,可包含英文字母、数字和下划线(_)。 |
MasterUserPassword | String | 否 | 是 | 数据库实例的主账号密码。 | 长度为8~32个字符。可包含英文字母、数字和下划线(_)。 |
ZoneId | String | 否 | 否 | 可用区ID。 | 说明 使用参数查询功能时,ZoneId,DBInstanceStorageType,Category建议必填,否则会导致校验不完全。 |
DBInstanceNetType | String | 否 | 否 | 数据库实例的网络类型。 | 取值
|
VSwitchId | String | 否 | 否 | 交换机ID。 | 多个值用半角逗号(,)隔开。 如果数据库类型为MariaDB,该参数必须指定。 |
BackupPolicyMode | String | 否 | 是 | 备份类型。 | 取值:
|
AllocatePublicConnection | Boolean | 否 | 否 | 是否申请实例的外网连接串。 | 取值:
|
PreferredBackupTime | String | 否 | 是 | 备份时间。 | 格式: 取值:00:00Z-01:00Z、01:00Z-02:00Z、02:00Z-03:00Z、03:00Z-04:00Z、04:00Z-05:00Z、05:00Z-06:00Z、06:00Z-07:00Z、07:00Z-08:00Z、08:00Z-09:00Z、09:00Z-10:00Z、10:00Z-11:00Z、11:00Z-12:00Z、12:00Z-13:00Z、13:00Z-14:00Z、14:00Z-15:00Z、15:00Z-16:00Z、16:00Z-17:00Z、17:00Z-18:00Z、18:00Z-19:00Z、19:00Z-20:00Z、20:00Z-21:00Z、21:00Z-22:00Z、22:00Z-23:00Z、23:00Z-24:00Z。 |
BackupRetentionPeriod | Number | 否 | 是 | 备份保留天数。 | 取值范围:7~30。 单位:天。 默认值:7。 |
PrivateIpAddress | String | 否 | 否 | VSwitchId下的私网IP。 | 如果不指定该参数,系统将自动分配私网IP。 |
PreferredBackupPeriod | List | 否 | 是 | 备份周期。 | 取值:
|
MasterUserType | String | 否 | 否 | 主账号类型。 | 取值:
|
Tags | Map | 否 | 是 | Tag列表,包括TagKey和TagValue。 | TagKey不能为空,TagValue可以为空。 格式示例: |
PeriodType | String | 否 | 否 | 周期类型。 | 取值:
|
PayType | String | 否 | 否 | 实例的付费类型。 | 取值:
说明
|
Period | Integer | 否 | 否 | 预付费时长。 | 取值:
|
TargetDedicatedHostIdForLog | String | 否 | 否 | 在专属集群内创建实例时,指定日志实例的主机ID。 | 无 |
SlaveZoneIds | List | 否 | 否 | 高可用版或三节点企业版的备可用区。 | 最多指定两个备可用区,例如: 为每个主可用区或者备可用区指定一个交换机,例如:ZoneId= |
SQLCollectorStatus | String | 否 | 是 | 是否开启SQL洞察(SQL审计)。 | 取值:
|
SSLSetting | String | 否 | 否 | 实例的安全套接层(SSL)链接设置。 | 取值:
|
AutoRenew | Boolean | 否 | 是 | 是否自动续费。 | 仅在创建包年包月实例时传入。 取值:
说明
|
LogBackupFrequency | String | 否 | 是 | 日志备份频率。 | 取值:LogInterval,表示每30分钟备份一次。 LogBackupFrequency的默认值与数据备份周期PreferredBackupPeriod相同。 说明 参数LogBackupFrequency仅适用于SQL Server。 |
EnableBackupLog | Boolean | 否 | 是 | 是否启用日志备份功能。 | 取值:
说明 当BackupPolicyMode参数设置为LogBackupPolicy时,必须指定该参数。 |
ReleasedKeepPolicy | String | 否 | 是 | 实例释放后的归档备份保留策略。 | 取值:
说明
|
ArchiveBackupRetentionPeriod | Integer | 否 | 是 | 归档备份的保留天数。 | 取值范围:30~1095。 单位:天。 |
ArchiveBackupKeepPolicy | String | 否 | 是 | 归档备份的保留周期。 | 取值:
|
ArchiveBackupKeepCount | Integer | 否 | 是 | 归档备份的保留个数。 | 取值:
默认值:1。 |
LogBackupRetentionPeriod | Integer | 否 | 是 | 日志备份保留天数。 | 取值范围:7~730。 日志备份保留期不能长于数据备份保留期。 说明 如果启用了日志备份功能,您可以指定日志备份的保留期限。 |
HighSpaceUsageProtection | String | 否 | 是 | 指定当磁盘空间不足(实例超过80%或剩余空间少于5 GB)时是否强制删除日志备份文件 。 | 取值:
当BackupPolicyMode取值为LogBackupPolicy时,必须指定该参数。 |
LocalLogRetentionSpace | Integer | 否 | 是 | 实例上允许存储日志备份文件的最大空间百分比。 | 取值范围:0~50。 如果日志备份文件的空间使用率超过该百分比,系统会提前删除记录备份文件,直到空间使用率降至此百分比以下。 说明 当BackupPolicyMode取值为LogBackupPolicy时,必须指定该参数。 |
BackUpCategory | String | 否 | 是 | 是否开启秒级备份。 | 取值:
|
CompressType | Integer | 否 | 是 | 备份压缩方式。 | 取值:
|
LocalLogRetentionHours | Integer | 否 | 是 | 本地日志备份保留小时数。 | 取值范围:0~168。 单位:小时。 0表示不在实例上保留日志备份文件。 说明 当BackupPolicyMode取值为LogBackupPolicy时,必须指定该参数。 |
LogBackupLocalRetentionNumber | Integer | 否 | 是 | 实例上可以保留的日志备份文件数。 | 取值范围:6~100。 默认值:60。 |
ServerlessConfig | Map | 否 | 否 | RDS Serverless实例的相关设置。 | 更多信息,请参见ServerlessConfig属性。 |
InstanceNetworkType | String | 否 | 否 | 实例的网络类型。 | 取值:
说明 MySQL云盘实例只支持专有网络,此参数必须配置为VPC。 PostgreSQL和MariaDB实例只支持专有网络,此参数必须配置为VPC。 SQL Server单机版和Web版实例支持经典网络和专有网络。其余实例只支持专有网络,此参数必须配置为VPC。 |
StorageAutoScale | String | 否 | 否 | 存储空间自动扩容开关。 | 仅MySQL和PostgreSQL支持,取值:
说明 您也可以在实例创建完成之后,调用ModifyDasInstanceConfig进行调整。更多信息,请参见设置存储空间自动扩容。 |
StorageUpperBound | Number | 否 | 否 | 存储空间自动扩容的总存储空间上限值。 | 自动扩容不会导致实例总存储空间超过该值。单位:GB。 说明 取值需大于等于 0。 StorageAutoScale为Enable时必填。 |
StorageThreshold | Number | 否 | 否 | 存储空间自动扩容触发阈值(百分比)。 | 取值:
说明 StorageAutoScale为Enable时该参数必填。 |
BurstingEnabled | Boolean | 否 | 否 | 通用云盘 IO 突发功能开关。 | 取值:
说明 了解通用云盘的 IO 突发功能的更多信息,请参见什么是高性能云盘。 |
IoAccelerationEnabled | String | 否 | 否 | 是否开启通用云盘 IO 加速功能。 | 取值:
说明 通用云盘的 IO 加速功能的更多信息,请参见Buffer Pool Extension(BPE)功能。 |
ColdDataEnabled | Boolean | 否 | 否 | 通用云盘数据归档功能开关。 | 取值:
通用云盘的数据归档功能信息,请参见数据归档功能。 |
DeletionProtection | Boolean | 否 | 是 | 是否已开启释放保护功能。 | 取值:
|
ServerlessConfig语法
"ServerlessConfig": {
"SwitchForce": Boolean,
"MaxCapacity": Number,
"MinCapacity": Number,
"AutoPause": Boolean
}ServerlessConfig属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
SwitchForce | Boolean | 否 | 否 | 是否开启Serverless实例的强制弹性扩容和缩容。 | 取值:
说明
|
MaxCapacity | Number | 是 | 否 | 实例RCU(RDS Capacity Unit)自动扩容和缩容范围的最大值。 | 取值:0.5~8。 说明 该参数的值必须大于等于MinCapacity参数。 |
MinCapacity | Number | 是 | 否 | 实例RCU自动扩容和缩容范围的最小值。 | 取值:0.5~8。 说明 该参数的值必须小于等于MaxCapacity参数。 |
AutoPause | Boolean | 否 | 否 | 是否开启Serverless实例的智能暂停和启动。 | 取值:
说明 如果10分钟无任何连接将进入暂停状态,当连接进入时会自动唤醒。 |
DBMappings语法
"DBMappings": [
{
"DBDescription": String,
"CharacterSetName": String,
"DBName": String
}
]DBMappings属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
CharacterSetName | String | 是 | 否 | 字符集。 | 取值:
|
DBName | String | 是 | 否 | 数据库名称。 | 名称需要全局唯一。 长度不超过64个字符。以英文字母开头,可包含英文字母、数字和下划线(_)。 |
DBDescription | String | 否 | 否 | 数据库描述。 | 长度为2~256个字符。以英文字母或汉字开头,不能以 |
返回值
Fn::GetAtt
DBInstanceId:数据库实例ID。
InnerPort:数据库实例的内网端口。
InnerIPAddress:内网IP。
InnerConnectionString:内网连接地址。
PublicPort:数据库实例公网端口。
PublicConnectionString:公网连接地址。
PublicIPAddress:公网IP。
示例
场景 1 :创建一台按量付费的RDS PostgreSQL基础版实例。
ROSTemplateFormatVersion: '2015-09-01'
Description: Create a pay-as-you-go (subscription-based) RDS PostgreSQL Basic Edition instance with an annual/monthly billing cycle.
Parameters:
VpcId:
AssociationProperty: ALIYUN::ECS::VPC::VPCId
Type: String
Description:
en: Please search the ID starting with (vpc-xxx) from console-Virtual Private Cloud
zh-cn: 现有虚拟专有网络的实例ID
Label:
en: VPC ID
zh-cn: 专有网络VPC实例ID
ZoneId:
Type: String
Label:
en: Zone ID
zh-cn: 可用区ID
Description:
en: Zone ID.
zh-cn: 可用区ID
Required: true
AssociationProperty: ZoneId
AssociationPropertyMetadata:
AutoSelectFirst: true
VSwitchId:
AssociationProperty: ALIYUN::ECS::VSwitch::VSwitchId
AssociationPropertyMetadata:
VpcId: ${VpcId}
ZoneId: ${ZoneId}
Type: String
Description:
en: Instance ID of existing business network switches, console-Virtual Private Cloud-VSwitches under query
zh-cn: 现有业务网络交换机的实例ID
Label:
en: VSwitch ID
zh-cn: 交换机实例ID
DBInstanceClass:
Type: String
Label:
en: Instance Class
zh-cn: 实例规格
Required: true
AssociationProperty: ALIYUN::RDS::Instance::InstanceType
AssociationPropertyMetadata:
InstanceChargeType: Postpaid
ZoneId: ${ZoneId}
EngineVersion: '17.0'
Engine: PostgreSQL
Category: Basic
DBInstanceStorageType: cloud_essd
Resources:
RDSInstance:
Type: ALIYUN::RDS::DBInstance
Properties:
ZoneId:
Ref: ZoneId
VpcId:
Ref: VpcId
VSwitchId:
Ref: VSwitchId
DBInstanceClass:
Ref: DBInstanceClass
DBInstanceStorage: 50
Engine: PostgreSQL
EngineVersion: '17.0'
Category: Basic
DBInstanceStorageType: cloud_essd
AllocatePublicConnection: true
PayType: Postpaid
SecurityIPList: 0.0.0.0/0
Outputs:
InnerConnectionString:
Value:
Fn::GetAtt:
- RDSInstance
- InnerConnectionString
InnerIPAddress:
Value:
Fn::GetAtt:
- RDSInstance
- InnerIPAddress
PublicConnectionString:
Value:
Fn::GetAtt:
- RDSInstance
- PublicConnectionString
PublicIPAddress:
Value:
Fn::GetAtt:
- RDSInstance
- PublicIPAddress{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": "Create a pay-as-you-go (subscription-based) RDS PostgreSQL Basic Edition instance with an annual/monthly billing cycle.",
"Parameters": {
"VpcId": {
"AssociationProperty": "ALIYUN::ECS::VPC::VPCId",
"Type": "String",
"Description": {
"en": "Please search the ID starting with (vpc-xxx) from console-Virtual Private Cloud",
"zh-cn": "现有虚拟专有网络的实例ID"
},
"Label": {
"en": "VPC ID",
"zh-cn": "专有网络VPC实例ID"
}
},
"ZoneId": {
"Type": "String",
"Label": {
"en": "Zone ID",
"zh-cn": "可用区ID"
},
"Description": {
"en": "Zone ID.",
"zh-cn": "可用区ID"
},
"Required": true,
"AssociationProperty": "ZoneId",
"AssociationPropertyMetadata": {
"AutoSelectFirst": true
}
},
"VSwitchId": {
"AssociationProperty": "ALIYUN::ECS::VSwitch::VSwitchId",
"AssociationPropertyMetadata": {
"VpcId": "${VpcId}",
"ZoneId": "${ZoneId}"
},
"Type": "String",
"Description": {
"en": "Instance ID of existing business network switches, console-Virtual Private Cloud-VSwitches under query",
"zh-cn": "现有业务网络交换机的实例ID"
},
"Label": {
"en": "VSwitch ID",
"zh-cn": "交换机实例ID"
}
},
"DBInstanceClass": {
"Type": "String",
"Label": {
"en": "Instance Class",
"zh-cn": "实例规格"
},
"Required": true,
"AssociationProperty": "ALIYUN::RDS::Instance::InstanceType",
"AssociationPropertyMetadata": {
"InstanceChargeType": "Postpaid",
"ZoneId": "${ZoneId}",
"EngineVersion": "17.0",
"Engine": "PostgreSQL",
"Category": "Basic",
"DBInstanceStorageType": "cloud_essd"
}
}
},
"Resources": {
"RDSInstance": {
"Type": "ALIYUN::RDS::DBInstance",
"Properties": {
"ZoneId": {
"Ref": "ZoneId"
},
"VpcId": {
"Ref": "VpcId"
},
"VSwitchId": {
"Ref": "VSwitchId"
},
"DBInstanceClass": {
"Ref": "DBInstanceClass"
},
"DBInstanceStorage": 50,
"Engine": "PostgreSQL",
"EngineVersion": "17.0",
"Category": "Basic",
"DBInstanceStorageType": "cloud_essd",
"AllocatePublicConnection": true,
"PayType": "Postpaid",
"SecurityIPList": "0.0.0.0/0"
}
}
},
"Outputs": {
"InnerConnectionString": {
"Value": {
"Fn::GetAtt": [
"RDSInstance",
"InnerConnectionString"
]
}
},
"InnerIPAddress": {
"Value": {
"Fn::GetAtt": [
"RDSInstance",
"InnerIPAddress"
]
}
},
"PublicConnectionString": {
"Value": {
"Fn::GetAtt": [
"RDSInstance",
"PublicConnectionString"
]
}
},
"PublicIPAddress": {
"Value": {
"Fn::GetAtt": [
"RDSInstance",
"PublicIPAddress"
]
}
}
}
}场景 2 :创建一台包年包月的多可用区RDS MySQL高可用版实例。
ROSTemplateFormatVersion: '2015-09-01'
Description:
zh-cn: 创建一台包年包月的多可用区RDS MySQL高可用版实例。
en: Create a multi-AZ RDS MySQL High-Availability edition instance with a prepaid subscription.
Parameters:
VSwitch2:
AssociationProperty: ALIYUN::ECS::VSwitch::VSwitchId
AssociationPropertyMetadata:
VpcId: ${VpcId}
ZoneId: ${ZoneId2}
Type: String
Description:
zh-cn: 现有业务网络交换机的实例ID
en: Instance ID of existing business network switches, console-Virtual Private Cloud-VSwitches under query
Label:
zh-cn: 交换机2实例ID
en: VSwitch2 ID
VpcId:
AssociationProperty: ALIYUN::ECS::VPC::VPCId
Type: String
Description:
zh-cn: 现有虚拟专有网络的实例ID
en: Please search the ID starting with (vpc-xxx) from console-Virtual Private Cloud
Label:
zh-cn: 专有网络VPC实例ID
en: VPC ID
ZoneId1:
AssociationProperty: ALIYUN::ECS::Instance::ZoneId
AssociationPropertyMetadata:
ExclusiveTo:
- ZoneId2
Type: String
Label:
zh-cn: 主可用区
en: Primary Availability Zone
ZoneId2:
AssociationProperty: ALIYUN::ECS::Instance::ZoneId
AssociationPropertyMetadata:
ExclusiveTo:
- ZoneId1
Type: String
Label:
zh-cn: 备可用区
en: Standby Availability Zone
VSwitch1:
AssociationProperty: ALIYUN::ECS::VSwitch::VSwitchId
AssociationPropertyMetadata:
VpcId: ${VpcId}
ZoneId: ${ZoneId1}
Type: String
Description:
zh-cn: 现有业务网络交换机的实例ID
en: Instance ID of existing business network switches, console-Virtual Private Cloud-VSwitches under query
Label:
zh-cn: 交换机1实例ID
en: VSwitch1 ID
DBInstanceClass:
AssociationProperty: ALIYUN::RDS::Instance::InstanceType
AssociationPropertyMetadata:
Engine: MySQL
Category: HighAvailability
EngineVersion: '8.0'
InstanceChargeType: Prepaid
DBInstanceStorageType: cloud_essd
Type: String
Label:
zh-cn: 实例规格
en: Instance Class
Outputs:
InnerIPAddress:
Value:
Fn::GetAtt:
- RDSInstance
- InnerIPAddress
InnerConnectionString:
Value:
Fn::GetAtt:
- RDSInstance
- InnerConnectionString
PublicConnectionString:
Value:
Fn::GetAtt:
- RDSInstance
- PublicConnectionString
PublicIPAddress:
Value:
Fn::GetAtt:
- RDSInstance
- PublicIPAddress
Resources:
RDSInstance:
Type: ALIYUN::RDS::DBInstance
Properties:
Category: HighAvailability
Engine: MySQL
PayType: Prepaid
SlaveZoneIds:
- Ref: ZoneId2
DBInstanceStorage: 20
PeriodType: Month
DBInstanceStorageType: cloud_essd
Period: 1
ZoneId:
Ref: ZoneId1
VpcId:
Ref: VpcId
VSwitchId:
Fn::Join:
- ','
- - Ref: VSwitch1
- Ref: VSwitch2
EngineVersion: '8.0'
DBInstanceClass:
Ref: DBInstanceClass
SecurityIPList: 0.0.0.0/0
Metadata:
ALIYUN::ROS::Interface:
ParameterGroups:
- Parameters:
- VpcId
- ZoneId1
- ZoneId2
- VSwitch1
- VSwitch2
Label:
default:
zh-cn: 网络配置
en: Network Configuration
- Parameters:
- DBInstanceClass
Label:
default:
zh-cn: RDS配置
en: RDS Configuration{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": {
"zh-cn": "创建一台包年包月的多可用区RDS MySQL高可用版实例。",
"en": "Create a multi-AZ RDS MySQL High-Availability edition instance with a prepaid subscription."
},
"Parameters": {
"VSwitch2": {
"AssociationProperty": "ALIYUN::ECS::VSwitch::VSwitchId",
"AssociationPropertyMetadata": {
"VpcId": "${VpcId}",
"ZoneId": "${ZoneId2}"
},
"Type": "String",
"Description": {
"zh-cn": "现有业务网络交换机的实例ID",
"en": "Instance ID of existing business network switches, console-Virtual Private Cloud-VSwitches under query"
},
"Label": {
"zh-cn": "交换机2实例ID",
"en": "VSwitch2 ID"
}
},
"VpcId": {
"AssociationProperty": "ALIYUN::ECS::VPC::VPCId",
"Type": "String",
"Description": {
"zh-cn": "现有虚拟专有网络的实例ID",
"en": "Please search the ID starting with (vpc-xxx) from console-Virtual Private Cloud"
},
"Label": {
"zh-cn": "专有网络VPC实例ID",
"en": "VPC ID"
}
},
"ZoneId1": {
"AssociationProperty": "ALIYUN::ECS::Instance::ZoneId",
"AssociationPropertyMetadata": {
"ExclusiveTo": [
"ZoneId2"
]
},
"Type": "String",
"Label": {
"zh-cn": "主可用区",
"en": "Primary Availability Zone"
}
},
"ZoneId2": {
"AssociationProperty": "ALIYUN::ECS::Instance::ZoneId",
"AssociationPropertyMetadata": {
"ExclusiveTo": [
"ZoneId1"
]
},
"Type": "String",
"Label": {
"zh-cn": "备可用区",
"en": "Standby Availability Zone"
}
},
"VSwitch1": {
"AssociationProperty": "ALIYUN::ECS::VSwitch::VSwitchId",
"AssociationPropertyMetadata": {
"VpcId": "${VpcId}",
"ZoneId": "${ZoneId1}"
},
"Type": "String",
"Description": {
"zh-cn": "现有业务网络交换机的实例ID",
"en": "Instance ID of existing business network switches, console-Virtual Private Cloud-VSwitches under query"
},
"Label": {
"zh-cn": "交换机1实例ID",
"en": "VSwitch1 ID"
}
},
"DBInstanceClass": {
"AssociationProperty": "ALIYUN::RDS::Instance::InstanceType",
"AssociationPropertyMetadata": {
"Engine": "MySQL",
"Category": "HighAvailability",
"EngineVersion": "8.0",
"InstanceChargeType": "Prepaid",
"DBInstanceStorageType": "cloud_essd"
},
"Type": "String",
"Label": {
"zh-cn": "实例规格",
"en": "Instance Class"
}
}
},
"Outputs": {
"InnerIPAddress": {
"Value": {
"Fn::GetAtt": [
"RDSInstance",
"InnerIPAddress"
]
}
},
"InnerConnectionString": {
"Value": {
"Fn::GetAtt": [
"RDSInstance",
"InnerConnectionString"
]
}
},
"PublicConnectionString": {
"Value": {
"Fn::GetAtt": [
"RDSInstance",
"PublicConnectionString"
]
}
},
"PublicIPAddress": {
"Value": {
"Fn::GetAtt": [
"RDSInstance",
"PublicIPAddress"
]
}
}
},
"Resources": {
"RDSInstance": {
"Type": "ALIYUN::RDS::DBInstance",
"Properties": {
"Category": "HighAvailability",
"Engine": "MySQL",
"PayType": "Prepaid",
"SlaveZoneIds": [
{
"Ref": "ZoneId2"
}
],
"DBInstanceStorage": 20,
"PeriodType": "Month",
"DBInstanceStorageType": "cloud_essd",
"Period": 1,
"ZoneId": {
"Ref": "ZoneId1"
},
"VpcId": {
"Ref": "VpcId"
},
"VSwitchId": {
"Fn::Join": [
",",
[
{
"Ref": "VSwitch1"
},
{
"Ref": "VSwitch2"
}
]
]
},
"EngineVersion": "8.0",
"DBInstanceClass": {
"Ref": "DBInstanceClass"
},
"SecurityIPList": "0.0.0.0/0"
}
}
},
"Metadata": {
"ALIYUN::ROS::Interface": {
"ParameterGroups": [
{
"Parameters": [
"VpcId",
"ZoneId1",
"ZoneId2",
"VSwitch1",
"VSwitch2"
],
"Label": {
"default": {
"zh-cn": "网络配置",
"en": "Network Configuration"
}
}
},
{
"Parameters": [
"DBInstanceClass"
],
"Label": {
"default": {
"zh-cn": "RDS配置",
"en": "RDS Configuration"
}
}
}
]
}
}
}场景 3 :创建一台按量付费的RDS Serverless MySQL实例并绑定数据库和数据库账号。
ROSTemplateFormatVersion: '2015-09-01'
Description:
zh-cn: 创建一台按量付费的RDS Serverless MySQL实例并绑定数据库和数据库账号。
en: Create a pay-as-you-go RDS Serverless MySQL instance and bind it to a database and a database user.
Parameters:
VpcId:
AssociationProperty: ALIYUN::ECS::VPC::VPCId
Type: String
Description:
zh-cn: 现有虚拟专有网络的实例ID
en: Please search the ID starting with (vpc-xxx) from console-Virtual Private Cloud
Label:
zh-cn: 专有网络VPC实例ID
en: VPC ID
RdsAccountName:
Default: db_root
Type: String
Description:
zh-cn: MySQL 管理员用户名称
en: Account Name
Label:
zh-cn: 用户名称
en: Account Name
ZoneId:
AssociationProperty: ALIYUN::ECS::Instance::ZoneId
Type: String
Label:
zh-cn: 主可用区
en: Primary Availability Zone
VSwitch:
AssociationProperty: ALIYUN::ECS::VSwitch::VSwitchId
AssociationPropertyMetadata:
VpcId: ${VpcId}
ZoneId: ${ZoneId}
Type: String
Description:
zh-cn: 现有业务网络交换机的实例ID
en: Instance ID of existing business network switches, console-Virtual Private Cloud-VSwitches under query
Label:
zh-cn: 交换机实例ID
en: VSwitch ID
DBInstanceClass:
Default: mysql.n2.serverless.1c
AssociationProperty: ALIYUN::RDS::Instance::InstanceType
AssociationPropertyMetadata:
Engine: MySQL
EngineVersion: '8.0'
InstanceChargeType: Serverless
DBInstanceStorageType: cloud_essd
ZoneId: ${ZoneId}
Type: String
Label:
zh-cn: 实例规格
en: Instance Class
RdsAccountPassword:
Type: String
NoEcho: true
Description:
zh-cn: |-
长度为8~32个字符。由大写英文字母、小写英文字母、数字、特殊字符中的任意三种组成。支持的特殊字符如下:
!@#$&%^*()_+-= 。
en: |-
The length is 8 ~ 32 characters. It is composed of uppercase English letters, lowercase English letters, numbers and special characters. The special characters supported are as follows:
!@#$& amp;%^* ()_+-= .
Label:
zh-cn: 用户密码
en: DB Account Password
Outputs:
PublicConnectionString:
Value:
Fn::GetAtt:
- RDSInstance
- PublicConnectionString
InnerIPAddress:
Value:
Fn::GetAtt:
- RDSInstance
- InnerIPAddress
AccountName:
Value:
Fn::GetAtt:
- RdsAccount
- AccountName
PublicIPAddress:
Value:
Fn::GetAtt:
- RDSInstance
- PublicIPAddress
DBName:
Value:
Fn::GetAtt:
- Database
- DBName
InnerConnectionString:
Value:
Fn::GetAtt:
- RDSInstance
- InnerConnectionString
Resources:
RDSInstance:
Type: ALIYUN::RDS::DBInstance
Properties:
Category: serverless_basic
Engine: MySQL
DBInstanceStorage: 20
ServerlessConfig:
MinCapacity: 0.5
AutoPause: false
MaxCapacity: 8
SwitchForce: false
DBInstanceStorageType: cloud_essd
PayType: Serverless
ZoneId:
Ref: ZoneId
VpcId:
Ref: VpcId
VSwitchId:
Ref: VSwitch
EngineVersion: '8.0'
DBInstanceClass:
Ref: DBInstanceClass
SecurityIPList: 0.0.0.0/0
RdsAccount:
Type: ALIYUN::RDS::Account
Properties:
DBInstanceId:
Ref: RDSInstance
AccountPassword:
Ref: RdsAccountPassword
AccountType: Super
AccountName:
Ref: RdsAccountName
Database:
Type: ALIYUN::RDS::Database
Properties:
CharacterSetName: UTF8
DBInstanceId:
Ref: RDSInstance
DBName: springboot_demo
Metadata:
ALIYUN::ROS::Interface:
ParameterGroups:
- Parameters:
- VpcId
- ZoneId
- VSwitch
Label:
default:
zh-cn: 网络配置
en: Network Configuration
- Parameters:
- DBInstanceClass
- RdsAccountName
- RdsAccountPassword
Label:
default:
zh-cn: RDS配置
en: RDS Configuration
{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": {
"zh-cn": "创建一台按量付费的RDS Serverless MySQL实例并绑定数据库和数据库账号。",
"en": "Create a pay-as-you-go RDS Serverless MySQL instance and bind it to a database and a database user."
},
"Parameters": {
"VpcId": {
"AssociationProperty": "ALIYUN::ECS::VPC::VPCId",
"Type": "String",
"Description": {
"zh-cn": "现有虚拟专有网络的实例ID",
"en": "Please search the ID starting with (vpc-xxx) from console-Virtual Private Cloud"
},
"Label": {
"zh-cn": "专有网络VPC实例ID",
"en": "VPC ID"
}
},
"RdsAccountName": {
"Default": "db_root",
"Type": "String",
"Description": {
"zh-cn": "MySQL 管理员用户名称",
"en": "Account Name"
},
"Label": {
"zh-cn": "用户名称",
"en": "Account Name"
}
},
"ZoneId": {
"AssociationProperty": "ALIYUN::ECS::Instance::ZoneId",
"Type": "String",
"Label": {
"zh-cn": "主可用区",
"en": "Primary Availability Zone"
}
},
"VSwitch": {
"AssociationProperty": "ALIYUN::ECS::VSwitch::VSwitchId",
"AssociationPropertyMetadata": {
"VpcId": "${VpcId}",
"ZoneId": "${ZoneId}"
},
"Type": "String",
"Description": {
"zh-cn": "现有业务网络交换机的实例ID",
"en": "Instance ID of existing business network switches, console-Virtual Private Cloud-VSwitches under query"
},
"Label": {
"zh-cn": "交换机实例ID",
"en": "VSwitch ID"
}
},
"DBInstanceClass": {
"Default": "mysql.n2.serverless.1c",
"AssociationProperty": "ALIYUN::RDS::Instance::InstanceType",
"AssociationPropertyMetadata": {
"Engine": "MySQL",
"EngineVersion": "8.0",
"InstanceChargeType": "Serverless",
"DBInstanceStorageType": "cloud_essd",
"ZoneId": "${ZoneId}"
},
"Type": "String",
"Label": {
"zh-cn": "实例规格",
"en": "Instance Class"
}
},
"RdsAccountPassword": {
"Type": "String",
"NoEcho": true,
"Description": {
"zh-cn": "长度为8~32个字符。由大写英文字母、小写英文字母、数字、特殊字符中的任意三种组成。支持的特殊字符如下:\n!@#$&%^*()_+-= 。",
"en": "The length is 8 ~ 32 characters. It is composed of uppercase English letters, lowercase English letters, numbers and special characters. The special characters supported are as follows:\n!@#$& amp;%^* ()_+-= ."
},
"Label": {
"zh-cn": "用户密码",
"en": "DB Account Password"
}
}
},
"Outputs": {
"PublicConnectionString": {
"Value": {
"Fn::GetAtt": [
"RDSInstance",
"PublicConnectionString"
]
}
},
"InnerIPAddress": {
"Value": {
"Fn::GetAtt": [
"RDSInstance",
"InnerIPAddress"
]
}
},
"AccountName": {
"Value": {
"Fn::GetAtt": [
"RdsAccount",
"AccountName"
]
}
},
"PublicIPAddress": {
"Value": {
"Fn::GetAtt": [
"RDSInstance",
"PublicIPAddress"
]
}
},
"DBName": {
"Value": {
"Fn::GetAtt": [
"Database",
"DBName"
]
}
},
"InnerConnectionString": {
"Value": {
"Fn::GetAtt": [
"RDSInstance",
"InnerConnectionString"
]
}
}
},
"Resources": {
"RDSInstance": {
"Type": "ALIYUN::RDS::DBInstance",
"Properties": {
"Category": "serverless_basic",
"Engine": "MySQL",
"DBInstanceStorage": 20,
"ServerlessConfig": {
"MinCapacity": 0.5,
"AutoPause": false,
"MaxCapacity": 8,
"SwitchForce": false
},
"DBInstanceStorageType": "cloud_essd",
"PayType": "Serverless",
"ZoneId": {
"Ref": "ZoneId"
},
"VpcId": {
"Ref": "VpcId"
},
"VSwitchId": {
"Ref": "VSwitch"
},
"EngineVersion": "8.0",
"DBInstanceClass": {
"Ref": "DBInstanceClass"
},
"SecurityIPList": "0.0.0.0/0"
}
},
"RdsAccount": {
"Type": "ALIYUN::RDS::Account",
"Properties": {
"DBInstanceId": {
"Ref": "RDSInstance"
},
"AccountPassword": {
"Ref": "RdsAccountPassword"
},
"AccountType": "Super",
"AccountName": {
"Ref": "RdsAccountName"
}
}
},
"Database": {
"Type": "ALIYUN::RDS::Database",
"Properties": {
"CharacterSetName": "UTF8",
"DBInstanceId": {
"Ref": "RDSInstance"
},
"DBName": "springboot_demo"
}
}
},
"Metadata": {
"ALIYUN::ROS::Interface": {
"ParameterGroups": [
{
"Parameters": [
"VpcId",
"ZoneId",
"VSwitch"
],
"Label": {
"default": {
"zh-cn": "网络配置",
"en": "Network Configuration"
}
}
},
{
"Parameters": [
"DBInstanceClass",
"RdsAccountName",
"RdsAccountPassword"
],
"Label": {
"default": {
"zh-cn": "RDS配置",
"en": "RDS Configuration"
}
}
}
]
}
}
}更多示例,请参考包含此资源的公共模板。