Le type ALIYUN::ECS::InstanceGroup permet de créer un groupe d'instances ECS partageant la même configuration.
Syntaxe
{
"Type": "ALIYUN::ECS::InstanceGroup",
"Properties": {
"DedicatedHostId": String,
"ResourceGroupId": String,
"SystemDiskDescription": String,
"InstanceChargeType": String,
"RamRoleName": String,
"SystemDiskPerformanceLevel": String,
"ImageId": String,
"SystemDiskDiskName": String,
"Tags": List,
"HostName": String,
"LaunchTemplateName": String,
"VSwitchId": String,
"Period": Number,
"ZoneIds": List,
"LaunchTemplateId": String,
"DeletionProtection": Boolean,
"SecurityGroupIds": List,
"SecurityEnhancementStrategy": String,
"InternetChargeType": String,
"InstanceName": String,
"DeploymentSetId": String,
"SubscriptionDeletionForce": Boolean,
"InternetMaxBandwidthOut": Integer,
"VpcId": String,
"LaunchTemplateVersion": String,
"PeriodUnit": String,
"AutoReleaseTime": String,
"PrivateIpAddress": String,
"Description": String,
"DiskMappings": List,
"SystemDiskSize": Number,
"UserData": String,
"AutoRenew": String,
"Ipv6Addresses": List,
"MaxAmount": Integer,
"SystemDiskAutoSnapshotPolicyId": String,
"Ipv6AddressCount": Integer,
"NetworkType": String,
"SpotPriceLimit": String,
"InstanceType": String,
"AllocatePublicIP": Boolean,
"SpotStrategy": String,
"Password": String,
"PasswordInherit": Boolean,
"AutoRenewPeriod": Number,
"KeyPairName": String,
"IoOptimized": String,
"ZoneId": String,
"HpcClusterId": String,
"SecurityGroupId": String,
"SystemDiskCategory": String,
"EniMappings": List,
"SystemDiskProvisionedIops": Integer,
"SystemDiskBurstingEnabled": Boolean,
"SpotInterruptionBehavior": String,
"SpotDuration": Integer,
"UpdatePolicy": String,
"SystemDiskEncrypted": String,
"SystemDiskEncryptAlgorithm": String,
"SystemDiskStorageClusterId": String,
"SystemDiskKMSKeyId": String,
"CreditSpecification": String,
"PrivatePoolOptions": Map,
"StorageSetId": String,
"HttpTokens": String,
"HttpEndpoint": String,
"Tenancy": String,
"StorageSetPartitionNumber": Integer,
"DeploymentSetGroupNo": Integer,
"Affinity": String,
"UseAdditionalService": Boolean,
"ImageFamily": String,
"DeletionForce": Boolean,
"UniqueSuffix": Boolean,
"NetworkOptions": Map,
"CpuOptions": Map,
"NetworkInterfaceQueueNumber": Integer,
"HostNames": List,
"ImageOptions": Map,
"SecurityOptions": Map,
"SchedulerOptions": Map
}
}
Propriétés
Propriété | Type | Obligatoire | Modifiable | Description | Contraintes |
InstanceType | String | Oui | Oui | Type d'instance ECS. | Pour plus d'informations, consultez la rubrique Families of instances. Remarque Lorsque le paramètre UpdatePolicy est défini sur ForAllInstances, les instances existantes sont également mises à jour ; sinon, la mise à jour de ce paramètre ne s'applique qu'aux nouvelles instances ajoutées. |
MaxAmount | Integer | Oui | Oui | Nombre d'instances ECS à créer simultanément. | Valeurs valides : 1 à 1000. Remarque Lors de la mise à jour d'une pile, si la valeur de MaxAmount augmente (ou diminue), le nombre correspondant d'instances ECS est ajouté (ou supprimé). Par exemple, si MaxAmount passe de 2 à 5, trois nouvelles instances ECS sont ajoutées. |
Affinity | String | Non | Non | Indique si une instance ECS est associée à un Dedicated Host. | Valeurs valides :
|
AllocatePublicIP | Boolean | Non | Non | Indique s'il faut attribuer une adresse IP publique. | Si InternetMaxBandwidthOut est égal à 0, aucune adresse IP publique n'est attribuée. Valeurs valides :
|
AutoReleaseTime | String | Non | Non | Heure de libération automatique de l'instance ECS. | L'heure doit respecter le format ISO 8601, par exemple |
AutoRenew | String | Non | Oui | Indique s'il faut activer le renouvellement automatique. | Ce paramètre prend effet uniquement lorsque InstanceChargeType est défini sur Valeurs valides :
Remarque La mise à jour de ce paramètre ne s'applique qu'aux nouvelles instances ECS ajoutées. |
AutoRenewPeriod | Number | Non | Oui | Durée de chaque renouvellement automatique. | Ce paramètre est obligatoire lorsque AutoRenew est défini sur True. Valeurs valides :
Remarque La mise à jour de ce paramètre ne s'applique qu'aux nouvelles instances ECS ajoutées. |
CpuOptions | Map | Non | Non | Propriétés liées au CPU. | Pour plus d'informations, consultez la section Propriétés CpuOptions. |
CreditSpecification | String | Non | Oui | Définit le mode de fonctionnement d'une instance à performances extensibles. | Valeurs valides :
Pour connaître les limites de performance, consultez la rubrique Vue d'ensemble des instances à performances extensibles. |
DedicatedHostId | String | Non | Non | ID du Dedicated Host. | Aucune |
DeletionForce | Boolean | Non | Non | Indique s'il faut forcer la suppression de l'instance. | Valeur par défaut : false. |
DeletionProtection | Boolean | Non | Oui | Indique s'il faut protéger l'instance contre sa libération via la console ou l'API DeleteInstance. | Valeurs valides : true : active la protection. false : désactive la protection. |
DeploymentSetGroupNo | Integer | Non | Non | Si votre ensemble de déploiement utilise la politique de haute disponibilité (AvailabilityGroup), spécifiez le numéro de groupe pour cette instance dans l'ensemble de déploiement. | Valeurs valides : 1 à 7. |
DeploymentSetId | String | Non | Oui | ID de l'ensemble de déploiement. | La mise à jour de ce paramètre ne s'applique qu'aux nouvelles instances ECS ajoutées. |
Description | String | Non | Oui | Description. | Longueur maximale : 256 caractères. Remarque La mise à jour de ce paramètre ne s'applique qu'aux nouvelles instances ECS ajoutées. |
DiskMappings | List | Non | Oui | Disques de données pour l'instance ECS. | Vous pouvez créer jusqu'à 16 disques de données. La modification de ce paramètre n'affecte pas les instances existantes. Les nouvelles instances utilisent la valeur mise à jour. Pour plus d'informations, consultez la section Propriétés DiskMappings. Remarque La mise à jour de ce paramètre ne s'applique qu'aux nouvelles instances ECS ajoutées. |
EniMappings | List | Non | Oui | Interfaces réseau élastiques (ENI) attachées à l'instance. | Vous pouvez attacher jusqu'à une ENI à l'instance. Pour plus d'informations, consultez la section Propriétés EniMappings. |
HostName | String | Non | Non | Nom d'hôte. | Longueur minimale : 2 caractères. Un point (.) ou un trait d'union (-) ne peut pas être le premier ou le dernier caractère. Les points ou traits d'union consécutifs ne sont pas autorisés. Pour plus d'informations, consultez la rubrique Paramètres de requête. |
HostNames | List | Non | Non | Spécifiez différents noms d'hôte pour plusieurs instances. | Aucune |
HpcClusterId | String | Non | Oui | ID du cluster HPC auquel appartient l'instance. | La mise à jour de ce paramètre ne s'applique qu'aux nouvelles instances ECS ajoutées. |
HttpEndpoint | String | Non | Oui | Indique s'il faut activer l'accès aux métadonnées de l'instance. | Valeurs valides :
Remarque Pour connaître les modes d'accès aux métadonnées, consultez la rubrique Métadonnées d'instance. |
HttpTokens | String | Non | Oui | Indique s'il faut appliquer IMDSv2 (mode renforcé) pour accéder aux métadonnées de l'instance. | Valeurs valides :
Remarque Pour connaître les modes d'accès aux métadonnées, consultez la rubrique Métadonnées d'instance. |
ImageFamily | String | Non | Non | Nom de la famille d'images. | Utilisez ce paramètre pour lancer des instances avec la dernière image disponible dans la famille d'images spécifiée.
Remarque Pour obtenir des informations sur les familles d'images pour les images officielles Alibaba Cloud, consultez la rubrique Images publiques. |
ImageId | String | Non | Oui | ID de l'image utilisée pour lancer l'instance ECS. Les valeurs valides incluent les images publiques, les images personnalisées et les images Alibaba Cloud Marketplace. | Vous pouvez spécifier un ID d'image publique en utilisant une correspondance floue au lieu de l'ID complet. Exemples :
Pour plus d'informations, consultez la rubrique Paramètres de requête. Remarque Lorsque le paramètre UpdatePolicy est défini sur ForAllInstances, les instances existantes sont également mises à jour ; sinon, la mise à jour de ce paramètre ne s'applique qu'aux nouvelles instances ajoutées. |
ImageOptions | Map | Non | Non | Propriétés liées à l'image. | Pour plus d'informations, consultez la section Propriétés ImageOptions. |
InstanceChargeType | String | Non | Oui | Mode de facturation sélectionné par le payeur pour l'instance. | Valeurs valides :
Remarque La mise à jour de ce paramètre ne s'applique qu'aux nouvelles instances ECS ajoutées. |
InstanceName | String | Non | Oui | Nom de l'instance. | Longueur maximale : 128 caractères. Les caractères valides incluent les lettres, les chiffres, les traits de soulignement (_), les points (.) et les traits d'union (-). Utilisez le format |
InternetChargeType | String | Non | Oui | Mode de facturation pour la bande passante d'accès au réseau public. | Valeurs valides :
Remarque Lorsque le paramètre UpdatePolicy est défini sur ForAllInstances, les instances existantes sont également mises à jour ; sinon, la mise à jour de ce paramètre ne s'applique qu'aux nouvelles instances ajoutées. |
InternetMaxBandwidthOut | Integer | Non | Oui | Bande passante publique sortante maximale. | Valeurs valides : 0 à 100. Unité : Mbit/s. Valeur par défaut : 0. Remarque Lorsque le paramètre UpdatePolicy est défini sur ForAllInstances, les instances existantes sont également mises à jour ; sinon, la mise à jour de ce paramètre ne s'applique qu'aux nouvelles instances ajoutées. |
IoOptimized | String | Non | Non | Indique s'il faut créer une instance optimisée pour les E/S. | Valeurs valides :
|
Ipv6AddressCount | Integer | Non | Oui | Nombre d'adresses IPv6 générées aléatoirement pour l'ENI. | Vous ne pouvez pas spécifier à la fois Ipv6Addresses et Ipv6AddressCount. Remarque La mise à jour de ce paramètre ne s'applique qu'aux nouvelles instances ECS ajoutées. |
Ipv6Addresses | List | Non | Oui | Adresses IPv6 pour l'ENI. | Vous pouvez spécifier jusqu'à une adresse IPv6. Les modifications n'affectent pas les instances existantes. Vous ne pouvez pas spécifier à la fois Ipv6Addresses et Ipv6AddressCount. Remarque La mise à jour de ce paramètre ne s'applique qu'aux nouvelles instances ECS ajoutées. |
KeyPairName | String | Non | Oui | Nom de la paire de clés liée à l'instance ECS. | Si l'instance exécute Windows, ce paramètre est ignoré. Valeur par défaut : vide. Si KeyPairName est spécifié, le mot de passe est toujours défini sur l'instance, mais la connexion par mot de passe est désactivée pour les systèmes Linux. Remarque La mise à jour de ce paramètre ne s'applique qu'aux nouvelles instances ECS ajoutées. |
LaunchTemplateId | String | Non | Oui | ID du modèle de lancement. | Aucune |
LaunchTemplateName | String | Non | Oui | Nom du modèle de lancement. | Aucune |
LaunchTemplateVersion | String | Non | Oui | Version du modèle de lancement. | Si aucune version n'est spécifiée, la version par défaut est utilisée. |
NetworkInterfaceQueueNumber | Integer | Non | Non | Nombre de files d'attente pour l'ENI principale. | Remarque :
|
NetworkOptions | Map | Non | Non | Propriétés liées au réseau. | Pour plus d'informations, consultez la section Propriétés NetworkOptions. |
NetworkType | String | Non | Non | Type de réseau de l'instance ECS. | Valeurs valides :
|
Password | String | Non | Oui | Mot de passe de connexion pour l'instance ECS. | Longueur : 8 à 30 caractères. Doit contenir au moins trois des éléments suivants : lettres majuscules, lettres minuscules, chiffres et caractères spéciaux. Caractères spéciaux pris en charge : Si le paramètre Password est spécifié, veuillez utiliser le protocole HTTPS pour appeler l'API afin d'éviter toute fuite de mot de passe. Remarque Lorsque le paramètre UpdatePolicy est défini sur ForAllInstances, les instances existantes sont également mises à jour ; sinon, la mise à jour de ce paramètre ne s'applique qu'aux nouvelles instances ajoutées. |
PasswordInherit | Boolean | Non | Non | Indique s'il faut utiliser le mot de passe préconfiguré dans l'image. | Valeurs valides :
Remarque Lors de l'utilisation de ce paramètre, Password doit être vide. Assurez-vous également que l'image dispose d'un mot de passe préconfiguré. |
Period | Number | Non | Oui | Durée de l'abonnement. | Ce paramètre prend effet et doit être spécifié uniquement lorsque InstanceChargeType est défini sur PrePaid. Si DedicatedHostId est spécifié, la valeur ne peut pas dépasser la durée d'abonnement du Dedicated Host.
Remarque La mise à jour de ce paramètre ne s'applique qu'aux nouvelles instances ECS ajoutées. |
PeriodUnit | String | Non | Oui | Unité de durée de l'abonnement. | Valeurs valides :
Remarque La mise à jour de ce paramètre ne s'applique qu'aux nouvelles instances ECS ajoutées. |
PrivateIpAddress | String | Non | Non | Adresse IP privée de l'instance. | Pour les instances de type VPC, sélectionnez l'adresse Remarque Si PrivateIpAddress est défini, la valeur de MaxAmount ne peut être que 1. |
PrivatePoolOptions | Map | Non | Non | Options de capacité de pool privé pour le lancement d'instances. | Pour plus d'informations, consultez la section Propriétés PrivatePoolOptions. |
RamRoleName | String | Non | Oui | Nom du rôle RAM de l'instance. | Vous pouvez appeler ListRoles pour interroger les noms de rôles RAM d'instance. |
ResourceGroupId | String | Non | Oui | ID du | Aucune |
SchedulerOptions | Map | Non | Non | Propriétés liées à la planification. | Pour plus d'informations, consultez la section Propriétés SchedulerOptions. |
SecurityEnhancementStrategy | String | Non | Non | Indique s'il faut activer le | Valeurs valides :
|
SecurityGroupId | String | Non | Non | ID du groupe de sécurité pour la nouvelle instance. Les instances d'un même groupe de sécurité peuvent communiquer entre elles. | Vous ne pouvez pas spécifier à la fois SecurityGroupId et SecurityGroupIds. |
SecurityGroupIds | List | Non | Non | Liste des ID de groupes de sécurité pour la nouvelle instance. | Vous ne pouvez pas spécifier à la fois SecurityGroupId et SecurityGroupIds. |
SecurityOptions | Map | Non | Non | Propriétés liées au système de confiance. | Pour plus d'informations, consultez la section Propriétés SecurityOptions. |
SpotDuration | Integer | Non | Non | Durée de réservation pour les instances spot. | Plage valide : 0 à 6. Unité : heures. Valeurs valides :
|
SpotInterruptionBehavior | String | Non | Non |
| Seule la valeur Terminate (par défaut) est prise en charge, ce qui libère l'instance immédiatement. |
SpotPriceLimit | String | Non | Non | Prix horaire maximum pour l'instance. | Précision maximale : trois décimales. Ce paramètre prend effet uniquement lorsque SpotStrategy est défini sur SpotWithPriceLimit. |
SpotStrategy | String | Non | Oui | Stratégie d'enchères pour les instances à la demande. | Ce paramètre prend effet uniquement lorsque InstanceChargeType est défini sur PostPaid. Valeurs valides :
|
StorageSetId | String | Non | Non | ID de l'ensemble de stockage. | Aucune |
StorageSetPartitionNumber | Integer | Non | Non | Nombre maximal de partitions dans l'ensemble de stockage. | Valeurs valides : supérieur ou égal à 2. |
SubscriptionDeletionForce | Boolean | Non | Non | Cette option s'applique uniquement lorsque la ressource est une | Aucun |
SystemDiskAutoSnapshotPolicyId | String | Non | Oui | ID de la politique de snapshot automatique pour le disque système. | Aucun |
SystemDiskBurstingEnabled | Boolean | Non | Oui | Indique si la fonctionnalité de bursting est activée pour le disque système. | Valeurs valides :
|
SystemDiskCategory | String | Non | Oui | Catégorie du disque système. | Valeurs valides :
Remarque Lorsque UpdatePolicy est défini sur ForAllInstances, les instances existantes sont également mises à jour ; sinon, la mise à jour de ce paramètre ne s'applique qu'aux nouvelles instances ajoutées. |
SystemDiskDescription | String | Non | Oui | Description du disque système. | La mise à jour de ce paramètre ne s'applique qu'aux nouvelles instances ECS ajoutées. |
SystemDiskDiskName | String | Non | Oui | Nom du disque système. | La mise à jour de ce paramètre ne s'applique qu'aux nouvelles instances ECS ajoutées. |
SystemDiskEncryptAlgorithm | String | Non | Oui |
| Valeurs valides :
|
SystemDiskEncrypted | String | Non | Oui | Indique si le disque système est chiffré. | Valeurs valides :
|
SystemDiskKMSKeyId | String | Non | Oui | ID de la clé KMS pour le disque système. | Aucun |
SystemDiskPerformanceLevel | String | Non | Oui | Lors de la création d'un Enterprise SSD utilisé comme disque système, vous pouvez définir le niveau de performance du disque. | Valeurs valides :
Pour obtenir des conseils sur la sélection d'un niveau de performance ESSD, consultez Enterprise SSD. |
SystemDiskProvisionedIops | Integer | Non | Oui | IOPS provisionnés pour le disque système. | Aucun |
SystemDiskSize | Number | Non | Oui | Taille du disque système. | Valeurs valides : 40 à 500. Unité : GiB. Si vous utilisez une image personnalisée, la taille du disque système doit être supérieure à la taille de l'image. Remarque Lorsque UpdatePolicy est défini sur ForAllInstances, les instances existantes sont également mises à jour ; sinon, la mise à jour de ce paramètre ne s'applique qu'aux nouvelles instances ajoutées. |
SystemDiskStorageClusterId | String | Non | Oui | ID du cluster de stockage par blocs dédié pour le disque système. | Aucun |
Tags | List | Non | Oui | Tags personnalisés. | Maximum : 20 tags. Format : |
Tenancy | String | Non | Non | Indique si l'instance doit être créée sur un Dedicated Host. | Valeurs valides :
|
UniqueSuffix | Boolean | Non | Non | Indique s'il faut ajouter des suffixes séquentiels à | Les suffixes séquentiels commencent à 001 et augmentent jusqu'à 999. Valeurs valides :
Si |
UpdatePolicy | String | Non | Oui | Stratégie de mise à jour. | Valeurs valides :
|
UseAdditionalService | Boolean | Non | Non | Indique s'il faut utiliser les configurations système de | Valeurs valides :
|
UserData | String | Non | Oui | Données utilisateur transmises lors de la création de l'instance ECS. | Taille maximale : 16 Ko. N'encodez pas le contenu en Base64. Échappez les caractères spéciaux. Valeurs valides :
Remarque Lorsque UpdatePolicy est défini sur ForAllInstances, les instances existantes sont également mises à jour ; sinon, la mise à jour de ce paramètre ne s'applique qu'aux nouvelles instances ajoutées. |
VpcId | String | Non | Non | ID du virtual private cloud (VPC). | Aucun |
VSwitchId | String | Non | Non | ID du vSwitch. | Aucun |
ZoneId | String | Non | Non | ID de la zone. | Aucun |
ZoneIds | List | Non | Non | Liste des zones de disponibilité. | Aucun |
Syntaxe de DiskMappings
"DiskMappings": [
{
"Category": String,
"DiskName": String,
"Description": String,
"Device": String,
"SnapshotId": String,
"Size": String,
"Encrypted": String,
"KMSKeyId": String,
"PerformanceLevel": String,
"AutoSnapshotPolicyId": String,
"ProvisionedIops": Integer,
"BurstingEnabled": Boolean,
"StorageClusterId": String
}
]
Propriétés de DiskMappings
Property | Type | Required | Editable | Description | Constraints |
Size | String | Yes | No | Taille du disque de données. | Unité : GiB. |
AutoSnapshotPolicyId | String | No | No | ID de la politique de snapshot automatique. | Aucun |
BurstingEnabled | Boolean | No | No | Indique si le mode bursting est activé. | Valeurs valides :
|
Category | String | No | No | Catégorie du disque de données. | Valeurs valides :
Pour les instances optimisées pour les E/S, la valeur par défaut est cloud_efficiency. Pour les instances non optimisées pour les E/S, la valeur par défaut est cloud. |
Description | String | No | No | Description du disque de données. | Longueur : 2 à 256 caractères. Ne peut pas commencer par |
Device | String | No | No | Point de montage. | Aucun |
DiskName | String | No | No | Nom du disque de données. | Longueur : 2 à 128 caractères. Doit commencer par une lettre ou un caractère chinois. Ne peut pas commencer par |
Encrypted | String | No | No | Indique si le disque de données est chiffré. | Valeurs valides :
|
KMSKeyId | String | No | No | ID de la clé KMS pour le disque de données. | Aucun |
PerformanceLevel | String | No | No | Niveau de performance d'un ESSD utilisé comme disque de données. | Valeurs valides :
Pour obtenir des conseils sur la sélection d'un niveau de performance ESSD, consultez la rubrique ESSDs. |
ProvisionedIops | Integer | No | No | IOPS provisionnés. | Aucun |
SnapshotId | String | No | No | ID du snapshot. | Aucun |
StorageClusterId | String | No | No | ID du cluster de stockage par bloc dédié. | Aucun |
Syntaxe de EniMappings
"EniMappings": [
{
"SecurityGroupId": String,
"VSwitchId": String,
"Description": String,
"NetworkInterfaceName": String,
"PrimaryIpAddress": String,
"InstanceType": String,
"Ipv6AddressCount": Integer,
"NetworkInterfaceTrafficMode": String,
"Ipv6Addresses": List,
"QueueNumber": Integer,
"SecurityGroupIds": List,
"NetworkInterfaceId": String,
"DeleteOnRelease": Boolean,
"NetworkCardIndex": Integer,
"QueuePairNumber": Integer
}
]
Propriétés EniMappings
Propriété | Type | Obligatoire | Modifiable | Description | Contraintes |
DeleteOnRelease | Boolean | Non | Non | Indique s'il faut conserver l'ENI lors de la libération de l'instance. | Valeurs valides :
|
Description | String | Non | Oui | Description de l'ENI. | Longueur : 2 à 256 caractères. Ne peut pas commencer par |
InstanceType | String | Non | Non | Type d'ENI. | Vous pouvez configurer jusqu'à deux ENI. Lors de la configuration d'une seule ENI, vous pouvez choisir une ENI principale ou secondaire. Lorsque vous configurez deux ENI, vous devez configurer une ENI principale et une ENI secondaire. Valeurs valides :
|
Ipv6AddressCount | Integer | Non | Non | Nombre d'adresses IPv6 générées aléatoirement pour l'ENI principale. | Valeurs valides : 1 à 10. Remarques :
|
Ipv6Addresses | List | Non | Non | Une ou plusieurs adresses IPv6 pour l'ENI principale. | Vous pouvez spécifier jusqu'à 10 adresses IPv6. Remarques :
|
NetworkCardIndex | Integer | Non | Non | Index de la carte réseau physique. |
|
NetworkInterfaceId | String | Non | Non | ID de l'ENI attachée à l'instance. | Ce paramètre s'applique uniquement aux ENI secondaires. Après avoir spécifié une ENI secondaire existante, vous ne pouvez pas configurer d'autres paramètres de création d'ENI. |
NetworkInterfaceName | String | Non | Oui | Nom de l'ENI. | Longueur : 2 à 128 caractères. Doit commencer par une lettre ou un caractère chinois. Ne peut pas commencer par |
NetworkInterfaceTrafficMode | String | Non | Non | Mode de communication du contrôleur d'interface réseau (NIC). | Valeurs valides :
Remarque Le nombre d'ENI activées pour RDMA ne peut pas dépasser la limite de la famille d'instances. Pour plus d'informations, consultez Familles d'instances. |
PrimaryIpAddress | String | Non | Non | Adresse IP privée principale de l'ENI. | L'adresse IP spécifiée doit être une adresse libre dans le bloc CIDR du vSwitch. Si aucune adresse IP n'est spécifiée, une adresse libre est attribuée aléatoirement à partir du vSwitch. |
QueueNumber | Integer | Non | Non | Nombre de files d'attente pour l'ENI. | Remarques :
|
QueuePairNumber | Integer | Non | Non | Nombre de files d'attente pour l'ENI RDMA. | Ce champ est de type Long. Une perte de précision peut se produire lors de la sérialisation ou de la désérialisation de la valeur. Assurez-vous que la valeur ne dépasse pas 9007199254740991. |
SecurityGroupId | String | Non | Oui | ID du groupe de sécurité. | Le groupe de sécurité doit appartenir au même VPC. |
SecurityGroupIds | List | Non | Non | Un ou plusieurs ID de groupes de sécurité pour l'ENI. | Remarques :
|
VSwitchId | String | Non | Non | ID du vSwitch. | Aucune |
Syntaxe PrivatePoolOptions
"PrivatePoolOptions": [
{
"Id": String,
"MatchCriteria": String
}
]
Propriétés PrivatePoolOptions
Propriété | Type | Obligatoire | Modifiable | Description | Contraintes |
Id | String | Non | Non | ID du pool privé. Il s'agit de l'ID d'un service Elastic Capacity ou Reserved Capacity. | Aucune |
MatchCriteria | String | Non | Non | Une fois le service Elastic Capacity ou Reserved Capacity activé, il crée une capacité de pool privé pour le lancement d'instances. | Valeurs valides :
Dans l'un des scénarios suivants, l'option de capacité du pool privé pour le démarrage de l'instance ne peut être définie que sur
|
Syntaxe NetworkOptions
"NetworkOptions": {
"EnableJumboFrame": Boolean
}
Propriétés NetworkOptions
Propriété | Type | Obligatoire | Modifiable | Description | Contraintes |
EnableJumboFrame | Boolean | Non | Non | Indique s'il faut activer les jumbo frames pour l'instance. | Valeurs valides :
Valeur par défaut : true. Remarque Seuls certains types d'instances de génération 8 et ultérieures prennent en charge les jumbo frames. Pour plus d'informations, consultez Jumbo frames. |
Syntaxe CpuOptions
"CpuOptions": {
"ThreadsPerCore": Integer,
"Core": Integer,
"NestedVirtualization": String
}
Propriétés CpuOptions
Propriété | Type | Obligatoire | Modifiable | Description | Contraintes |
Core | Integer | Non | Non | Nombre de cœurs CPU. | Ce paramètre ne prend pas en charge les valeurs personnalisées. Utilisez uniquement la valeur par défaut. Valeur par défaut : Voir Modifier les options CPU. |
NestedVirtualization | String | Non | Non | Indique si la virtualisation imbriquée est activée. | Valeurs valides :
|
ThreadsPerCore | Integer | Non | Non | Nombre de threads CPU. | Nombre de vCPU = |
Syntaxe ImageOptions
"ImageOptions": {
"LoginAsNonRoot": Boolean
}
Propriétés ImageOptions
Propriété | Type | Obligatoire | Modifiable | Description | Contraintes |
LoginAsNonRoot | Boolean | Non | Non | Indique si les instances lancées avec cette image prennent en charge la connexion en tant qu'utilisateur ecs-user. | Valeurs valides :
|
Syntaxe de SecurityOptions
"SecurityOptions": {
"TrustedSystemMode": String
}
Propriétés de SecurityOptions
Property | Type | Required | Editable | Description | Constraints |
TrustedSystemMode | String | No | No | Le mode de système de confiance. | Valeur valide : vTPM. Le mode de système de confiance est pris en charge par les familles d'instances g7, c7 et r7, ainsi que par la famille d'instances renforcées sur le plan de la sécurité, notamment g7t, c7t et r7t. Définissez ce paramètre lorsque vous créez une instance ECS appartenant à l'une de ces familles d'instances. Si vous utilisez le Remarque Si vous spécifiez l'instance comme une Pour plus d'informations sur le système de confiance, consultez la rubrique Présentation des capacités de calcul de confiance. |
Syntaxe de SchedulerOptions
"SchedulerOptions": {
"ManagedPrivateSpaceId": String,
"DedicatedHostClusterId": String
}
Propriétés de SchedulerOptions
Property | Type | Required | Editable | Description | Constraints |
DedicatedHostClusterId | String | No | No | ID du cluster d'hôtes dédiés dans lequel réside l'instance ECS. Le système sélectionne automatiquement un hôte dédié dans ce cluster pour déployer l'instance. | Ce paramètre prend effet uniquement lorsque Lorsque vous spécifiez à la fois un hôte dédié (
Vous pouvez interroger les ID de cluster d'hôtes dédiés à l'aide de l'opération DescribeDedicatedHostClusters. |
ManagedPrivateSpaceId | String | No | No | ID du pool de ressources privées gérées. | Aucun |
Valeurs de retour
Fn::GetAtt
InstanceIds: liste dans laquelle chaque ID d'instance ECS est un identifiant unique global généré par le système pour accéder à une instance.-
PrivateIps: liste des adresses IP privées pour chaque instance connectée au VPC.RemarqueCette valeur de retour prend effet lorsque
NetworkTypeestvpc. Il s'agit d'un tableau JSON formaté, tel que["172.16.XX.XX", "172.16.XX.XX", … "172.16.XX.XX"], contenant au maximum 100 adresses IP séparées par des virgules (,). -
InnerIps: liste des adresses IP privées pour les instances de réseau classique.RemarqueCette valeur de retour prend effet lorsque
NetworkTypeestclassic. Il s'agit d'un tableau JSON formaté, tel que["10.1.XX.XX", "10.1.XX.XX", …, "10.1.XX.XX"], contenant au maximum 100 adresses IP séparées par des virgules (,). -
PublicIps: liste des adresses IP publiques pour les instances de réseau classique.RemarqueCette valeur de retour prend effet lorsque
NetworkTypeestclassic. Il s'agit d'un tableau JSON formaté, tel que["42.1.XX.XX", "42.1.XX.XX", … "42.1.XX.XX"], contenant au maximum 100 adresses IP séparées par des virgules (,). HostNames: liste des noms d'hôte pour toutes les instances.OrderId: liste des ID de commande pour les instances.ZoneIds: ID des zones.-
Ipv6AddressIds: liste des ID d'adresses IPv6 pour les instances ECS créées.RemarqueLe type de retour est une liste bidimensionnelle. Si une instance ne possède pas d'adresse IPv6, l'élément de liste correspondant est vide. Si aucune instance ne possède d'adresse IP,
nullest renvoyé. -
Ipv6Addresses: liste des adresses IPv6 pour les instances ECS créées.RemarqueLe type de retour est une liste bidimensionnelle. Si une instance ne possède pas d'adresse IPv6, l'élément de liste correspondant est vide. Si aucune instance ne possède d'adresse IP,
nullest renvoyé.
Exemples
Scénario 1 : Créer deux instances ECS avec une connexion Secure Shell sans mot de passe
ROSTemplateFormatVersion: '2015-09-01'
Description: Creates VPC ECS instance
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: Existing virtual private cloud instance ID
Label:
en: VPC ID
zh-cn: Virtual private cloud instance ID
VSwitchZoneId:
AssociationProperty: ALIYUN::ECS::Instance:ZoneId
Type: String
Description:
zh-cn: vSwitch zone
en: VSwitch Availability Zone
Label:
zh-cn: vSwitch zone
en: VSwitch Availability Zone
VSwitchId:
AssociationProperty: ALIYUN::ECS::VSwitch::VSwitchId
AssociationPropertyMetadata:
VpcId: ${VpcId}
ZoneId: ${VSwitchZoneId}
Type: String
Description:
en: Instance ID of existing business network switches, console-Virtual Private Cloud-VSwitches under query
zh-cn: Existing business network switch instance ID
Label:
en: VSwitch ID
zh-cn: Switch instance ID
SecurityGroupId:
Type: String
AssociationProperty: ALIYUN::ECS::SecurityGroup::SecurityGroupId
AssociationPropertyMetadata:
VpcId: ${VpcId}
Description:
en: Please search the business security group ID starting with(sg-xxx)from console-ECS-Network & Security
zh-cn: Existing business security group instance ID
Label:
en: Business Security Group ID
zh-cn: Business security group ID
InstanceType:
Type: String
Description:
zh-cn: Specify specifications available in the vSwitch zone.
en: Fill in the specifications that can be used under the VSwitch availability zone.
Label:
zh-cn: Instance type
en: Instance Type
AssociationProperty: ALIYUN::ECS::Instance::InstanceType
AssociationPropertyMetadata:
ZoneId: ${VSwitchZoneId}
SystemDiskCategory:
Type: String
Label:
en: System Disk Type
zh-cn: System disk type
Description:
en: System Disk Type
zh-cn: System disk type
AssociationProperty: ALIYUN::ECS::Disk::SystemDiskCategory
AssociationPropertyMetadata:
ZoneId: ${VSwitchZoneId}
InstanceType: ${InstanceType}
Resources:
OpsEcsInstance:
Type: ALIYUN::ECS::InstanceGroup
Properties:
MaxAmount: 1
HostName: OpsEcsInstance
UserData:
Fn::Sub:
- |
#!/bin/bash
RootPassword=${RootPassword}
ProdIP=${ProdIP}
SSHConfig() {
echo '[ ! -f /root/.ssh/id_rsa.pub ] && ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa &>/dev/null' >> /tmp/auto_ssh.sh
echo 'while read line;do' >> /tmp/auto_ssh.sh
echo ' ip=`echo $line | cut -d " " -f1`' >> /tmp/auto_ssh.sh
echo ' user_name=`echo $line | cut -d " " -f2`' >> /tmp/auto_ssh.sh
echo ' pass_word=`echo $line | cut -d " " -f3`' >> /tmp/auto_ssh.sh
echo 'expect <<EOF' >> /tmp/auto_ssh.sh
echo ' spawn ssh-copy-id -i /root/.ssh/id_rsa.pub $user_name@$ip' >> /tmp/auto_ssh.sh
echo ' expect {' >> /tmp/auto_ssh.sh
echo ' "yes/no" { send "yes\n";exp_continue}' >> /tmp/auto_ssh.sh
echo ' "password" { send "$pass_word\n"}' >> /tmp/auto_ssh.sh
echo ' }' >> /tmp/auto_ssh.sh
echo ' expect eof' >> /tmp/auto_ssh.sh
echo 'EOF' >> /tmp/auto_ssh.sh
echo 'done < /tmp/host_ip.txt' >> /tmp/auto_ssh.sh
}
SetHostsConfig() {
echo "`ifconfig eth0 | awk '/inet /{print $2}'` root ${RootPassword}" >> /tmp/host_ip.txt
echo "${ProdIP} root ${RootPassword}" >> /tmp/host_ip.txt
sh /tmp/auto_ssh.sh
}
main() {
yum install -y expect
SSHConfig
SetHostsConfig
rm -rf /tmp/host_ip.txt
}
main
- ProdIP:
Fn::Select:
- '0'
- Fn::GetAtt:
- ProdEcsInstance
- PrivateIps
RootPassword: Admin@123!
VpcId:
Ref: VpcId
SecurityGroupId:
Ref: SecurityGroupId
VSwitchId:
Ref: VSwitchId
ImageId: centos_7
AllocatePublicIP: false
InstanceType:
Ref: InstanceType
SystemDiskSize: 40
SystemDiskCategory:
Ref: SystemDiskCategory
Password: Admin@123!
ProdEcsInstance:
Type: ALIYUN::ECS::InstanceGroup
Properties:
MaxAmount: 1
HostName: ProdEcsInstance
SystemDiskCategory:
Ref: SystemDiskCategory
VpcId:
Ref: VpcId
SecurityGroupId:
Ref: SecurityGroupId
SystemDiskSize: 40
ImageId: centos_7
VSwitchId:
Ref: VSwitchId
Password: Admin@123!
InstanceType:
Ref: InstanceType
AllocatePublicIP: false
Outputs: {}{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": "Creates VPC ECS instance",
"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": "Existing virtual private cloud instance ID"
},
"Label": {
"en": "VPC ID",
"zh-cn": "Virtual private cloud instance ID"
}
},
"VSwitchZoneId": {
"AssociationProperty": "ALIYUN::ECS::Instance:ZoneId",
"Type": "String",
"Description": {
"zh-cn": "vSwitch zone",
"en": "VSwitch Availability Zone"
},
"Label": {
"zh-cn": "vSwitch zone",
"en": "VSwitch Availability Zone"
}
},
"VSwitchId": {
"AssociationProperty": "ALIYUN::ECS::VSwitch::VSwitchId",
"AssociationPropertyMetadata": {
"VpcId": "${VpcId}",
"ZoneId": "${VSwitchZoneId}"
},
"Type": "String",
"Description": {
"en": "Instance ID of existing business network switches, console-Virtual Private Cloud-VSwitches under query",
"zh-cn": "Existing business network switch instance ID"
},
"Label": {
"en": "VSwitch ID",
"zh-cn": "Switch instance ID"
}
},
"SecurityGroupId": {
"Type": "String",
"AssociationProperty": "ALIYUN::ECS::SecurityGroup::SecurityGroupId",
"AssociationPropertyMetadata": {
"VpcId": "${VpcId}"
},
"Description": {
"en": "Please search the business security group ID starting with(sg-xxx)from console-ECS-Network & Security",
"zh-cn": "Existing business security group instance ID"
},
"Label": {
"en": "Business Security Group ID",
"zh-cn": "Business security group ID"
}
},
"InstanceType": {
"Type": "String",
"Description": {
"zh-cn": "Specify specifications available in the vSwitch zone.",
"en": "Fill in the specifications that can be used under the VSwitch availability zone."
},
"Label": {
"zh-cn": "Instance type",
"en": "Instance Type"
},
"AssociationProperty": "ALIYUN::ECS::Instance::InstanceType",
"AssociationPropertyMetadata": {
"ZoneId": "${VSwitchZoneId}"
}
},
"SystemDiskCategory": {
"Type": "String",
"Label": {
"en": "System Disk Type",
"zh-cn": "System disk type"
},
"Description": {
"en": "System Disk Type",
"zh-cn": "System disk type"
},
"AssociationProperty": "ALIYUN::ECS::Disk::SystemDiskCategory",
"AssociationPropertyMetadata": {
"ZoneId": "${VSwitchZoneId}",
"InstanceType": "${InstanceType}"
}
}
},
"Resources": {
"OpsEcsInstance": {
"Type": "ALIYUN::ECS::InstanceGroup",
"Properties": {
"MaxAmount": 1,
"HostName": "OpsEcsInstance",
"UserData": {
"Fn::Sub": [
"#!/bin/bash\nRootPassword=${RootPassword}\nProdIP=${ProdIP}\nSSHConfig() {\necho '[ ! -f /root/.ssh/id_rsa.pub ] && ssh-keygen -t rsa -P \"\" -f ~/.ssh/id_rsa &>/dev/null' >> /tmp/auto_ssh.sh\necho 'while read line;do' >> /tmp/auto_ssh.sh\necho ' ip=`echo $line | cut -d \" \" -f1`' >> /tmp/auto_ssh.sh\necho ' user_name=`echo $line | cut -d \" \" -f2`' >> /tmp/auto_ssh.sh\necho ' pass_word=`echo $line | cut -d \" \" -f3`' >> /tmp/auto_ssh.sh\necho 'expect <<EOF' >> /tmp/auto_ssh.sh\necho ' spawn ssh-copy-id -i /root/.ssh/id_rsa.pub $user_name@$ip' >> /tmp/auto_ssh.sh\necho ' expect {' >> /tmp/auto_ssh.sh\necho ' \"yes/no\" { send \"yes\\n\";exp_continue}' >> /tmp/auto_ssh.sh\necho ' \"password\" { send \"$pass_word\\n\"}' >> /tmp/auto_ssh.sh\necho ' }' >> /tmp/auto_ssh.sh\necho ' expect eof' >> /tmp/auto_ssh.sh\necho 'EOF' >> /tmp/auto_ssh.sh\necho 'done < /tmp/host_ip.txt' >> /tmp/auto_ssh.sh\n}\nSetHostsConfig() {\necho \"`ifconfig eth0 | awk '/inet /{print $2}'` root ${RootPassword}\" >> /tmp/host_ip.txt\necho \"${ProdIP} root ${RootPassword}\" >> /tmp/host_ip.txt\nsh /tmp/auto_ssh.sh\n}\nmain() {\nyum install -y expect\nSSHConfig\nSetHostsConfig\nrm -rf /tmp/host_ip.txt\n}\nmain\n",
{
"ProdIP": {
"Fn::Select": [
"0",
{
"Fn::GetAtt": [
"ProdEcsInstance",
"PrivateIps"
]
}
]
},
"RootPassword": "Admin@123!"
}
]
},
"VpcId": {
"Ref": "VpcId"
},
"SecurityGroupId": {
"Ref": "SecurityGroupId"
},
"VSwitchId": {
"Ref": "VSwitchId"
},
"ImageId": "centos_7",
"AllocatePublicIP": false,
"InstanceType": {
"Ref": "InstanceType"
},
"SystemDiskSize": 40,
"SystemDiskCategory": {
"Ref": "SystemDiskCategory"
},
"Password": "Admin@123!"
}
},
"ProdEcsInstance": {
"Type": "ALIYUN::ECS::InstanceGroup",
"Properties": {
"MaxAmount": 1,
"HostName": "ProdEcsInstance",
"SystemDiskCategory": {
"Ref": "SystemDiskCategory"
},
"VpcId": {
"Ref": "VpcId"
},
"SecurityGroupId": {
"Ref": "SecurityGroupId"
},
"SystemDiskSize": 40,
"ImageId": "centos_7",
"VSwitchId": {
"Ref": "VSwitchId"
},
"Password": "Admin@123!",
"InstanceType": {
"Ref": "InstanceType"
},
"AllocatePublicIP": false
}
}
},
"Outputs": {}
}Scénario 2 : Créer des instances ECS par lot et mettre à jour les configurations
À propos de UpdatePolicy
Après avoir créé un groupe d'instances ECS à l'aide de ALIYUN::ECS::InstanceGroup, utilisez le paramètre UpdatePolicy pour contrôler la manière dont les mises à jour de configuration sont appliquées aux instances existantes.
Syntaxe de UpdatePolicy
"UpdatePolicy": {
"RollingUpdateForOrigInstances": Map
}
Propriétés de UpdatePolicy
|
Propriété |
Type |
Obligatoire |
Modifiable |
Description |
Contraintes |
|
RollingUpdateForOrigInstances |
Map |
Non |
Oui |
Stratégie de contrôle pour la mise à jour des instances ECS existantes. Cette politique ne s'applique pas aux nouvelles instances ECS. |
Pour plus d'informations, consultez les propriétés de RollingUpdateForOrigInstances. |
Syntaxe de RollingUpdateForOrigInstances
"RollingUpdateForOrigInstances": {
"MaxBatchSize": Integer,
"PauseTime": Integer
}
Propriétés de RollingUpdateForOrigInstances
|
Propriété |
Type |
Obligatoire |
Modifiable |
Description |
Contraintes |
|
MaxBatchSize |
Integer |
Oui |
Oui |
Nombre d'instances ECS mises à jour par lot. |
Valeurs valides : 1 à 1000. |
|
PauseTime |
Integer |
Non |
Oui |
Durée de pause entre les lots, en secondes. La valeur par défaut est 0. |
Valeurs valides : 0 à 3600. |
Créez un groupe de cinq instances ECS avec des configurations identiques à l'aide du modèle suivant.
ROSTemplateFormatVersion: '2015-09-01'
Resources:
Instance:
Type: ALIYUN::ECS::InstanceGroup
Properties:
MaxAmount: 5
InstanceType: xxxx
ImageId: centos
VpcId: vpc-2xxxx
VSwitchId: vsw-xxxx
SecurityGroupId: sg-xxxxx
Password: Ros1gregrge2345
InstanceChargeType: PostPaid
NetworkType: vpc
SystemDiskCategory: xxx
SystemDiskSize: 100
InternetMaxBandwidthOut: 5
AllocatePublicIP: true{
"ROSTemplateFormatVersion": "2015-09-01",
"Resources": {
"Instance": {
"Type": "ALIYUN::ECS::InstanceGroup",
"Properties": {
"MaxAmount": 5,
"InstanceType": "xxxx",
"ImageId": "centos",
"VpcId": "vpc-2xxxx",
"VSwitchId": "vsw-xxxx",
"SecurityGroupId": "sg-xxxxx",
"Password": "Ros1gregrge2345",
"InstanceChargeType": "PostPaid",
"NetworkType": "vpc",
"SystemDiskCategory": "xxx",
"SystemDiskSize": 100,
"InternetMaxBandwidthOut": 5,
"AllocatePublicIP": true
}
}
}
}Une fois la pile créée avec succès, mettez à jour les configurations des instances ECS existantes à l'aide du paramètre UpdatePolicy.
ROSTemplateFormatVersion: '2015-09-01'
Resources:
Instance:
Type: ALIYUN::ECS::InstanceGroup
UpdatePolicy:
RollingUpdateForOrigInstances:
MaxBatchSize: 2
PauseTime: 0
Properties:
MaxAmount: 10
InstanceType: xxxx
ImageId: centos
VpcId: vpc-2xxxx
VSwitchId: vsw-xxxx
SecurityGroupId: sg-xxxxx
Password: Ros1gregrge2345
InstanceChargeType: PostPaid
NetworkType: vpc
SystemDiskCategory: xxx
SystemDiskSize: 100
InternetMaxBandwidthOut: 5
AllocatePublicIP: true{
"ROSTemplateFormatVersion": "2015-09-01",
"Resources": {
"Instance": {
"Type": "ALIYUN::ECS::InstanceGroup",
"UpdatePolicy": {
"RollingUpdateForOrigInstances": {
"MaxBatchSize": 2,
"PauseTime": 0
}
},
"Properties": {
"MaxAmount": 10,
"InstanceType": "xxxx",
"ImageId": "centos",
"VpcId": "vpc-2xxxx",
"VSwitchId": "vsw-xxxx",
"SecurityGroupId": "sg-xxxxx",
"Password": "Ros1gregrge2345",
"InstanceChargeType": "PostPaid",
"NetworkType": "vpc",
"SystemDiskCategory": "xxx",
"SystemDiskSize": 100,
"InternetMaxBandwidthOut": 5,
"AllocatePublicIP": true
}
}
}
}Si MaxBatchSize est défini sur 2 et que MaxAmount passe de 5 avant la mise à jour à 10 après la mise à jour, alors lors de la mise à jour de la pile de ressources, les 5 machines existantes seront modifiées en 3 lots : 2 / 2 / 1. Les 5 nouvelles machines seront créées en une seule fois.
Scénario 3 : Créer deux instances ECS et les associer à un groupe de serveurs d'équilibrage de charge classique (CLB) pour l'équilibrage de charge
ROSTemplateFormatVersion: '2015-09-01'
Description:
zh-cn: Create an SLB with two ECS instances, configure the network and security group, and add the ECS instances to the SLB backend.
en: Create an SLB (Server Load Balancer) with two ECS (Elastic Compute Service) instances, configure the network and security groups, then add the ECS instances to the SLB backend.
Parameters:
SystemDiskCategory:
AssociationProperty: ALIYUN::ECS::Disk::SystemDiskCategory
AssociationPropertyMetadata:
InstanceType: ${ECSInstanceType}
ZoneId: ${ZoneId}
Type: String
Label:
zh-cn: System disk category
en: System Disk Category
AddressType:
Default: internet
Label:
zh-cn: Network type
en: Address Type
Type: String
Description:
zh-cn: The network type of the load balancer. Valid values: internet (public network access) and intranet (internal network access).
en: 'Network type of LoadBalancer. Optional value: Internet: public network access, Intranet: Intranet access.'
AllowedValues:
- internet
- intranet
ECSInternetChargeType:
AssociationPropertyMetadata:
LocaleKey: InternetChargeType
Description:
zh-cn: The billing method for public network access.
en: The charge type of public internet ECS instance.
Default: PayByTraffic
Label:
zh-cn: Internet billing method
en: Internet Charge Type
AllowedValues:
- PayByBandwidth
- PayByTraffic
Type: String
ECSInstanceType:
AssociationProperty: ALIYUN::ECS::Instance::ECSInstanceType
AssociationPropertyMetadata:
ZoneId: ${ZoneId}
Type: String
Description:
zh-cn: <font color='blue'><b>1. Before selecting an instance type, confirm that it is available in the current zone. Some instance types require prior approval.</b></font><br><font color='blue'><b>2. Available instance types</font><br></b></font>[ecs.n1.large <font color='green'>2 vCPUs 4 GiB</font>]<br></b>[ecs.n1.xlarge <font color='green'>8 vCPUs 16 GiB</font>]<br></b>[ecs.n1.3xlarge <font color='green'>16 vCPUs 32 GiB</font>]
en: <font color='blue'><b>1.Before selecting the model please confirm that the current available zone under the model is in stock, some models need to be reported in advance</b></font><br><font color='blue'><b>2.List of optional models</font><br></b></font>[ecs.n1.large <font color='green'>2vCPU 4GiB</font>]<br></b>[ecs.n1.xlarge <font color='green'>8vCPU 16GiB</font>]<br></b>[ecs.n1.3xlarge <font color='green'>16vCPU 32GiB</font>]
Label:
zh-cn: Instance type
en: Instance Type
Password:
ConstraintDescription:
zh-cn: The password must be 8 to 30 characters in length and contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. Special characters include: ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/
en: 'Length 8-30, must contain upper case letters, lower case letters, Numbers, special symbols three; special characters include: ()`~!@#$%^&*_-+=|{}[]:;''<>,.?/'
Description:
zh-cn: The password must be 8 to 30 characters in length and contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters.<br>Special characters include: ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/
en: The 8-30 long login password of instance, consists of the uppercase, lowercase letter and number. <br> special characters include()`~!@#$%^&*_-+=|{}[]:;'<>,.?/
MinLength: '8'
Label:
zh-cn: Instance password
en: Instance Password
AllowedPattern: '[0-9A-Za-z\_\-&:;''<>,=%`~!@#\(\)\$\^\*\+\|\{\}\[\]\.\?\/]+$'
NoEcho: true
MaxLength: '30'
Type: String
ImageId:
Default: centos_7_04_64_20G_alibase_201701015.vhd
AssociationProperty: ALIYUN::ECS::Image::ImageId
AssociationPropertyMetadata:
InstanceType: ${ECSInstanceType}
SupportedImageOwnerAlias:
- system
- self
- others
Type: String
Label:
zh-cn: Image ID
en: Image ID
Bandwidth:
Description:
zh-cn: The peak bandwidth of a public network instance billed by fixed bandwidth.
en: The bandwidth peak of a public network type instance of fixed bandwidth billing.
Default: 1
MaxValue: 1000
MinValue: 1
Label:
zh-cn: Peak bandwidth
en: The Peak Bandwidth
Type: Number
SLBInternetChargeType:
AssociationPropertyMetadata:
LocaleKey: InternetChargeType
Description:
zh-cn: The billing method for a public network instance.
en: The charge type of public internet SLB instance.
Default: paybytraffic
Label:
zh-cn: Internet billing method
en: Internet Charge Type
AllowedValues:
- paybybandwidth
- paybytraffic
Type: String
LoadBalancerSpec:
Default: slb.s1.small
Type: String
Description:
zh-cn: Instance type. For more information, see </b><a href='https://www.alibabacloud.com/help/doc-detail/85939.html' target='_blank'><b><font color='blue'>performance-guaranteed instance types</b></font></a>
en: Instance specifications, see detail:</b><a href='https://www.alibabacloud.com/help/doc-detail/85939.html' target='_blank'><b><font color='blue'>Performance support type</b></font></a>
Label:
zh-cn: Instance type
en: Instance Specification
ZoneId:
AssociationProperty: ALIYUN::ECS::Instance::ZoneId
Type: String
Description:
zh-cn: The zone ID. Make sure that ECS, VPC, and vSwitch resources are supported in the selected zone.
en: The available zone ID, you should confirm the zone support ECS, VPC, VSwitch or not.
Label:
zh-cn: Zone ID
en: Zone ID
Outputs:
BackendServerInstanceId:
Description:
zh-cn: IDs of the created ECS instances
en: The instance IDs of create EcsInstanceGroup
Value:
Fn::GetAtt:
- EcsInstanceGroup
- InstanceIds
BackendServerPublicIp:
Description:
zh-cn: Public IP addresses of the created ECS instances.
en: The instance public IPs of create EcsInstanceGroup.
Value:
Fn::GetAtt:
- EcsInstanceGroup
- PublicIps
SlbIpAddress:
Description:
zh-cn: The IP address of the load balancer.
en: The IP address of the load balancer.
Value:
Fn::GetAtt:
- LoadBalancer
- IpAddress
LoadBalancerId:
Description:
zh-cn: The ID of the created load balancer.
en: The ID of load balance created.
Value:
Fn::GetAtt:
- LoadBalancer
- LoadBalancerId
Resources:
SecurityGroup:
Type: ALIYUN::ECS::SecurityGroup
Properties:
VpcId:
Ref: Vpc
SecurityGroupName: MySecurityGroup
Attachment:
Type: ALIYUN::SLB::BackendServerAttachment
Properties:
BackendServers:
- ServerId:
Fn::Select:
- '0'
- Fn::GetAtt:
- EcsInstanceGroup
- InstanceIds
Weight: 100
- ServerId:
Fn::Select:
- '1'
- Fn::GetAtt:
- EcsInstanceGroup
- InstanceIds
Weight: 100
LoadBalancerId:
Ref: LoadBalancer
Vpc:
Type: ALIYUN::ECS::VPC
Properties:
CidrBlock: 192.168.0.0/16
EcsInstanceGroup:
Type: ALIYUN::ECS::InstanceGroup
Properties:
SystemDiskCategory:
Ref: SystemDiskCategory
VpcId:
Fn::GetAtt:
- Vpc
- VpcId
SecurityGroupId:
Fn::GetAtt:
- SecurityGroup
- SecurityGroupId
ImageId:
Ref: ImageId
IoOptimized: optimized
InternetChargeType:
Ref: ECSInternetChargeType
VSwitchId:
Ref: VSwitch
Password:
Ref: Password
InstanceType:
Ref: ECSInstanceType
MaxAmount: 2
VSwitch:
Type: ALIYUN::ECS::VSwitch
Properties:
VpcId:
Ref: Vpc
CidrBlock: 192.168.1.0/24
ZoneId:
Ref: ZoneId
LoadBalancer:
Type: ALIYUN::SLB::LoadBalancer
Properties:
InternetChargeType:
Ref: SLBInternetChargeType
Bandwidth:
Ref: Bandwidth
AddressType:
Ref: AddressType
LoadBalancerSpec:
Ref: LoadBalancerSpec
Metadata:
ALIYUN::ROS::Interface:
ParameterGroups:
- Parameters:
- ZoneId
- ECSInternetChargeType
- ECSInstanceType
- ImageId
- SystemDiskCategory
- Password
Label:
default:
zh-cn: ECS
en: ECS
- Parameters:
- LoadBalancerSpec
- AddressType
- SLBInternetChargeType
- Bandwidth
Label:
default:
zh-cn: load balancing
en: SLB{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": {
"zh-cn": "Create an SLB with two ECS instances, configure the network and security group, and add the ECS instances to the SLB backend.",
"en": "Create an SLB (Server Load Balancer) with two ECS (Elastic Compute Service) instances, configure the network and security groups, then add the ECS instances to the SLB backend."
},
"Parameters": {
"SystemDiskCategory": {
"AssociationProperty": "ALIYUN::ECS::Disk::SystemDiskCategory",
"AssociationPropertyMetadata": {
"InstanceType": "${ECSInstanceType}",
"ZoneId": "${ZoneId}"
},
"Type": "String",
"Label": {
"zh-cn": "System disk category",
"en": "System Disk Category"
}
},
"AddressType": {
"Default": "internet",
"Label": {
"zh-cn": "Network type",
"en": "Address Type"
},
"Type": "String",
"Description": {
"zh-cn": "The network type of the load balancer. Valid values: internet (public network access) and intranet (internal network access).",
"en": "Network type of LoadBalancer. Optional value: Internet: public network access, Intranet: Intranet access."
},
"AllowedValues": [
"internet",
"intranet"
]
},
"ECSInternetChargeType": {
"AssociationPropertyMetadata": {
"LocaleKey": "InternetChargeType"
},
"Description": {
"zh-cn": "The billing method for public network access.",
"en": "The charge type of public internet ECS instance."
},
"Default": "PayByTraffic",
"Label": {
"zh-cn": "Internet billing method",
"en": "Internet Charge Type"
},
"AllowedValues": [
"PayByBandwidth",
"PayByTraffic"
],
"Type": "String"
},
"ECSInstanceType": {
"AssociationProperty": "ALIYUN::ECS::Instance::ECSInstanceType",
"AssociationPropertyMetadata": {
"ZoneId": "${ZoneId}"
},
"Type": "String",
"Description": {
"zh-cn": "<font color='blue'><b>1. Before selecting an instance type, confirm that it is available in the current zone. Some instance types require prior approval.</b></font><br><font color='blue'><b>2. Available instance types</font><br></b></font>[ecs.n1.large <font color='green'>2 vCPUs 4 GiB</font>]<br></b>[ecs.n1.xlarge <font color='green'>8 vCPUs 16 GiB</font>]<br></b>[ecs.n1.3xlarge <font color='green'>16 vCPUs 32 GiB</font>]",
"en": "<font color='blue'><b>1.Before selecting the model please confirm that the current available zone under the model is in stock, some models need to be reported in advance</b></font><br><font color='blue'><b>2.List of optional models</font><br></b></font>[ecs.n1.large <font color='green'>2vCPU 4GiB</font>]<br></b>[ecs.n1.xlarge <font color='green'>8vCPU 16GiB</font>]<br></b>[ecs.n1.3xlarge <font color='green'>16vCPU 32GiB</font>]"
},
"Label": {
"zh-cn": "Instance type",
"en": "Instance Type"
}
},
"Password": {
"ConstraintDescription": {
"zh-cn": "The password must be 8 to 30 characters in length and contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. Special characters include: ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/",
"en": "Length 8-30, must contain upper case letters, lower case letters, Numbers, special symbols three; special characters include: ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/"
},
"Description": {
"zh-cn": "The password must be 8 to 30 characters in length and contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters.<br>Special characters include: ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/",
"en": "The 8-30 long login password of instance, consists of the uppercase, lowercase letter and number. <br> special characters include()`~!@#$%^&*_-+=|{}[]:;'<>,.?/"
},
"MinLength": "8",
"Label": {
"zh-cn": "Instance password",
"en": "Instance Password"
},
"AllowedPattern": "[0-9A-Za-z\\_\\-&:;'<>,=%`~!@#\\(\\)\\$\\^\\*\\+\\|\\{\\}\\[\\]\\.\\?\\/]+$",
"NoEcho": true,
"MaxLength": "30",
"Type": "String"
},
"ImageId": {
"Default": "centos_7_04_64_20G_alibase_201701015.vhd",
"AssociationProperty": "ALIYUN::ECS::Image::ImageId",
"AssociationPropertyMetadata": {
"InstanceType": "${ECSInstanceType}",
"SupportedImageOwnerAlias": [
"system",
"self",
"others"
]
},
"Type": "String",
"Label": {
"zh-cn": "Image ID",
"en": "Image ID"
}
},
"Bandwidth": {
"Description": {
"zh-cn": "The peak bandwidth of a public network instance billed by fixed bandwidth.",
"en": "The bandwidth peak of a public network type instance of fixed bandwidth billing."
},
"Default": 1,
"MaxValue": 1000,
"MinValue": 1,
"Label": {
"zh-cn": "Peak bandwidth",
"en": "The Peak Bandwidth"
},
"Type": "Number"
},
"SLBInternetChargeType": {
"AssociationPropertyMetadata": {
"LocaleKey": "InternetChargeType"
},
"Description": {
"zh-cn": "The billing method for a public network instance.",
"en": "The charge type of public internet SLB instance."
},
"Default": "paybytraffic",
"Label": {
"zh-cn": "Internet billing method",
"en": "Internet Charge Type"
},
"AllowedValues": [
"paybybandwidth",
"paybytraffic"
],
"Type": "String"
},
"LoadBalancerSpec": {
"Default": "slb.s1.small",
"Type": "String",
"Description": {
"zh-cn": "Instance type. For more information, see </b><a href='https://www.alibabacloud.com/help/doc-detail/85939.html' target='_blank'><b><font color='blue'>performance-guaranteed instance types</b></font></a>",
"en": "Instance specifications, see detail:</b><a href='https://www.alibabacloud.com/help/doc-detail/85939.html' target='_blank'><b><font color='blue'>Performance support type</b></font></a>"
},
"Label": {
"zh-cn": "Instance type",
"en": "Instance Specification"
}
},
"ZoneId": {
"AssociationProperty": "ALIYUN::ECS::Instance::ZoneId",
"Type": "String",
"Description": {
"zh-cn": "The zone ID. Make sure that ECS, VPC, and vSwitch resources are supported in the selected zone.",
"en": "The available zone ID, you should confirm the zone support ECS, VPC, VSwitch or not."
},
"Label": {
"zh-cn": "Zone ID",
"en": "Zone ID"
}
}
},
"Outputs": {
"BackendServerInstanceId": {
"Description": {
"zh-cn": "IDs of the created ECS instances",
"en": "The instance IDs of create EcsInstanceGroup"
},
"Value": {
"Fn::GetAtt": [
"EcsInstanceGroup",
"InstanceIds"
]
}
},
"BackendServerPublicIp": {
"Description": {
"zh-cn": "Public IP addresses of the created ECS instances.",
"en": "The instance public IPs of create EcsInstanceGroup."
},
"Value": {
"Fn::GetAtt": [
"EcsInstanceGroup",
"PublicIps"
]
}
},
"SlbIpAddress": {
"Description": {
"zh-cn": "The IP address of the load balancer.",
"en": "The IP address of the load balancer."
},
"Value": {
"Fn::GetAtt": [
"LoadBalancer",
"IpAddress"
]
}
},
"LoadBalancerId": {
"Description": {
"zh-cn": "The ID of the created load balancer.",
"en": "The ID of load balance created."
},
"Value": {
"Fn::GetAtt": [
"LoadBalancer",
"LoadBalancerId"
]
}
}
},
"Resources": {
"SecurityGroup": {
"Type": "ALIYUN::ECS::SecurityGroup",
"Properties": {
"VpcId": {
"Ref": "Vpc"
},
"SecurityGroupName": "MySecurityGroup"
}
},
"Attachment": {
"Type": "ALIYUN::SLB::BackendServerAttachment",
"Properties": {
"BackendServers": [
{
"ServerId": {
"Fn::Select": [
"0",
{
"Fn::GetAtt": [
"EcsInstanceGroup",
"InstanceIds"
]
}
]
},
"Weight": 100
},
{
"ServerId": {
"Fn::Select": [
"1",
{
"Fn::GetAtt": [
"EcsInstanceGroup",
"InstanceIds"
]
}
]
},
"Weight": 100
}
],
"LoadBalancerId": {
"Ref": "LoadBalancer"
}
}
},
"Vpc": {
"Type": "ALIYUN::ECS::VPC",
"Properties": {
"CidrBlock": "192.168.0.0/16"
}
},
"EcsInstanceGroup": {
"Type": "ALIYUN::ECS::InstanceGroup",
"Properties": {
"SystemDiskCategory": {
"Ref": "SystemDiskCategory"
},
"VpcId": {
"Fn::GetAtt": [
"Vpc",
"VpcId"
]
},
"SecurityGroupId": {
"Fn::GetAtt": [
"SecurityGroup",
"SecurityGroupId"
]
},
"ImageId": {
"Ref": "ImageId"
},
"IoOptimized": "optimized",
"InternetChargeType": {
"Ref": "ECSInternetChargeType"
},
"VSwitchId": {
"Ref": "VSwitch"
},
"Password": {
"Ref": "Password"
},
"InstanceType": {
"Ref": "ECSInstanceType"
},
"MaxAmount": 2
}
},
"VSwitch": {
"Type": "ALIYUN::ECS::VSwitch",
"Properties": {
"VpcId": {
"Ref": "Vpc"
},
"CidrBlock": "192.168.1.0/24",
"ZoneId": {
"Ref": "ZoneId"
}
}
},
"LoadBalancer": {
"Type": "ALIYUN::SLB::LoadBalancer",
"Properties": {
"InternetChargeType": {
"Ref": "SLBInternetChargeType"
},
"Bandwidth": {
"Ref": "Bandwidth"
},
"AddressType": {
"Ref": "AddressType"
},
"LoadBalancerSpec": {
"Ref": "LoadBalancerSpec"
}
}
}
},
"Metadata": {
"ALIYUN::ROS::Interface": {
"ParameterGroups": [
{
"Parameters": [
"ZoneId",
"ECSInternetChargeType",
"ECSInstanceType",
"ImageId",
"SystemDiskCategory",
"Password"
],
"Label": {
"default": {
"zh-cn": "ECS",
"en": "ECS"
}
}
},
{
"Parameters": [
"LoadBalancerSpec",
"AddressType",
"SLBInternetChargeType",
"Bandwidth"
],
"Label": {
"default": {
"zh-cn": "load balancing",
"en": "SLB"
}
}
}
]
}
}
}Pour plus d'exemples, consultez les modèles publics contenant cette ressource.