Fn::GetAZs - AWS CloudFormation

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Fn::GetAZs

Die intrinsische Funktion Fn::GetAZs gibt ein Array mit einer Liste der Availability Zones für eine angegebene Region in alphabetischer Reihenfolge zurück. Da Kunden Zugriff auf verschiedene Availability Zones haben, ermöglicht die intrinsische Funktion Fn::GetAZs die Erstellung von Vorlagen, die sich an den Zugriff des aufrufenden Benutzers anpassen. Dadurch ist es nicht erforderlich, eine vollständige Liste der Availability Zones für eine bestimmte Region im Code explizit anzugeben.

Wichtig

Die Funktion Fn::GetAZs gibt nur die Availability Zones zurück, die über ein Standardsubnetz verfügen, es sei denn, keine der Availability Zones verfügt über ein Standardsubnetz. In diesem Fall werden alle Availability Zones zurückgegeben.

Ähnlich wie die Antwort von describe-availability-zones AWS CLI Bei diesem Befehl ist die Reihenfolge der Ergebnisse der Fn::GetAZs Funktion nicht garantiert und kann sich ändern, wenn neue Availability Zones hinzugefügt werden.

IAMBerechtigungen

Die Berechtigungen, die Sie für die Nutzung der Fn::GetAZs Funktion benötigen, hängen von der Plattform ab, auf der Sie EC2 Amazon-Instances starten. Für beide Plattformen benötigen Sie Berechtigungen für Amazon EC2 DescribeAvailabilityZones und DescribeAccountAttributes Aktionen. Für EC2 - VPC benötigen Sie auch Berechtigungen für die EC2 DescribeSubnets Amazon-Aktion.

Deklaration

JSON

{ "Fn::GetAZs" : "Region" }

YAML

Syntax für den vollständigen Funktionsnamen:

Fn::GetAZs: Region

Syntax für die Kurzform:

!GetAZs Region

Parameter

Region

Der Name der Region, für die Sie die Availability Zones abrufen möchten.

Sie können mit dem Pseudoparameter AWS::Region die Region angeben, in welcher der Stack erstellt wird. Die Angabe einer leeren Zeichenfolge entspricht der Angabe von AWS::Region.

Rückgabewert

Die Liste der Availability Zones für die Region.

Beispiele

Bewerten einer Region

Für diese Beispiele CloudFormation ergibt Fn::GetAZs sich das folgende Array, vorausgesetzt, der Benutzer hat den Stack in der Region erstellt: 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

 

Die Availability Zone eines Subnetzes angeben

Im folgenden Beispiel wird mit Fn::GetAZs die Availability Zone (AZ) eines Subnetzes angegeben:

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: ""

 

Verschachtelte Funktionen in Kurzform YAML

Die folgenden Beispiele zeigen gültige Muster für die Verwendung verschachtelter systemeigener Funktionen in Kurzform. YAML Sie können Funktionen in Kurzschreibweise nicht nacheinander verschachteln, daher ist ein Muster wie !GetAZs !Ref ungültig.

YAML

AvailabilityZone: !Select - 0 - !GetAZs Ref: 'AWS::Region'

YAML

AvailabilityZone: !Select - 0 - Fn::GetAZs: !Ref 'AWS::Region'

Unterstützte Funktionen

Sie können die Ref-Funktion in der Funktion verwenden. Fn::GetAZs