Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Fn::GetAZs
La fonction intrinsèque Fn::GetAZs
renvoie un tableau qui répertorie les zones de disponibilité d’une région donnée en ordre alphabétique. Etant donné que les clients ont accès à différentes zones de disponibilité, la fonction intrinsèque Fn::GetAZs
permet aux auteurs d'écrire des modèles qui s'adaptent à l'accès de l'utilisateur appelant. De cette façon, vous n’avez pas à coder en dur une liste complète de zones de disponibilité pour une région donnée.
Important
La fonction Fn::GetAZs
renvoie uniquement les zones de disponibilité qui ont un sous-réseau par défaut, sauf si aucune d'elles n'a de sous-réseau par défaut. Dans ce cas, toutes les zones de disponibilité sont renvoyées.
À l'instar de la réponse du describe-availability-zones
AWS CLI commande, l'ordre des résultats de la Fn::GetAZs
fonction n'est pas garanti et peut changer lorsque de nouvelles zones de disponibilité sont ajoutées.
IAMautorisations
Les autorisations dont vous avez besoin pour utiliser la Fn::GetAZs
fonction dépendent de la plateforme sur laquelle vous lancez les EC2 instances Amazon. Pour les deux plateformes, vous avez besoin d'autorisations pour accéder à Amazon EC2 DescribeAvailabilityZones
et d'DescribeAccountAttributes
actions. Pour EC2 -VPC, vous devez également disposer d'autorisations pour effectuer l'EC2DescribeSubnets
action Amazon.
Déclaration
JSON
{ "Fn::GetAZs" : "
region
" }
YAML
Syntaxe pour le nom complet de la fonction :
Fn::GetAZs:
region
Syntaxe pour la forme courte :
!GetAZs
region
Paramètres
- region
-
Nom de la région pour laquelle vous souhaitez obtenir les zones de disponibilité.
Vous pouvez utiliser le pseudo-paramètre
AWS::Region
pour spécifier la région dans laquelle la pile est créée. La définition d'une chaîne vide revient à spécifierAWS::Region
.
Valeur renvoyée
Liste des zones de disponibilité de la région.
Exemples
Évaluer une région.
Pour ces exemples, CloudFormation évalue Fn::GetAZs
le tableau suivant, en supposant que l'utilisateur a créé la pile dans la région : us-east-1
[ "us-east-1a", "us-east-1b", "us-east-1c", "us-east-1d", "us-east-1e" ]
JSON
{ "Fn::GetAZs" : "" } { "Fn::GetAZs" : { "Ref" : "AWS::Region" } } { "Fn::GetAZs" : "us-east-1" }
YAML
Fn::GetAZs: "" Fn::GetAZs: Ref: "AWS::Region" Fn::GetAZs: us-east-1
Spécification de la zone de disponibilité d'un sous-réseau
L'exemple suivant utilise Fn::GetAZs
pour spécifier la zone de disponibilité d'un sous-réseau :
JSON
"mySubnet" : { "Type" : "AWS::EC2::Subnet", "Properties" : { "VpcId" : { "Ref" : "VPC" }, "CidrBlock" : "10.0.0.0/24", "AvailabilityZone" : { "Fn::Select" : [ 0, { "Fn::GetAZs" : "" } ] } } }
YAML
mySubnet: Type: "AWS::EC2::Subnet" Properties: VpcId: !Ref VPC CidrBlock: 10.0.0.0/24 AvailabilityZone: Fn::Select: - 0 - Fn::GetAZs: ""
Fonctions imbriquées avec forme abrégée YAML
Les exemples suivants montrent des modèles valides pour l'utilisation de fonctions intrinsèques imbriquées sous forme YAML abrégée. Comme vous ne pouvez pas imbriquer consécutivement des fonctions de forme courte, un modèle tel que !GetAZs !Ref
n'est pas valide.
YAML
AvailabilityZone: !Select - 0 - !GetAZs Ref: 'AWS::Region'
YAML
AvailabilityZone: !Select - 0 - Fn::GetAZs: !Ref 'AWS::Region'
Fonctions prises en charge
Vous pouvez utiliser la fonction Ref dans la Fn::GetAZs
fonction.