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.
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 zugeordnet
az1
, 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. IDsDie
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.
Das Diagramm zeigt den folgenden Workflow:
Die Lösung dieses Musters wird für alle Konten bereitgestellt, für die eine zonale Konsistenz erforderlich ist. VPC
Die Lösung erstellt Parameter Store-Werte für jede AZ-ID und speichert den neuen Availability Zone-Namen.
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.
Das Diagramm zeigt den folgenden Workflow:
Reichen Sie eine Vorlage für die Erstellung eines Ziels einVPC. AWS CloudFormation
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.
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.
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
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
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Ermitteln Sie die erforderlichen Availability Zones für die Region. |
| Cloud-Architekt |
Stellen Sie die Datei az-mapping.yaml bereit. | Verwenden Sie die Wir empfehlen Ihnen, AWS CloudFormation StackSetsoder die Customizations for AWS Control Tower Solution | Cloud-Architekt |
Aufgabe | Beschreibung | Erforderliche 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 | 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
Availability Zone IDs für Ihre AWS Ressourcen (AWSResource Access Manager Manager-Dokumentation)
AWS::EC2: :Subnet (Dokumentation) AWS CloudFormation