

Dies ist das neue *CloudFormation Template Reference Guide*. Bitte aktualisieren Sie Ihre Lesezeichen und Links. Hilfe zu den ersten CloudFormation Schritten finden Sie im [AWS CloudFormation Benutzerhandbuch](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html).

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`
<a name="intrinsic-function-reference-getavailabilityzones"></a>

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 bei der Antwort des `describe-availability-zones` AWS CLI Befehls ist die Reihenfolge der Ergebnisse der `Fn::GetAZs` Funktion nicht garantiert und kann sich ändern, wenn neue Availability Zones hinzugefügt werden.

IAM-Berechtigungen

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

## Deklaration
<a name="intrinsic-function-reference-getazs-declaration"></a>

### JSON
<a name="intrinsic-function-reference-getazs-syntax.json"></a>

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

### YAML
<a name="intrinsic-function-reference-getazs-syntax.yaml"></a>

Syntax für den vollständigen Funktionsnamen:

```
Fn::GetAZs: {{Region}}
```

Syntax für die Kurzform:

```
!GetAZs {{Region}}
```

## Parameters
<a name="intrinsic-function-reference-getazs-parameters"></a>

Region  <a name="region"></a>
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
<a name="intrinsic-function-reference-getazs-return-value"></a>

Die Liste der Availability Zones für die Region.

## Beispiele
<a name="intrinsic-function-reference-getazs-examples"></a>

### Bewerten einer Region
<a name="intrinsic-function-reference-getazs-examples-evaluate-region"></a>

Für diese Beispiele wird das folgende Array CloudFormation ausgewertet `Fn::GetAZs` — 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
<a name="intrinsic-function-reference-getazs-example1.json"></a>

```
1. { "Fn::GetAZs" : "" }
2. { "Fn::GetAZs" : { "Ref" : "AWS::Region" } }
3. { "Fn::GetAZs" : "us-east-1" }
```

#### YAML
<a name="intrinsic-function-reference-getazs-example1.yaml"></a>

```
1. Fn::GetAZs: ""
2. Fn::GetAZs:
3.   Ref: "AWS::Region"
4. Fn::GetAZs: us-east-1
```

 

### Die Availability Zone eines Subnetzes angeben
<a name="intrinsic-function-reference-getazs-examples-subnet-az"></a>

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

#### JSON
<a name="intrinsic-function-reference-getazs-example.json"></a>

```
"mySubnet" : {
  "Type" : "AWS::EC2::Subnet",
  "Properties" : {
    "VpcId" : { 
      "Ref" : "VPC"   
    },
    "CidrBlock" : "10.0.0.0/24",
    "AvailabilityZone" : {
      "Fn::Select" : [ 
        0, 
        { 
          "Fn::GetAZs" : "" 
        } 
      ]
    }
  }
}
```

#### YAML
<a name="intrinsic-function-reference-getazs-example.yaml"></a>

```
mySubnet: 
  Type: AWS::EC2::Subnet
  Properties: 
    VpcId: 
      !Ref VPC
    CidrBlock: 10.0.0.0/24
    AvailabilityZone: 
      Fn::Select: 
        - 0
        - Fn::GetAZs: ""
```

 

### Verschachtelte Funktionen mit YAML in Kurzschreibweise
<a name="intrinsic-function-reference-getazs-examples-nested-functions"></a>

Die folgenden Beispiele zeigen gültige Muster für die Nutzung von verschachtelten intrinsischen Funktionen mit der Kurzschreibweise von YAML. Sie können Funktionen in Kurzschreibweise nicht nacheinander verschachteln, daher ist ein Muster wie `!GetAZs !Ref` ungültig.

#### YAML
<a name="intrinsic-function-reference-getavailabilityzones-example3.yaml"></a>

```
1. AvailabilityZone: !Select
2.   - 0
3.   - !GetAZs
4.     Ref: 'AWS::Region'
```

#### YAML
<a name="intrinsic-function-reference-getavailabilityzones-example4.yaml"></a>

```
1. AvailabilityZone: !Select
2.   - 0
3.   - Fn::GetAZs: !Ref 'AWS::Region'
```

## Unterstützte Funktionen
<a name="intrinsic-function-reference-getazs-supported-functions"></a>

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