Il s'agit du nouveau guide AWS CloudFormation de référence des modèles. Veuillez mettre à jour vos favoris et vos liens. Pour obtenir de l'aide pour démarrer CloudFormation, consultez le guide de AWS CloudFormation l'utilisateur.
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.
Comme pour la réponse de la 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.
Autorisations IAM
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 l'action Amazon EC2 DescribeSubnets
.
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 courte YAML
Les exemples suivants illustrent des modèles valides pour l'utilisation des fonctions intrinsèque imbriquées à l'aide d'une forme YAML courte. 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 fonction Fn::GetAZs
.