Fn::GetAZs - AWS CloudFormation

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Fn::GetAZs

La funzione intrinseca Fn::GetAZs restituisce una matrice in cui sono elencate le zone di disponibilità per una Regione specifica in ordine alfabetico. Poiché i clienti hanno accesso a diverse zone di disponibilità, la funzione intrinseca Fn::GetAZs consente ai creatori di modelli di scrivere modelli che si adattano al tipo di accesso degli utenti che effettuano la chiamata. In questo modo non è necessario effettuare la codifica fissa di un elenco completo di zone di disponibilità per una determinata Regione.

Importante

La funzione Fn::GetAZs restituisce solo le zone di disponibilità con una sottorete predefinita, a meno che nessuna delle zone di disponibilità disponga di una sottorete predefinita. In questo caso, vengono restituite tutte le zone di disponibilità.

Analogamente alla risposta del describe-availability-zones AWS CLI comando, l'ordine dei risultati della Fn::GetAZs funzione non è garantito e può cambiare quando vengono aggiunte nuove zone di disponibilità.

IAMautorizzazioni

Le autorizzazioni necessarie per utilizzare la Fn::GetAZs funzione dipendono dalla piattaforma in cui vengono lanciate le istanze AmazonEC2. Per entrambe le piattaforme, sono necessarie le autorizzazioni per Amazon EC2 DescribeAvailabilityZones e DescribeAccountAttributes le azioni. Per EC2 -VPC, sono necessarie anche le autorizzazioni per l'EC2DescribeSubnetsazione Amazon.

Dichiarazione

JSON

{ "Fn::GetAZs" : "Regione" }

YAML

Sintassi per il nome completo della funzione:

Fn::GetAZs: Regione

Sintassi per la forma breve:

!GetAZs Regione

Parametri

Regione

Nome della Regione per la quale desideri ottenere le zone di disponibilità.

Puoi utilizzare lo pseudoparametro AWS::Region per specificare la Regione in cui viene creato lo stack. La specifica di una stringa vuota equivale a specificare AWS::Region.

Valore restituito

Elenco delle zone di disponibilità per la Regione.

Esempi

Valutazione di una Regione

Per questi esempi, CloudFormation restituisce Fn::GetAZs il seguente array, presupponendo che l'utente abbia creato lo stack nella regione: 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

 

Specifica la zona di disponibilità di una sottorete

L'esempio seguente utilizza Fn::GetAZs per specificare la zona di disponibilità di una sottorete:

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

 

Funzioni annidate con forma abbreviata YAML

Gli esempi seguenti mostrano modelli validi per l'utilizzo di funzioni intrinseche annidate utilizzando la forma abbreviata. YAML Non è possibile nidificare funzioni in formato breve in modo consecutivo. Pertanto, un modello simile a !GetAZs !Ref non è valido.

YAML

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

YAML

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

Funzioni supportate

È possibile utilizzare la funzione Ref nella funzione. Fn::GetAZs