Verwenden Sie konsistente Availability Zones VPCs für verschiedene AWS Konten - AWS Prescriptive Guidance

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.

Verwenden Sie konsistente Availability Zones VPCs für verschiedene AWS Konten

Erstellt von Adam Spicer () AWS

Code-Repository: Zuordnung von Availability Zones für mehrere Konten

Umgebung: Produktion

Technologien: Infrastruktur

AWSDienstleistungen: AWS CloudFormation; AmazonVPC; AWS Lambda

Übersicht

In der Amazon Web Services (AWS) -Cloud hat eine Availability Zone einen Namen, der je nach Ihren AWS Konten variieren kann, und eine Availability Zone ID (AZ ID), die ihren Standort identifiziert. Wenn Sie AWS CloudFormation virtuelle private Clouds (VPCs) erstellen, müssen Sie beim Erstellen der Subnetze den Namen oder die ID der Availability Zone angeben. Wenn Sie mehrere Konten erstellenVPCs, wird der Name der Availability Zone nach dem Zufallsprinzip ausgewählt, was bedeutet, dass Subnetze in jedem Konto unterschiedliche Availability Zones verwenden. 

Um dieselbe Availability Zone für Ihre Konten zu verwenden, müssen Sie den Availability Zone-Namen in jedem Konto derselben AZ-ID zuordnen. Das folgende Diagramm zeigt beispielsweise, dass die use1-az6 AZ-ID us-east-1a in AWS Konto A und us-east-1c AWS Konto Z benannt ist.

Die use1-az6 AZ-ID trägt den Namen us-east-1a in AWS Konto A und us-east-1c in Konto Z. AWS

Dieses Muster trägt zur Sicherstellung der zonalen Konsistenz bei, indem es eine kontoübergreifende, skalierbare Lösung für die Verwendung derselben Availability Zones in Ihren Subnetzen bietet. Durch die zonale Konsistenz wird sichergestellt, dass Ihr kontenübergreifender Netzwerkverkehr Netzwerkpfade zwischen Availability Zones vermeidet, wodurch die Datenübertragungskosten gesenkt und die Netzwerklatenz zwischen Ihren Workloads verringert wird.

Dieses Muster ist ein alternativer Ansatz für die Immobilie. AWS CloudFormation AvailabilityZoneId

Voraussetzungen und Einschränkungen

Voraussetzungen

  • Mindestens zwei aktive AWS Konten in derselben AWS Region.

  • Prüfen Sie, wie viele Availability Zones erforderlich sind, um Ihre VPC Anforderungen in der Region zu erfüllen.

  • Identifizieren und notieren Sie die AZ-ID für jede Availability Zone, die Sie unterstützen müssen. Weitere Informationen dazu finden Sie unter Availability Zone IDs für Ihre AWS Ressourcen in der AWS Resource Access Manager Manager-Dokumentation.  

  • Eine geordnete, durch Kommas getrennte Liste Ihrer AZ. IDs Beispielsweise wird die erste Availability Zone auf Ihrer Liste als zugeordnetaz1, die zweite Availability Zone als, und diese Zuordnungsstruktur wird fortgesetztaz2, bis Ihre kommagetrennte Liste vollständig zugeordnet ist. Es gibt keine maximale Anzahl von AZ, die zugeordnet werden können. IDs 

  • Die az-mapping.yaml Datei aus dem Mapping-Repository für die Availability Zone mit GitHub mehreren Konten, die auf Ihren lokalen Computer kopiert wurde

Architektur

Das folgende Diagramm zeigt die Architektur, die in einem Konto bereitgestellt wird und die Werte des AWS Systems Manager Manager-Parameterspeichers erstellt. Diese Parameter Store-Werte werden verwendet, wenn Sie einen VPC im Konto erstellen.

Workflow zum Erstellen von Systems Manager Manager-Parameterspeicher-Werten für jede AZ-ID und zum Speichern des AZ-Namens.

Das Diagramm zeigt den folgenden Workflow:

  1. Die Lösung dieses Musters wird für alle Konten bereitgestellt, für die eine zonale Konsistenz erforderlich ist. VPC 

  2. Die Lösung erstellt Parameter Store-Werte für jede AZ-ID und speichert den neuen Availability Zone-Namen. 

  3. Die AWS CloudFormation Vorlage verwendet den Namen der Availability Zone, der in jedem Parameter Store-Wert gespeichert ist. Dadurch wird die zonale Konsistenz gewährleistet.

Das folgende Diagramm zeigt den Arbeitsablauf für die Erstellung einer Lösung VPC mit diesem Muster.

Der Workflow reicht eine CloudFormation Vorlage ein, um eine VPC mit der richtigen AZ IDs zu erstellen.

Das Diagramm zeigt den folgenden Workflow:

  1. Reichen Sie eine Vorlage für die Erstellung eines Ziels einVPC. AWS CloudFormation

  2. AWS CloudFormation löst die Parameter Store-Werte für jede Availability Zone auf und gibt den Namen der Availability Zone für jede AZ-ID zurück.

  3. A VPC wird mit der richtigen AZ erstellt, die für die zonale Konsistenz IDs erforderlich ist.

