La fonction Fn::GetAZs renvoie la liste des zones disponibles dans une région donnée.
Remarque
Cette fonction s'applique uniquement aux ressources Elastic Compute Service (ECS) et Virtual Private Cloud (VPC).
Déclaration
-
JSON
{ "Fn::GetAZs": "regionId" } -
YAML
-
Syntaxe du nom complet de la fonction :
Fn::GetAZs: regionId -
Syntaxe de la forme abrégée :
!GetAZs regionId
-
Paramètres
regionId : ID de la région. Exemple : cn-hangzhou.
Valeur de retour
Liste des zones de la région spécifiée.
Exemples
Les exemples suivants permettent de créer une instance ECS dans la première zone d'une région donnée :
ROSTemplateFormatVersion: '2015-09-01'
Resources:
WebServer:
Type: ALIYUN::ECS::Instance
Properties:
ImageId: centos7u2_64_40G_cloudinit_2016072****
InstanceType: ecs.n1.tiny
SecurityGroupId: sg-2zedcm7ep5quses0****
Password: Ros1****
AllocatePublicIP: true
InternetChargeType: PayByTraffic
InternetMaxBandwidthIn: 100
InternetMaxBandwidthOut: 100
SystemDiskCategory: cloud_efficiency
IoOptimized: optimized
ZoneId:
!Select
- '0'
- !GetAZs
Ref: ALIYUN::Region
Outputs:
InstanceId:
Value: !GetAtt WebServer.InstanceId
PublicIp:
Value: !GetAtt WebServer.PublicIp{
"ROSTemplateFormatVersion": "2015-09-01",
"Resources": {
"WebServer": {
"Type": "ALIYUN::ECS::Instance",
"Properties": {
"ImageId": "centos7u2_64_40G_cloudinit_2016072****",
"InstanceType": "ecs.n1.tiny",
"SecurityGroupId": "sg-2zedcm7ep5quses0****",
"Password": "Ros1****",
"AllocatePublicIP": true,
"InternetChargeType": "PayByTraffic",
"InternetMaxBandwidthIn": 100,
"InternetMaxBandwidthOut": 100,
"SystemDiskCategory": "cloud_efficiency",
"IoOptimized": "optimized",
"ZoneId": {
"Fn::Select": [
"0",
{
"Fn::GetAZs": {
"Ref": "ALIYUN::Region"
}
}
]
}
}
}
},
"Outputs": {
"InstanceId": {
"Value": {
"Fn::GetAtt": [
"WebServer",
"InstanceId"
]
}
},
"PublicIp": {
"Value": {
"Fn::GetAtt": [
"WebServer",
"PublicIp"
]
}
}
}
}