Le type ALIYUN::RDS::DBInstance permet de créer une instance de base de données ApsaraDB RDS.
Syntaxe
{
"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
}
}
Propriétés
Nom de la propriété | Type | Obligatoire | Mise à jour autorisée | Description | Contraintes |
ResourceGroupId | String | Non | Oui | ID du groupe de ressources. | Aucune |
Engine | String | Oui | Type de base de données. | Valeurs valides :
| |
DBInstanceStorage | Integer | Oui | Oui | Espace de stockage de l'instance de base de données. | Valeurs valides :
Unité : Go. Remarque La valeur doit être un multiple de 5 Go. |
EngineVersion | String | est | Non | Numéro de version de la base de données. | Valeurs valides :
|
AutoUpgradeMinorVersion | String | Non | Oui | Méthode de mise à niveau de la version mineure du moteur de l'instance. | Valeurs valides :
|
Port | Integer | Non | Oui | Port de l'instance. | Aucune |
ConnectionStringPrefix | String | Non | Oui | Préfixe de l'endpoint. | Le préfixe doit commencer par une lettre minuscule et se terminer par une lettre minuscule ou un chiffre. Il peut contenir des lettres minuscules, des chiffres et des traits d'union (-). Le préfixe doit comporter au moins 8 caractères. La longueur totale de l'endpoint (préfixe + suffixe) ne peut pas dépasser 63 caractères. |
ConnectionStringType | String | Non | Oui | Type de l'endpoint. | Valeurs valides :
|
DBTimeZone | String | Non | Non | Fuseau horaire UTC. | La valeur doit être comprise entre -12:59 et +13:00. Remarque
|
DBParamGroupId | String | Non | Non | ID du modèle de paramètres. | Aucune |
Category | String | Non | Oui | Édition de l'instance. | Valeurs valides :
Remarque Lorsque vous interrogez les paramètres, spécifiez ZoneId, DBInstanceStorageType et Category. Sinon, la vérification risque d'être incomplète. |
TargetDedicatedHostIdForMaster | String | Non | Non | Lors de la création d'une instance dans un cluster dédié, spécifiez l'ID d'hôte de l'instance principale. | Aucune |
DBIsIgnoreCase | Integer | Non | Non | Indique si les noms de table sont sensibles à la casse. | Valeurs valides :
|
EncryptionKey | String | Non | Non | ID de la clé utilisée pour le chiffrement du disque dans la même région. Vous pouvez afficher l'ID de la clé dans la console Key Management Service (KMS) ou créer une nouvelle clé. | Si vous spécifiez ce paramètre, le chiffrement du disque est activé et ne peut pas être désactivé. Vous devez également spécifier RoleARN. |
MaintainTime | String | Non | Non | Fenêtre de maintenance de l'instance. | Format : |
TargetDedicatedHostIdForSlave | String | Non | Non | Lors de la création d'une instance dans un cluster dédié, spécifiez l'ID d'hôte de l'instance secondaire. | Aucune |
DedicatedHostGroupId | String | Non | Non | Lors de la création d'une instance dans un cluster dédié, spécifiez l'ID du cluster dédié. | Aucune |
DBInstanceStorageType | String | Non | Oui | Classe de stockage de l'instance. | Classe de stockage de l'instance. Valeurs valides :
La valeur par défaut de ce paramètre est déterminée automatiquement en fonction du code de type d'instance spécifié dans le paramètre DBInstanceClass :
Remarque
|
RoleARN | String | Non | Non | ARN du rôle. RDS utilise ce rôle pour accéder à KMS. | Pour plus d'informations, consultez Accorder à RDS les autorisations d'accès à KMS. |
DBInstanceClass | String | Oui | Oui | Type d'instance. | Pour plus d'informations, consultez Types d'instances principales. |
SecurityIPList | String | Oui | Oui | Liste d'autorisation d'adresses IP autorisées à accéder à toutes les bases de données de l'instance. | Séparez plusieurs adresses IP par des virgules (,). Les adresses IP ne doivent pas être dupliquées. Un maximum de 1 000 adresses IP est pris en charge. Formats pris en charge :
|
SecurityGroupId | String | Non | Oui | ID du groupe de sécurité associé. | Vous pouvez associer jusqu'à trois groupes de sécurité. Séparez plusieurs ID de groupe de sécurité par des virgules (,). Pour effacer les groupes de sécurité, spécifiez une chaîne vide. |
MultiAZ | Boolean | Non | Non | Indique si l'instance de base de données prend en charge plusieurs zones. | Valeurs valides :
Remarque Lorsque vous interrogez les paramètres, définissez MultiAZ sur false. Sinon, la vérification risque d'être incomplète. |
VpcId | String | Non | Non | ID du VPC. | Aucune |
DBMappings | List | Non | Non | Crée une nouvelle base de données dans l'instance. | Pour plus d'informations, consultez Propriétés DBMappings. |
DBInstanceDescription | String | Non | Oui | Description ou remarques de l'instance. | Le nom doit comporter entre 2 et 256 caractères. Il doit commencer par une lettre anglaise ou un caractère chinois. Il ne peut pas commencer par |
SubscriptionDeletionForce | Boolean | Non | Non | Cette option s'applique uniquement aux instances par abonnement. Pour une instance par abonnement, si cette option est définie sur true, l'instance est convertie en instance à la demande avant sa suppression. Si cette option est définie sur false, l'instance n'est pas supprimée de force. Cette opération peut entraîner des frais supplémentaires. Utilisez cette option avec prudence. | Aucune |
ConnectionMode | String | Non | Non | Mode de connexion de la base de données. | Valeurs valides :
Si ce paramètre n'est pas spécifié, RDS attribue une valeur par défaut. Remarque SQL Server 2012, 2016 et 2017 prennent en charge uniquement le mode d'accès standard. |
MasterUsername | String | Non | Oui | Nom du compte maître de l'instance de base de données. | Le nom doit être globalement unique. Il peut comporter jusqu'à 16 caractères. Il doit commencer par une lettre et peut contenir des lettres, des chiffres et des traits de soulignement (_). |
MasterUserPassword | String | Non | Oui | Mot de passe du compte maître de l'instance de base de données. | La valeur doit comporter entre 8 et 32 caractères. Elle peut contenir des lettres, des chiffres et des traits de soulignement (_). |
ZoneId | String | Non | Non | ID de la zone. | Remarque Lorsque vous interrogez les paramètres, spécifiez ZoneId, DBInstanceStorageType et Category. Sinon, la vérification risque d'être incomplète. |
DBInstanceNetType | String | Non | Non | Le type de réseau de l'instance de base de données. | Valeurs valides
|
VSwitchId | String | Non | Non | L'ID du vSwitch. | Séparez les différentes valeurs par des virgules (,). Si le type de base de données est MariaDB, vous devez spécifier ce paramètre. |
BackupPolicyMode | String | Non | Oui | Le type de sauvegarde. | Valeurs valides :
|
AllocatePublicConnection | Boolean | Non | Non | Indique s'il faut demander un endpoint public pour l'instance. | Valeurs valides :
|
PreferredBackupTime | String | Non | Oui | L'heure de sauvegarde. | Format : Valeurs valides : 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 | Non | Oui | Le nombre de jours pendant lesquels conserver les sauvegardes. | La valeur doit être comprise entre 7 et 30. Unité : jours. Valeur par défaut : 7. |
PrivateIpAddress | String | Non | Non | L'adresse IP privée au sein du vSwitch spécifié. | Si vous ne spécifiez pas ce paramètre, le système attribue automatiquement une adresse IP privée. |
PreferredBackupPeriod | List | Non | Oui | Le cycle de sauvegarde. | Valeurs valides :
|
MasterUserType | String | Non | Non | Le type de compte principal. | Valeurs valides :
|
Tags | Map | Non | Oui | Une liste de tags, incluant TagKey et TagValue. | TagKey ne peut pas être vide, mais TagValue peut l'être. Exemple de format : |
PeriodType | String | Non | Non | Le cycle de facturation. | Valeurs valides :
|
PayType | String | Non | Non | La méthode de facturation de l'instance. | Valeurs valides :
Remarque
|
Period | Integer | Non | Non | Durée de l'abonnement. | Valeurs valides :
|
TargetDedicatedHostIdForLog | String | Non | Non | Lorsque vous créez une instance dans un cluster dédié, spécifiez l'ID de l'hôte de l'instance de journalisation. | Aucun |
SlaveZoneIds | List | Non | Non | La zone secondaire pour une instance Édition Haute Disponibilité ou Édition Entreprise Trois Nœuds. | Vous pouvez spécifier jusqu'à deux zones secondaires, par exemple Spécifiez un vSwitch pour chaque zone primaire ou secondaire. Par exemple, si ZoneId est |
SQLCollectorStatus | String | Non | Oui | Indique s'il faut activer la fonctionnalité SQL Explorer (Audit SQL). | Valeurs valides :
|
SSLSetting | String | Non | Non | Les paramètres de liaison Secure Sockets Layer (SSL) pour l'instance. | Valeurs valides :
|
AutoRenew | Boolean | Non | Oui | Indique s'il faut activer le renouvellement automatique. | Ce paramètre n'est valide que lors de la création d'une instance par abonnement. Valeurs valides :
Remarque
|
LogBackupFrequency | String | Non | Oui | La fréquence des sauvegardes de journaux. | Valeur valide : LogInterval, qui indique qu'une sauvegarde est effectuée toutes les 30 minutes. La valeur par défaut de LogBackupFrequency est identique à celle de PreferredBackupPeriod. Remarque Le paramètre LogBackupFrequency s'applique uniquement à SQL Server. |
EnableBackupLog | Boolean | Non | Oui | Indique s'il faut activer la fonctionnalité de sauvegarde des journaux. | Valeurs valides :
Remarque Vous devez spécifier ce paramètre lorsque BackupPolicyMode est défini sur LogBackupPolicy. |
ReleasedKeepPolicy | String | Non | Oui | La politique de conservation des sauvegardes archivées après la libération de l'instance. | Valeurs valides :
Remarque
|
ArchiveBackupRetentionPeriod | Integer | Non | Oui | Le nombre de jours pendant lesquels conserver les sauvegardes archivées. | La valeur doit être comprise entre 30 et 1095. Unité : jours. |
ArchiveBackupKeepPolicy | String | Non | Oui | La période de conservation des sauvegardes archivées. | Valeurs valides :
|
ArchiveBackupKeepCount | Integer | Non | Oui | Le nombre de sauvegardes archivées à conserver. | Valeurs valides :
Valeur par défaut : 1. |
LogBackupRetentionPeriod | Integer | Non | Oui | Le nombre de jours pendant lesquels conserver les sauvegardes de journaux. | La valeur doit être comprise entre 7 et 730. La période de conservation des sauvegardes de journaux ne peut pas être supérieure à celle des sauvegardes de données. Remarque Si la fonctionnalité de sauvegarde des journaux est activée, vous pouvez spécifier la période de conservation des sauvegardes de journaux. |
HighSpaceUsageProtection | String | Non | Oui | Indique s'il faut supprimer de force les fichiers de sauvegarde de journaux lorsque l'espace disque est insuffisant (l'utilisation de l'instance dépasse 80 % ou l'espace restant est inférieur à 5 Go). | Valeurs valides :
Vous devez spécifier ce paramètre lorsque BackupPolicyMode est défini sur LogBackupPolicy. |
LocalLogRetentionSpace | Integer | Non | Oui | Le pourcentage maximal d'espace sur l'instance pouvant être utilisé pour stocker les fichiers de sauvegarde de journaux. | La valeur doit être comprise entre 0 et 50. Si l'utilisation de l'espace par les fichiers de sauvegarde de journaux dépasse ce pourcentage, le système supprime les fichiers de sauvegarde de journaux par anticipation jusqu'à ce que l'utilisation de l'espace retombe en dessous de ce seuil. Remarque Vous devez spécifier ce paramètre lorsque BackupPolicyMode est défini sur LogBackupPolicy. |
BackUpCategory | String | Non | Oui | Indique s'il faut activer la sauvegarde en quelques secondes. | Valeurs valides :
|
CompressType | Integer | No | Yes | Méthode de compression des sauvegardes. | Valeurs valides :
|
LocalLogRetentionHours | Integer | No | Yes | Nombre d'heures de conservation des journaux de sauvegarde locaux. | La valeur doit être comprise entre 0 et 168. Unité : heures. Une valeur de 0 indique que les fichiers de journal de sauvegarde ne sont pas conservés sur l'instance. Remarque Vous devez spécifier ce paramètre lorsque BackupPolicyMode est défini sur LogBackupPolicy. |
LogBackupLocalRetentionNumber | Integer | No | Yes | Nombre de fichiers de journal de sauvegarde pouvant être conservés sur l'instance. | La valeur doit être comprise entre 6 et 100. Valeur par défaut : 60. |
ServerlessConfig | Map | No | No | Paramètres de l'instance RDS Serverless. | Pour plus d'informations, consultez Propriétés ServerlessConfig. |
InstanceNetworkType | String | No | No | Type de réseau de l'instance. | Valeurs valides :
Remarque Les instances ApsaraDB RDS for MySQL utilisant des disques cloud prennent uniquement en charge les VPC. Vous devez définir ce paramètre sur VPC. Les instances PostgreSQL et MariaDB prennent uniquement en charge les VPC. Vous devez définir ce paramètre sur VPC. Les instances SQL Server Basic Edition et Web Edition prennent en charge les réseaux classiques et les VPC. Les autres instances prennent uniquement en charge les VPC. Vous devez définir ce paramètre sur VPC. |
StorageAutoScale | String | No | No | Interrupteur pour l'extension automatique du stockage. | Ce paramètre est pris en charge uniquement pour MySQL et PostgreSQL. Valeurs valides :
Remarque Vous pouvez également appeler ModifyDasInstanceConfig pour ajuster ce paramètre après la création de l'instance. Pour plus d'informations, consultez Configurer l'extension automatique du stockage pour une instance ApsaraDB RDS for MySQL. |
StorageUpperBound | Number | No | No | Limite supérieure de l'espace de stockage total pour l'extension automatique. | L'extension automatique ne permet pas à l'espace de stockage total de l'instance de dépasser cette valeur. Unité : Go. Remarque La valeur doit être supérieure ou égale à 0. Ce paramètre est requis lorsque StorageAutoScale est défini sur Enable. |
StorageThreshold | Number | No | No | Seuil (en pourcentage) qui déclenche l'extension automatique du stockage. | Valeurs valides :
Remarque Ce paramètre est requis lorsque StorageAutoScale est défini sur Enable. |
BurstingEnabled | Boolean | No | No | Interrupteur pour la fonctionnalité I/O bursting des ESSD General-purpose. | Valeurs valides :
Remarque Pour plus d'informations sur la fonctionnalité I/O bursting des ESSD General-purpose, consultez Qu'est-ce qu'un disque haute performance ?. |
IoAccelerationEnabled | String | No | No | Indique s'il faut activer la fonctionnalité d'accélération des E/S pour les ESSD General-purpose. | Valeurs valides :
Remarque Pour plus d'informations sur la fonctionnalité d'accélération des E/S des ESSD General-purpose, consultez Fonctionnalité Buffer Pool Extension (BPE). |
ColdDataEnabled | Boolean | No | No | Cette option active ou désactive la fonctionnalité d'archivage des données sur disque cloud général. | Valeurs valides :
Pour plus d'informations sur la fonctionnalité d'archivage des données des ESSD General-purpose, consultez Fonctionnalité d'archivage des données. |
DeletionProtection | Boolean | No | Yes | Indique si la fonctionnalité de protection contre la suppression est activée. | Valeurs valides :
|
Syntaxe de ServerlessConfig
"ServerlessConfig": {
"SwitchForce": Boolean,
"MaxCapacity": Number,
"MinCapacity": Number,
"AutoPause": Boolean
}
Propriétés de ServerlessConfig
Nom de la propriété | Type | Obligatoire | Mise à jour autorisée | Description | Contraintes |
SwitchForce | Boolean | Non | Non | Indique si la mise à l'échelle élastique forcée est activée pour l'instance Serverless. | Valeurs valides :
Remarque
|
MaxCapacity | Number | Oui | Non | Valeur maximale de la plage de mise à l'échelle automatique pour les unités de capacité RDS (RCU) de l'instance. | La valeur doit être comprise entre 0,5 et 8. Remarque La valeur de ce paramètre doit être supérieure ou égale à celle du paramètre MinCapacity. |
MinCapacity | Number | Oui | Non | Valeur minimale de la plage de mise à l'échelle automatique pour les RCU de l'instance. | La valeur doit être comprise entre 0,5 et 8. Remarque La valeur de ce paramètre doit être inférieure ou égale à celle du paramètre MaxCapacity. |
AutoPause | Boolean | Non | Non | Indique si la pause et le démarrage automatiques sont activés pour l'instance Serverless. | Valeurs valides :
Remarque En l'absence de connexions pendant 10 minutes, l'instance passe à l'état de pause. Lorsqu'une connexion est établie, l'instance est automatiquement réactivée. |
Syntaxe de DBMappings
"DBMappings": [
{
"DBDescription": String,
"CharacterSetName": String,
"DBName": String
}
]
Propriétés de DBMappings
Nom de la propriété | Type | Obligatoire | Mise à jour autorisée | Description | Contraintes |
CharacterSetName | String | Oui | Non | Jeu de caractères. | Valeurs valides :
|
DBName | String | Oui | Non | Nom de la base de données. | Le nom doit être globalement unique. La valeur peut comporter jusqu'à 64 caractères. Elle doit commencer par une lettre et peut contenir des lettres, des chiffres et des traits de soulignement (_). |
DBDescription | String | Non | Non | Description de la base de données. | La valeur doit comporter entre 2 et 256 caractères. Elle doit commencer par une lettre et ne peut pas commencer par |
Valeurs de retour
Fn::GetAtt
DBInstanceId : ID de l'instance de base de données.
InnerPort : Port interne de l'instance de base de données.
InnerIPAddress : Adresse IP interne.
InnerConnectionString : Endpoint interne.
PublicPort : Port public de l'instance de base de données.
PublicConnectionString : Endpoint public.
PublicIPAddress : Adresse IP publique.
Exemples
Scénario 1 : Créez une instance ApsaraDB RDS for PostgreSQL Basic Edition en paiement à l'utilisation.
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"
]
}
}
}
}Scénario 2 : Créez une instance ApsaraDB RDS for MySQL High-availability Edition multi-zone en abonnement.
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"
}
}
}
]
}
}
}Scénario 3 : Créez une instance Serverless ApsaraDB RDS for MySQL en paiement à l'utilisation et associez-y une base de données ainsi qu'un compte de base de données.
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"
}
}
}
]
}
}
}Pour plus d'exemples, consultez les modèles publics contenant cette ressource.