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.
Automatisches Taggen Transit Gateway Gateway-Anhängen mithilfe von AWS Organizations
Erstellt von Richard Milner-Watts (AWS), Haris Bin Ayub (AWS) und John Capps (AWS)
Quellcode-Repository: Transit Gateway Attachment Tagger | Umgebung: Produktion | Technologien: Netzwerke; Infrastruktur; Management und Verwaltung; Betrieb |
AWS-Services: AWS Step Functions; AWS Transit Gateway; Amazon VPC; AWS Lambda |
Übersicht
Auf Amazon Web Services (AWS) können Sie AWS Resource Access Manager verwenden, um AWS
Diese Lösung bietet einen automatisierten Mechanismus zum Sammeln von Informationen über jeden Transit Gateway Gateway-Anhang für Konten innerhalb einer Organisation, die von AWS Organizations<CIDR-range>-<AccountName>
auf den Anhang innerhalb des Kontos an, das das Transit-Gateway enthält.
Diese Lösung kann zusammen mit einer Lösung wie dem Serverless Transit Network Orchestrator
Voraussetzungen und Einschränkungen
Voraussetzungen
Ein aktives AWS-Konto
Eine Organisation von AWS Organizations, die alle zugehörigen Konten enthält
Zugriff auf das Organisationsverwaltungskonto unter dem Stammkonto der Organisation, um die erforderliche AWS Identity and Access Management (IAM) -Rolle zu erstellen
Ein Shared Networking-Mitgliedskonto, das ein oder mehrere Transit-Gateways enthält, die mit der Organisation gemeinsam genutzt werden und über Anlagen verfügen
Architektur
Der folgende Screenshot der AWS-Managementkonsole zeigt Beispiele für Transit Gateway Gateway-Anhänge ohne zugeordnetes Name-Tag und zwei Transit Gateway Gateway-Anhänge mit Namens-Tags, die von dieser Lösung generiert wurden. Die Struktur des generierten Namens-Tags ist<CIDR-range>-<AccountName>
.
Diese Lösung verwendet AWS CloudFormation, um einen AWS
Nachdem die Lösung die Kontonamen von AWS Organizations abgerufen hat, erhält die Step Functions Functions-Zustandsmaschine alle Transit Gateway Gateway-Anhangs-IDs. Diese werden parallel von der AWS-Region verarbeitet. Diese Verarbeitung umfasst das Nachschlagen des CIDR-Bereichs für jeden Anhang. Der CIDR-Bereich wird ermittelt, indem die Transit Gateway Gateway-Routentabellen innerhalb der Region nach einer passenden Transit Gateway Gateway-Anhangs-ID durchsucht werden. Wenn alle erforderlichen Informationen verfügbar sind, fügt die Lösung dem Anhang ein Namensschild hinzu. Die Lösung überschreibt keine vorhandenen Name-Tags.
Die Lösung läuft nach einem Zeitplan, der durch ein EventBridgeAmazon-Ereignis
Zieltechnologie-Stack
Amazon EventBridge
AWS Lambda
AWS Organizations
AWS Transit Gateway
Amazon Virtual Private Cloud (Amazon VPC)
AWS X-Ray
Zielarchitektur
Die Lösungsarchitektur und der Arbeitsablauf sind in der folgenden Abbildung dargestellt.
Das geplante Ereignis initiiert die Regel.
Die EventBridge Regel startet die Step Functions Functions-Zustandsmaschine.
Die Zustandsmaschine ruft die
tgw-tagger-organizations-account-query
Lambda-Funktion auf.Die
tgw-tagger-organizations-account-query
Lambda-Funktion übernimmt die Rolle im Organisationsverwaltungskonto.Die
tgw-tagger-organizations-account-query
Lambda-Funktion ruft die Organizations-API auf, um AWS-Konto-Metadaten zurückzugeben.Die Zustandsmaschine ruft die
tgw-tagger-attachment-query
Lambda-Funktion auf.Für jede Region ruft die Zustandsmaschine parallel die
tgw-tagger-rtb-query
Lambda-Funktion auf, um den CIDR-Bereich für jeden Anhang zu lesen.Für jede Region ruft die Zustandsmaschine parallel die
tgw-tagger-attachment-tagger
Lambda-Funktion auf.Namensschilder werden für Transit Gateway Gateway-Anlagen im Shared Networking-Konto erstellt.
Automatisierung und Skalierung
Die Lösung verarbeitet jede Region parallel, um die Gesamtdauer des Laufs zu reduzieren.
Tools
AWS-Services
AWS CloudFormation — AWS CloudFormation bietet die Möglichkeit, eine Sammlung verwandter AWS- und Drittanbieter-Ressourcen zu modellieren, sie schnell und konsistent bereitzustellen und sie während ihres gesamten Lebenszyklus zu verwalten, indem Infrastruktur als Code behandelt wird.
Amazon EventBridge — Amazon EventBridge ist ein serverloser Event-Bus-Service, mit dem Sie Ihre Anwendungen mit Daten aus einer Vielzahl von Quellen verbinden können. EventBridge empfängt ein Ereignis, einen Indikator für eine Änderung der Umgebung, und wendet eine Regel an, um das Ereignis an ein Ziel weiterzuleiten. Regeln ordnen Ereignisse Zielen entweder auf der Grundlage der Struktur des Ereignisses, eines so genannten Ereignismusters, oder anhand eines Zeitplans zu.
AWS Lambda — AWS Lambda ist ein Rechenservice, 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 wenigen Anfragen pro Tag bis hin zu Tausenden pro Sekunde. Sie zahlen nur für die tatsächlich konsumierte Zeit. Es werden keine Gebühren berechnet, solange Ihr Code nicht ausgeführt wird.
AWS Organizations — AWS Organizations hilft Ihnen dabei, Ihre Umgebung zentral zu verwalten und zu steuern, während Sie Ihre AWS-Ressourcen erweitern und skalieren. Mit AWS Organizations können Sie programmgesteuert neue AWS-Konten erstellen und Ressourcen zuweisen, Konten gruppieren, um Ihre Workflows zu organisieren, Richtlinien auf Konten oder Gruppen zur Verwaltung anwenden und die Abrechnung vereinfachen, indem Sie für alle Ihre Konten eine einzige Zahlungsmethode verwenden.
AWS Step Functions — AWS Step Functions ist ein visueller Workflow-Service mit geringem Programmieraufwand, der zur Orchestrierung von AWS-Services, zur Automatisierung von Geschäftsprozessen und zur Erstellung serverloser Anwendungen verwendet wird. Workflows verwalten Fehler, Wiederholungen, Parallelisierung, Serviceintegrationen und Beobachtbarkeit, sodass sich Entwickler auf die wertvollere Geschäftslogik konzentrieren können.
AWS Transit Gateway
— AWS Transit Gateway verbindet VPCs und lokale Netzwerke über einen zentralen Hub. Dies vereinfacht Ihr Netzwerk und beendet komplexe Peering-Beziehungen. Es fungiert als Cloud-Router, sodass jede neue Verbindung nur einmal hergestellt wird. Amazon VPC — Amazon Virtual Private Cloud (Amazon VPC) ist ein Service zum Starten von AWS-Ressourcen in einem logisch isolierten virtuellen Netzwerk, das Sie definieren.
AWS X-Ray — AWS X-Ray sammelt Daten über Anfragen, die Ihre Anwendung bedient, und stellt Tools bereit, mit denen Sie diese Daten anzeigen, filtern und Einblicke in sie gewinnen können, um Probleme und Optimierungsmöglichkeiten zu identifizieren.
Code
Der Quellcode für diese Lösung ist im Transit Gateway Attachment GitHub Tagger-Repository
tgw-attachment-tagger-main-stack.yaml
erstellt alle Ressourcen zur Unterstützung dieser Lösung innerhalb des Shared Networking-Kontos.tgw-attachment-tagger-organizations-stack.yaml
erstellt eine Rolle im Verwaltungskonto der Organisation.
Epen
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Sammeln Sie die erforderlichen Informationen zu den Voraussetzungen. | Um den kontoübergreifenden Zugriff von der Lambda-Funktion auf die AWS Organizations API zu konfigurieren, benötigen Sie die Konto-ID für das Verwaltungskonto der Organisation. Hinweis: Die Reihenfolge, in der die beiden CloudFormation Stapel erstellt werden, ist wichtig. Sie müssen zuerst Ressourcen für das Shared Networking-Konto bereitstellen. Die Rolle im Shared Networking-Konto muss bereits vorhanden sein, bevor Ressourcen für das Verwaltungskonto der Organisation bereitgestellt werden können. Weitere Informationen finden Sie in der AWS-Dokumentation | DevOps Ingenieur |
Starten Sie die CloudFormation Vorlage für den Hauptlösungsstapel. | Die Vorlage für den Hauptlösungsstapel stellt die IAM-Rollen, den Step Functions Functions-Workflow, die Lambda-Funktionen und das CloudWatch Ereignis bereit. Öffnen Sie die AWS-Managementkonsole für das Shared Networking-Konto und öffnen Sie dann die CloudFormation Konsole. Erstellen Sie den Stack mithilfe der
Weitere Informationen zum Starten eines CloudFormation Stacks finden Sie in der AWS-Dokumentation. | DevOps Ingenieur |
Stellen Sie sicher, dass die Lösung erfolgreich gestartet wurde. | Warten Sie, bis der CloudFormation Stack den Status CREATE_COMPLETE erreicht hat. Dies sollte weniger als eine Minute dauern. Öffnen Sie die Step Functions Functions-Konsole und stellen Sie sicher, dass eine neue Zustandsmaschine mit dem Namen tgw-attachment-tagger-state-machine erstellt wurde. | DevOps Ingenieur |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Sammeln Sie die erforderlichen Informationen zu den Voraussetzungen. | Um den kontoübergreifenden Zugriff von der Lambda-Funktion auf die AWS Organizations API zu konfigurieren, benötigen Sie die Konto-ID für das Shared Networking-Konto. | DevOps Ingenieur |
Starten Sie die CloudFormation Vorlage für den Organisations-Stack | Die Vorlage für den AWS Organizations Stack stellt die IAM-Rolle im Verwaltungskonto der Organisation bereit. Greifen Sie auf die AWS-Konsole für das Verwaltungskonto der Organisation zu und öffnen Sie dann die CloudFormation Konsole. Erstellen Sie den Stack mithilfe der
Verwenden Sie für die anderen Optionen zur Stapelerstellung die Standardeinstellungen. | DevOps Ingenieur |
Stellen Sie sicher, dass die Lösung erfolgreich gestartet wurde. | Warten Sie, bis der CloudFormation Stack den Status CREATE_COMPLETE erreicht hat. Dies sollte weniger als eine Minute dauern. Öffnen Sie die Identity and Access Management (IAM) -Konsole und vergewissern Sie sich, dass eine neue Rolle mit dem Namen tgw-attachment-tagger-organization-query-role erstellt wurde. | DevOps Ingenieur |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Führen Sie die Zustandsmaschine aus. | Öffnen Sie die Step Functions Functions-Konsole für das Shared Networking-Konto und wählen Sie im Navigationsbereich State Machines aus. Wählen Sie den Zustandsmaschine tgw-attachment-tagger-state-machine und dann Ausführung starten aus. Da die Eingabe für diesen Zustandsmaschine nicht von der Lösung verwendet wird, können Sie den Standardwert verwenden.
Wählen Sie Start Execution aus. | DevOps Ingenieur |
Beobachten Sie die Zustandsmaschine bis zur Fertigstellung. | Auf der neuen Seite, die geöffnet wird, können Sie zusehen, wie die Zustandsmaschine läuft. Die Dauer hängt von der Anzahl der zu verarbeitenden Transit Gateway Gateway-Anlagen ab. Auf dieser Seite können Sie jeden Schritt der Zustandsmaschine untersuchen. Sie können die verschiedenen Aufgaben innerhalb der Zustandsmaschine anzeigen und den Links zu den CloudWatch Protokollen für die Lambda-Funktionen folgen. Für die Aufgaben, die innerhalb der Map parallel ausgeführt werden, können Sie die Dropdownliste Index verwenden, um die spezifischen Implementierungen für jede Region anzuzeigen. | DevOps Ingenieur |
Überprüfen Sie die Transit Gateway Gateway-Anhangs-Tags. | Öffnen Sie die VPC-Konsole für das Shared Networking-Konto und wählen Sie Transit Gateway Attachments aus. Auf der Konsole wird ein Namen-Tag für Anlagen bereitgestellt, die die Kriterien erfüllen (der Anhang wird an eine Transit Gateway Gateway-Routentabelle weitergegeben, und der Ressourcenbesitzer ist Mitglied der Organisation). | DevOps Ingenieur |
Überprüfen Sie die Initiierung des CloudWatch Ereignisses. | Warten Sie, bis das CloudWatch Ereignis ausgelöst wird. Dies ist für 06:00 Uhr UTC geplant. Öffnen Sie dann die Step Functions Functions-Konsole für das Shared Networking-Konto und wählen Sie im Navigationsbereich State Machines aus. Wählen Sie den Zustandsmaschine tgw-attachment-tagger-state-machine aus. Stellen Sie sicher, dass die Lösung um 06:00 Uhr UTC ausgeführt wurde. | DevOps Ingenieur |