Nachdem Sie die Lösung für dieses Muster bereitgestellt haben, können Sie Subnetze erstellen, die auf die Parameter Store-Werte verweisen. Wenn Sie diese Option verwenden AWS CloudFormation, können Sie auf die Werte der Availability Zone-Zuordnungsparameter aus dem folgenden Beispielcode im YAML -Format verweisen:

Resources: PrivateSubnet1AZ1: Type: AWS::EC2::Subnet Properties: VpcId: !Ref VPC CidrBlock: !Ref PrivateSubnetAZ1CIDR AvailabilityZone: !Join - '' - - '{{resolve:ssm:/az-mapping/az1:1}}'

Dieser Beispielcode ist in der vpc-example.yaml  Datei aus dem Mapping-Repository für GitHub mehrere Konten enthalten. Es zeigt Ihnen, wie Sie aus Gründen der zonalen Konsistenz A VPC - und Subnetze erstellen, die sich an den Werten des Parameterspeichers orientieren.

Technologie-Stack

  • AWS CloudFormation

  • AWSLambda

  • AWSSystems Manager Manager-Parameterspeicher

Automatisierung und Skalierung

Sie können dieses Muster mithilfe AWS CloudFormation StackSets der Lösung Customizations for AWS Control Tower für all Ihre AWS Konten bereitstellen. Weitere Informationen finden Sie unter Arbeiten mit AWS CloudFormation StackSets in der AWS Cloudformation-Dokumentation und unter Anpassungen für AWS Control Tower in der AWS Lösungsbibliothek. 

Nachdem Sie die AWS CloudFormation Vorlage bereitgestellt haben, können Sie sie so aktualisieren, dass sie die Parameter Store-Werte verwendet und Ihre VPCs internen Pipelines oder gemäß Ihren Anforderungen bereitstellen. 

Tools

AWSDienste

  • AWS CloudFormationhilft Ihnen dabei, Ihre AWS Ressourcen zu modellieren und einzurichten, sie schnell und konsistent bereitzustellen und sie während ihres gesamten Lebenszyklus zu verwalten. Sie können eine Vorlage verwenden, um Ihre Ressourcen und ihre Abhängigkeiten zu beschreiben und sie zusammen als Stapel zu starten und zu konfigurieren, anstatt Ressourcen einzeln zu verwalten. Sie können Stacks für mehrere AWS Konten und AWS Regionen verwalten und bereitstellen.

  • AWSLambda ist ein Rechendienst, der die Ausführung von Code unterstützt, ohne Server bereitzustellen oder zu verwalten. Lambda führt Ihren Code nur bei Bedarf aus und skaliert automatisch – von einigen Anforderungen pro Tag bis zu Tausenden pro Sekunde. Sie bezahlen nur für die Datenverarbeitungszeit, die Sie wirklich nutzen und es werden keine Gebühren in Rechnung gestellt, wenn Ihr Code nicht ausgeführt wird.

  • AWSSystems Manager Parameter Store ist eine Funktion von AWS Systems Manager. Es bietet sicheren, hierarchischen Speicher für die Verwaltung von Konfigurationsdaten und Geheimnissen.

Code

Der Code für dieses Muster befindet sich im Mapping-Repository für die Availability Zone mit GitHub mehreren Konten.

Epen

AufgabeBeschreibungErforderliche Fähigkeiten

Ermitteln Sie die erforderlichen Availability Zones für die Region.

  1. Ermitteln Sie die AZIDs, die in Ihrer Region konsistent verwendet werden muss. 

  2. Notieren Sie diese AZ IDs in einer durch Kommas getrennten Liste und in der Reihenfolge, in der sie angewendet werden sollen. Beispielsweise wird die erste Availability Zone auf Ihrer Liste als az1 und die zweite als zugeordnet. az2 Es gibt keine maximale Anzahl von AZIDs, die zugeordnet werden können.

Cloud-Architekt

Stellen Sie die Datei az-mapping.yaml bereit.

Verwenden Sie die az-mapping.yaml Datei, um einen Stack in allen erforderlichen Konten zu erstellen AWS CloudFormation . AWS Verwenden Sie im AZIds Parameter die kommagetrennte Liste, die Sie zuvor erstellt haben. 

Wir empfehlen Ihnen, AWS CloudFormation StackSetsoder die Customizations for AWS Control Tower Solution zu verwenden.

Cloud-Architekt
AufgabeBeschreibungErforderliche Fähigkeiten

Passen Sie die AWS CloudFormation Vorlagen an.

Wenn Sie die Subnetze mithilfe von erstellen AWS CloudFormation, passen Sie die Vorlagen so an, dass sie die Parameter Store-Werte verwenden, die Sie zuvor erstellt haben.

Eine Beispielvorlage finden Sie in der vpc-example.yaml Datei im Mapping-Repository für die Availability Zone mit GitHub mehreren Konten.

Cloud-Architekt

Stellen Sie das bereitVPCs.

Stellen Sie die benutzerdefinierten AWS CloudFormation Vorlagen in Ihren Konten bereit. Jede Zone VPC in der Region weist dann eine zonale Konsistenz in den Availability Zones auf, die für die Subnetze verwendet werden

Cloud-Architekt

Zugehörige Ressourcen