O tipo ALIYUN::RDS::DBInstance cria uma instância de banco de dados ApsaraDB RDS.
Sintaxe
{
"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
}
}
Propriedades
Nome da propriedade | Tipo | Obrigatório | Atualização permitida | Descrição | Restrições |
ResourceGroupId | String | Não | Sim | ID do grupo de recursos. | Nenhuma |
Engine | String | Sim | Tipo do banco de dados. | Valores válidos:
| |
DBInstanceStorage | Integer | Sim | Sim | Espaço de armazenamento da instância de banco de dados. | Valores válidos:
Unidade: GB. Nota O valor deve ser um múltiplo de 5 GB. |
EngineVersion | String | Sim | Não | Número da versão do banco de dados. | Valores válidos:
|
AutoUpgradeMinorVersion | String | Não | Sim | Método de atualização da versão secundária do mecanismo da instância. | Valores válidos:
|
Port | Integer | Não | Sim | Porta da instância. | Nenhuma |
ConnectionStringPrefix | String | Não | Sim | Prefixo do endpoint. | O prefixo deve começar com uma letra minúscula e terminar com uma letra minúscula ou dígito. Pode conter letras minúsculas, dígitos e hifens (-). O prefixo deve ter pelo menos 8 caracteres. O comprimento total do endpoint (prefixo + sufixo) não pode exceder 63 caracteres. |
ConnectionStringType | String | Não | Sim | Tipo do endpoint. | Valores válidos:
|
DBTimeZone | String | Não | Não | Fuso horário UTC. | O valor deve estar no intervalo de -12:59 a +13:00. Nota
|
DBParamGroupId | String | Não | Não | ID do modelo de parâmetros. | Nenhuma |
Category | String | Não | Sim | Edição da instância. | Valores válidos:
Nota Ao consultar parâmetros, especifique ZoneId, DBInstanceStorageType e Category. Caso contrário, a verificação pode ficar incompleta. |
TargetDedicatedHostIdForMaster | String | Não | Não | Ao criar uma instância em um cluster dedicado, especifique o ID do host da instância primária. | Nenhuma |
DBIsIgnoreCase | Integer | Não | Não | Define se os nomes das tabelas diferenciam maiúsculas de minúsculas. | Valores válidos:
|
EncryptionKey | String | Não | Não | ID da chave usada para criptografia de disco na mesma região. Consulte o ID da chave no console do Key Management Service (KMS) ou crie uma nova chave. | Se você especificar este parâmetro, a criptografia de disco será ativada e não poderá ser desativada. Também é necessário especificar RoleARN. |
MaintainTime | String | Não | Não | Janela de manutenção da instância. | Formato: |
TargetDedicatedHostIdForSlave | String | Não | Não | Ao criar uma instância em um cluster dedicado, especifique o ID do host da instância secundária. | Nenhuma |
DedicatedHostGroupId | String | Não | Não | Ao criar uma instância em um cluster dedicado, especifique o ID desse cluster. | Nenhuma |
DBInstanceStorageType | String | Não | Sim | Classe de armazenamento da instância. | Classe de armazenamento da instância. Valores válidos:
O valor padrão deste parâmetro é determinado automaticamente com base no código do tipo de instância especificado no parâmetro DBInstanceClass:
Nota
|
RoleARN | String | Não | Não | ARN da função. O RDS usa essa função para acessar o KMS. | Para mais informações, consulte Conceder permissões ao RDS para acessar o KMS. |
DBInstanceClass | String | Sim | Sim | Tipo da instância. | Para mais informações, consulte Tipos de instância primária. |
SecurityIPList | String | Sim | Sim | Lista de permissões de endereços IP autorizados a acessar todos os bancos de dados da instância. | Separe vários endereços IP com vírgulas (,). Os endereços IP não podem ser repetidos. Há suporte para até 1.000 endereços IP. Formatos suportados:
|
SecurityGroupId | String | Não | Sim | ID do grupo de segurança associado. | É possível associar até três grupos de segurança. Separe vários IDs de grupos de segurança com vírgulas (,). Para limpar os grupos de segurança, especifique uma string vazia. |
MultiAZ | Boolean | Não | Não | Define se a instância de banco de dados oferece suporte a múltiplas zonas. | Valores válidos:
Nota Ao consultar parâmetros, defina MultiAZ como false. Caso contrário, a verificação pode ficar incompleta. |
VpcId | String | Não | Não | ID da VPC. | Nenhuma |
DBMappings | List | Não | Não | Cria um novo banco de dados na instância. | Para mais informações, consulte Propriedades de DBMappings. |
DBInstanceDescription | String | Não | Sim | Descrição ou observações da instância. | O nome deve ter entre 2 e 256 caracteres. Deve começar com uma letra inglesa ou caractere chinês. Não pode começar com |
SubscriptionDeletionForce | Boolean | Não | Não | Esta opção aplica-se apenas a instâncias por assinatura. Para uma instância por assinatura, se esta opção estiver definida como true, a instância será convertida para pagamento conforme o uso antes da exclusão. Se definida como false, a instância não será excluída à força. Esta operação pode gerar taxas adicionais. Use esta opção com cautela. | Nenhuma |
ConnectionMode | String | Não | Não | Modo de conexão do banco de dados. | Valores válidos:
Se este parâmetro não for especificado, o RDS atribuirá um valor padrão. Nota SQL Server 2012, 2016 e 2017 oferecem suporte apenas ao modo de acesso padrão. |
MasterUsername | String | Não | Sim | Nome da conta mestre da instância de banco de dados. | O nome deve ser globalmente único. Pode ter até 16 caracteres. Deve começar com uma letra e pode conter letras, dígitos e sublinhados (_). |
MasterUserPassword | String | Não | Sim | Senha da conta mestre da instância de banco de dados. | O valor deve ter entre 8 e 32 caracteres. Pode conter letras, dígitos e sublinhados (_). |
ZoneId | String | Não | Não | ID da zona. | Nota Ao consultar parâmetros, especifique ZoneId, DBInstanceStorageType e Category. Caso contrário, a verificação pode ficar incompleta. |
DBInstanceNetType | String | Não | Não | Tipo de rede da instância de banco de dados. | Valores válidos
|
VSwitchId | String | Não | Não | ID do vSwitch. | Separe vários valores com vírgulas (,). Se o tipo de banco de dados for MariaDB, você deve especificar este parâmetro. |
BackupPolicyMode | String | Não | Sim | Tipo de backup. | Valores válidos:
|
AllocatePublicConnection | Boolean | Não | Não | Define se deve ser solicitado um endpoint público para a instância. | Valores válidos:
|
PreferredBackupTime | String | Não | Sim | Horário do backup. | Formato: Valores válidos: 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 | Não | Sim | Número de dias para reter backups. | O valor deve estar no intervalo de 7 a 30. Unidade: dias. Valor padrão: 7. |
PrivateIpAddress | String | Não | Não | Endereço IP privado dentro do vSwitch especificado. | Se você não especificar este parâmetro, o sistema atribuirá automaticamente um endereço IP privado. |
PreferredBackupPeriod | List | Não | Sim | Ciclo de backup. | Valores válidos:
|
MasterUserType | String | Não | Não | Tipo da conta mestre. | Valores válidos:
|
Tags | Map | Não | Sim | Lista de tags, incluindo TagKey e TagValue. | TagKey não pode estar vazio, mas TagValue pode estar vazio. Formato de exemplo: |
PeriodType | String | Não | Não | Ciclo de faturamento. | Valores válidos:
|
PayType | String | Não | Não | Método de faturamento da instância. | Valores válidos:
Nota
|
Period | Integer | Não | Não | Duração da assinatura. | Valores válidos:
|
TargetDedicatedHostIdForLog | String | Não | Não | Ao criar uma instância em um cluster dedicado, especifique o ID do host da instância de logger. | Nenhuma |
SlaveZoneIds | List | Não | Não | Zona secundária para uma instância High-availability Edition ou Three-node Enterprise Edition. | É possível especificar até duas zonas secundárias, por exemplo, Especifique um vSwitch para cada zona primária ou secundária. Por exemplo, se ZoneId for |
SQLCollectorStatus | String | Não | Sim | Define se o recurso SQL Explorer (SQL Audit) deve ser ativado. | Valores válidos:
|
SSLSetting | String | Não | Não | Configurações de link Secure Sockets Layer (SSL) para a instância. | Valores válidos:
|
AutoRenew | Boolean | Não | Sim | Define se a renovação automática deve ser ativada. | Este parâmetro é válido apenas ao criar uma instância por assinatura. Valores válidos:
Nota
|
LogBackupFrequency | String | Não | Sim | Frequência dos backups de log. | Valor válido: LogInterval, que indica a realização de backup a cada 30 minutos. O valor padrão de LogBackupFrequency é igual ao valor de PreferredBackupPeriod. Nota O parâmetro LogBackupFrequency aplica-se apenas ao SQL Server. |
EnableBackupLog | Boolean | Não | Sim | Define se o recurso de backup de log deve ser ativado. | Valores válidos:
Nota Você deve especificar este parâmetro quando BackupPolicyMode estiver definido como LogBackupPolicy. |
ReleasedKeepPolicy | String | Não | Sim | Política de retenção para backups arquivados após a liberação da instância. | Valores válidos:
Nota
|
ArchiveBackupRetentionPeriod | Integer | Não | Sim | Número de dias para reter backups arquivados. | O valor deve estar no intervalo de 30 a 1095. Unidade: dias. |
ArchiveBackupKeepPolicy | String | Não | Sim | Período de retenção para backups arquivados. | Valores válidos:
|
ArchiveBackupKeepCount | Integer | Não | Sim | Número de backups arquivados a serem retidos. | Valores válidos:
Valor padrão: 1. |
LogBackupRetentionPeriod | Integer | Não | Sim | Número de dias para reter backups de log. | O valor deve estar no intervalo de 7 a 730. O período de retenção de backup de log não pode ser maior que o período de retenção de backup de dados. Nota Se o recurso de backup de log estiver ativado, você poderá especificar o período de retenção para backups de log. |
HighSpaceUsageProtection | String | Não | Sim | Define se os arquivos de backup de log devem ser excluídos à força quando o espaço em disco for insuficiente (uso da instância superior a 80% ou espaço restante inferior a 5 GB). | Valores válidos:
Você deve especificar este parâmetro quando BackupPolicyMode estiver definido como LogBackupPolicy. |
LocalLogRetentionSpace | Integer | Não | Sim | Porcentagem máxima de espaço na instância que pode ser usada para armazenar arquivos de backup de log. | O valor deve estar no intervalo de 0 a 50. Se o uso de espaço dos arquivos de backup de log exceder essa porcentagem, o sistema excluirá arquivos de backup de log antecipadamente até que o uso de espaço fique abaixo dessa porcentagem. Nota Você deve especificar este parâmetro quando BackupPolicyMode estiver definido como LogBackupPolicy. |
BackUpCategory | String | Não | Sim | Define se o backup em segundos deve ser ativado. | Valores válidos:
|
CompressType | Integer | Não | Sim | Método de compressão de backup. | Valores válidos:
|
LocalLogRetentionHours | Integer | Não | Sim | Número de horas para reter backups de log locais. | O valor deve estar no intervalo de 0 a 168. Unidade: horas. Um valor de 0 indica que os arquivos de backup de log não são retidos na instância. Nota Você deve especificar este parâmetro quando BackupPolicyMode estiver definido como LogBackupPolicy. |
LogBackupLocalRetentionNumber | Integer | Não | Sim | Número de arquivos de backup de log que podem ser retidos na instância. | O valor deve estar no intervalo de 6 a 100. Valor padrão: 60. |
ServerlessConfig | Map | Não | Não | Configurações da instância RDS Serverless. | Para mais informações, consulte Propriedades de ServerlessConfig. |
InstanceNetworkType | String | Não | Não | Tipo de rede da instância. | Valores válidos:
Nota Instâncias RDS for MySQL que usam discos em nuvem oferecem suporte apenas a VPCs. Você deve definir este parâmetro como VPC. Instâncias PostgreSQL e MariaDB oferecem suporte apenas a VPCs. Você deve definir este parâmetro como VPC. Instâncias SQL Server Basic Edition e Web Edition oferecem suporte a redes clássicas e VPCs. Outras instâncias oferecem suporte apenas a VPCs. Você deve definir este parâmetro como VPC. |
StorageAutoScale | String | Não | Não | Chave para expansão automática de armazenamento. | Este parâmetro é suportado apenas para MySQL e PostgreSQL. Valores válidos:
Nota Você também pode chamar ModifyDasInstanceConfig para ajustar essa configuração após a criação da instância. Para mais informações, consulte Configurar expansão automática de armazenamento. |
StorageUpperBound | Number | Não | Não | Limite superior do espaço total de armazenamento para expansão automática. | A expansão automática não fará com que o espaço total de armazenamento da instância exceda este valor. Unidade: GB. Nota O valor deve ser maior ou igual a 0. Este parâmetro é obrigatório quando StorageAutoScale estiver definido como Enable. |
StorageThreshold | Number | Não | Não | Limiar (porcentagem) que aciona a expansão automática de armazenamento. | Valores válidos:
Nota Este parâmetro é obrigatório quando StorageAutoScale estiver definido como Enable. |
BurstingEnabled | Boolean | Não | Não | Chave para o recurso de I/O bursting de ESSDs de uso geral. | Valores válidos:
Nota Para mais informações sobre o recurso de I/O bursting de ESSDs de uso geral, consulte O que é um disco de desempenho premium?. |
IoAccelerationEnabled | String | Não | Não | Define se o recurso de aceleração de I/O para ESSDs de uso geral deve ser ativado. | Valores válidos:
Nota Para mais informações sobre o recurso de aceleração de I/O de ESSDs de uso geral, consulte Recurso Buffer Pool Extension (BPE). |
ColdDataEnabled | Boolean | Não | Não | Esta opção ativa ou desativa o recurso de arquivamento de dados em disco em nuvem de uso geral. | Valores válidos:
Para mais informações sobre o recurso de arquivamento de dados de ESSDs de uso geral, consulte Recurso de arquivamento de dados. |
DeletionProtection | Boolean | Não | Sim | Define se o recurso de proteção contra liberação está ativado. | Valores válidos:
|
Sintaxe de ServerlessConfig
"ServerlessConfig": {
"SwitchForce": Boolean,
"MaxCapacity": Number,
"MinCapacity": Number,
"AutoPause": Boolean
}
Propriedades de ServerlessConfig
Nome da propriedade | Tipo | Obrigatório | Atualização permitida | Descrição | Restrições |
SwitchForce | Boolean | Não | Não | Define se o dimensionamento elástico forçado deve ser ativado para a instância Serverless. | Valores válidos:
Nota
|
MaxCapacity | Number | Sim | Não | Valor máximo do intervalo de dimensionamento automático para RDS Capacity Units (RCUs) da instância. | O valor deve estar no intervalo de 0,5 a 8. Nota O valor deste parâmetro deve ser maior ou igual ao valor do parâmetro MinCapacity. |
MinCapacity | Number | Sim | Não | Valor mínimo do intervalo de dimensionamento automático para RCUs da instância. | O valor deve estar no intervalo de 0,5 a 8. Nota O valor deste parâmetro deve ser menor ou igual ao valor do parâmetro MaxCapacity. |
AutoPause | Boolean | Não | Não | Define se a pausa e inicialização automáticas devem ser ativadas para a instância Serverless. | Valores válidos:
Nota Se não houver conexões por 10 minutos, a instância entrará no estado de pausa. Quando uma conexão for estabelecida, a instância será despertada automaticamente. |
Sintaxe de DBMappings
"DBMappings": [
{
"DBDescription": String,
"CharacterSetName": String,
"DBName": String
}
]
Propriedades de DBMappings
Nome da propriedade | Tipo | Obrigatório | Atualização permitida | Descrição | Restrições |
CharacterSetName | String | Sim | Não | Conjunto de caracteres. | Valores válidos:
|
DBName | String | Sim | Não | Nome do banco de dados. | O nome deve ser globalmente único. O valor pode ter até 64 caracteres. Deve começar com uma letra e pode conter letras, dígitos e sublinhados (_). |
DBDescription | String | Não | Não | Descrição do banco de dados. | O valor deve ter entre 2 e 256 caracteres. Deve começar com uma letra e não pode começar com |
Valores de retorno
Fn::GetAtt
DBInstanceId: ID da instância de banco de dados.
InnerPort: porta interna da instância de banco de dados.
InnerIPAddress: endereço IP interno.
InnerConnectionString: endpoint interno.
PublicPort: porta pública da instância de banco de dados.
PublicConnectionString: endpoint público.
PublicIPAddress: endereço IP público.
Exemplos
Cenário 1: Criar uma instância ApsaraDB RDS for PostgreSQL Basic Edition com pagamento conforme o uso.
ROSTemplateFormatVersion: '2015-09-01'
Description: Create a pay-as-you-go ApsaraDB RDS for PostgreSQL Basic Edition instance.
Parameters:
VpcId:
AssociationProperty: ALIYUN::ECS::VPC::VPCId
Type: String
Description:
en: The ID of the existing VPC. You can find the ID, which starts with vpc-xxx, in the VPC console.
zh-cn: The ID of the existing VPC.
Label:
en: VPC ID
zh-cn: VPC ID
ZoneId:
Type: String
Label:
en: Zone ID
zh-cn: Zone ID
Description:
en: The ID of the zone.
zh-cn: The ID of the zone.
Required: true
AssociationProperty: ZoneId
AssociationPropertyMetadata:
AutoSelectFirst: true
VSwitchId:
AssociationProperty: ALIYUN::ECS::VSwitch::VSwitchId
AssociationPropertyMetadata:
VpcId: ${VpcId}
ZoneId: ${ZoneId}
Type: String
Description:
en: The ID of the existing vSwitch. You can find the ID in the VPC console.
zh-cn: The ID of the existing vSwitch.
Label:
en: VSwitch ID
zh-cn: vSwitch ID
DBInstanceClass:
Type: String
Label:
en: Instance type
zh-cn: Instance type
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 ApsaraDB RDS for PostgreSQL Basic Edition instance.",
"Parameters": {
"VpcId": {
"AssociationProperty": "ALIYUN::ECS::VPC::VPCId",
"Type": "String",
"Description": {
"en": "The ID of the existing VPC. You can find the ID, which starts with vpc-xxx, in the VPC console.",
"zh-cn": "The ID of the existing VPC."
},
"Label": {
"en": "VPC ID",
"zh-cn": "VPC ID"
}
},
"ZoneId": {
"Type": "String",
"Label": {
"en": "Zone ID",
"zh-cn": "Zone ID"
},
"Description": {
"en": "The ID of the zone.",
"zh-cn": "The ID of the zone."
},
"Required": true,
"AssociationProperty": "ZoneId",
"AssociationPropertyMetadata": {
"AutoSelectFirst": true
}
},
"VSwitchId": {
"AssociationProperty": "ALIYUN::ECS::VSwitch::VSwitchId",
"AssociationPropertyMetadata": {
"VpcId": "${VpcId}",
"ZoneId": "${ZoneId}"
},
"Type": "String",
"Description": {
"en": "The ID of the existing vSwitch. You can find the ID in the VPC console.",
"zh-cn": "The ID of the existing vSwitch."
},
"Label": {
"en": "VSwitch ID",
"zh-cn": "vSwitch ID"
}
},
"DBInstanceClass": {
"Type": "String",
"Label": {
"en": "Instance type",
"zh-cn": "Instance type"
},
"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"
]
}
}
}
}
Cenário 2: Criar uma instância ApsaraDB RDS for MySQL High-availability Edition multizona por assinatura.
ROSTemplateFormatVersion: '2015-09-01'
Description:
zh-cn: Create a subscription, multi-zone ApsaraDB RDS for MySQL High-availability Edition instance.
en: Create a subscription, multi-zone ApsaraDB RDS for MySQL High-availability Edition instance.
Parameters:
VSwitch2:
AssociationProperty: ALIYUN::ECS::VSwitch::VSwitchId
AssociationPropertyMetadata:
VpcId: ${VpcId}
ZoneId: ${ZoneId2}
Type: String
Description:
zh-cn: The ID of the existing vSwitch.
en: The ID of the existing vSwitch. You can find the ID in the VPC console.
Label:
zh-cn: VSwitch 2 ID
en: VSwitch 2 ID
VpcId:
AssociationProperty: ALIYUN::ECS::VPC::VPCId
Type: String
Description:
zh-cn: The ID of the existing VPC.
en: The ID of the existing VPC. You can find the ID, which starts with vpc-xxx, in the VPC console.
Label:
zh-cn: VPC ID
en: VPC ID
ZoneId1:
AssociationProperty: ALIYUN::ECS::Instance::ZoneId
AssociationPropertyMetadata:
ExclusiveTo:
- ZoneId2
Type: String
Label:
zh-cn: Primary zone
en: Primary zone
ZoneId2:
AssociationProperty: ALIYUN::ECS::Instance::ZoneId
AssociationPropertyMetadata:
ExclusiveTo:
- ZoneId1
Type: String
Label:
zh-cn: Secondary zone
en: Secondary zone
VSwitch1:
AssociationProperty: ALIYUN::ECS::VSwitch::VSwitchId
AssociationPropertyMetadata:
VpcId: ${VpcId}
ZoneId: ${ZoneId1}
Type: String
Description:
zh-cn: The ID of the existing vSwitch.
en: The ID of the existing vSwitch. You can find the ID in the VPC console.
Label:
zh-cn: VSwitch 1 ID
en: VSwitch 1 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: Instance type
en: Instance type
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: Network configuration
en: Network configuration
- Parameters:
- DBInstanceClass
Label:
default:
zh-cn: RDS configuration
en: RDS configuration
{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": {
"zh-cn": "Create a subscription, multi-zone ApsaraDB RDS for MySQL High-availability Edition instance.",
"en": "Create a subscription, multi-zone ApsaraDB RDS for MySQL High-availability Edition instance."
},
"Parameters": {
"VSwitch2": {
"AssociationProperty": "ALIYUN::ECS::VSwitch::VSwitchId",
"AssociationPropertyMetadata": {
"VpcId": "${VpcId}",
"ZoneId": "${ZoneId2}"
},
"Type": "String",
"Description": {
"zh-cn": "The ID of the existing vSwitch.",
"en": "The ID of the existing vSwitch. You can find the ID in the VPC console."
},
"Label": {
"zh-cn": "VSwitch 2 ID",
"en": "VSwitch 2 ID"
}
},
"VpcId": {
"AssociationProperty": "ALIYUN::ECS::VPC::VPCId",
"Type": "String",
"Description": {
"zh-cn": "The ID of the existing VPC.",
"en": "The ID of the existing VPC. You can find the ID, which starts with vpc-xxx, in the VPC console."
},
"Label": {
"zh-cn": "VPC ID",
"en": "VPC ID"
}
},
"ZoneId1": {
"AssociationProperty": "ALIYUN::ECS::Instance::ZoneId",
"AssociationPropertyMetadata": {
"ExclusiveTo": [
"ZoneId2"
]
},
"Type": "String",
"Label": {
"zh-cn": "Primary zone",
"en": "Primary zone"
}
},
"ZoneId2": {
"AssociationProperty": "ALIYUN::ECS::Instance::ZoneId",
"AssociationPropertyMetadata": {
"ExclusiveTo": [
"ZoneId1"
]
},
"Type": "String",
"Label": {
"zh-cn": "Secondary zone",
"en": "Secondary zone"
}
},
"VSwitch1": {
"AssociationProperty": "ALIYUN::ECS::VSwitch::VSwitchId",
"AssociationPropertyMetadata": {
"VpcId": "${VpcId}",
"ZoneId": "${ZoneId1}"
},
"Type": "String",
"Description": {
"zh-cn": "The ID of the existing vSwitch.",
"en": "The ID of the existing vSwitch. You can find the ID in the VPC console."
},
"Label": {
"zh-cn": "VSwitch 1 ID",
"en": "VSwitch 1 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": "Instance type",
"en": "Instance type"
}
}
},
"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": "Network configuration",
"en": "Network configuration"
}
}
},
{
"Parameters": [
"DBInstanceClass"
],
"Label": {
"default": {
"zh-cn": "RDS configuration",
"en": "RDS configuration"
}
}
}
]
}
}
}
Cenário 3: Criar uma instância ApsaraDB RDS for MySQL Serverless com pagamento conforme o uso e associar um banco de dados e uma conta de banco de dados.
ROSTemplateFormatVersion: '2015-09-01'
Description:
zh-cn: Create a pay-as-you-go Serverless ApsaraDB RDS for MySQL instance and associate a database and a database account.
en: Create a pay-as-you-go Serverless ApsaraDB RDS for MySQL instance and associate a database and a database account.
Parameters:
VpcId:
AssociationProperty: ALIYUN::ECS::VPC::VPCId
Type: String
Description:
zh-cn: The ID of the existing VPC.
en: The ID of the existing VPC. You can find the ID, which starts with vpc-xxx, in the VPC console.
Label:
zh-cn: VPC ID
en: VPC ID
RdsAccountName:
Default: db_root
Type: String
Description:
zh-cn: The name of the MySQL administrator user.
en: Account Name
Label:
zh-cn: Username
en: Account Name
ZoneId:
AssociationProperty: ALIYUN::ECS::Instance::ZoneId
Type: String
Label:
zh-cn: Primary zone
en: Primary zone
VSwitch:
AssociationProperty: ALIYUN::ECS::VSwitch::VSwitchId
AssociationPropertyMetadata:
VpcId: ${VpcId}
ZoneId: ${ZoneId}
Type: String
Description:
zh-cn: The ID of the existing vSwitch.
en: The ID of the existing vSwitch. You can find the ID in the VPC console.
Label:
zh-cn: vSwitch 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: Instance type
en: Instance type
RdsAccountPassword:
Type: String
NoEcho: true
Description:
zh-cn: |-
The value must be 8 to 32 characters in length. It must contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. The following special characters are supported:
!@#$&%^*()_+-= .
en: |-
The value must be 8 to 32 characters in length. It must contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. The following special characters are supported:
!@#$& amp;%^* ()_+-= .
Label:
zh-cn: User password
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: Network configuration
en: Network configuration
- Parameters:
- DBInstanceClass
- RdsAccountName
- RdsAccountPassword
Label:
default:
zh-cn: RDS configuration
en: RDS configuration
{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": {
"zh-cn": "Create a pay-as-you-go Serverless ApsaraDB RDS for MySQL instance and associate a database and a database account.",
"en": "Create a pay-as-you-go Serverless ApsaraDB RDS for MySQL instance and associate a database and a database account."
},
"Parameters": {
"VpcId": {
"AssociationProperty": "ALIYUN::ECS::VPC::VPCId",
"Type": "String",
"Description": {
"zh-cn": "The ID of the existing VPC.",
"en": "The ID of the existing VPC. You can find the ID, which starts with vpc-xxx, in the VPC console."
},
"Label": {
"zh-cn": "VPC ID",
"en": "VPC ID"
}
},
"RdsAccountName": {
"Default": "db_root",
"Type": "String",
"Description": {
"zh-cn": "The name of the MySQL administrator user.",
"en": "Account Name"
},
"Label": {
"zh-cn": "Username",
"en": "Account Name"
}
},
"ZoneId": {
"AssociationProperty": "ALIYUN::ECS::Instance::ZoneId",
"Type": "String",
"Label": {
"zh-cn": "Primary zone",
"en": "Primary zone"
}
},
"VSwitch": {
"AssociationProperty": "ALIYUN::ECS::VSwitch::VSwitchId",
"AssociationPropertyMetadata": {
"VpcId": "${VpcId}",
"ZoneId": "${ZoneId}"
},
"Type": "String",
"Description": {
"zh-cn": "The ID of the existing vSwitch.",
"en": "The ID of the existing vSwitch. You can find the ID in the VPC console."
},
"Label": {
"zh-cn": "vSwitch 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": "Instance type",
"en": "Instance type"
}
},
"RdsAccountPassword": {
"Type": "String",
"NoEcho": true,
"Description": {
"zh-cn": "The value must be 8 to 32 characters in length. It must contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. The following special characters are supported:\n!@#$&%^*()_+-= .",
"en": "The value must be 8 to 32 characters in length. It must contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. The following special characters are supported:\n!@#$& amp;%^* ()_+-= ."
},
"Label": {
"zh-cn": "User password",
"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": "Network configuration",
"en": "Network configuration"
}
}
},
{
"Parameters": [
"DBInstanceClass",
"RdsAccountName",
"RdsAccountPassword"
],
"Label": {
"default": {
"zh-cn": "RDS configuration",
"en": "RDS configuration"
}
}
}
]
}
}
}
Para mais exemplos, consulte modelos públicos que contêm este recurso.