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.
Automatisieren Sie Amazon VPC IPAM IPv4 CIDR-Zuweisungen für neue mithilfe von AFT AWS-Konten
Kien Pham und Alex Pazik, Amazon Web Services
Zusammenfassung
Dieses Muster zeigt, wie Amazon VPC IP Address Manager (IPAM) IPv4 CIDR-Zuweisungen für neue Benutzer mithilfe AWS-Konten von AWS Control Tower Account Factory for Terraform (AFT) automatisiert werden. Dies erfolgt mithilfe einer Anpassung auf Kontoebene, bei der mithilfe des Moduls ein IPv4 CIDR-Block von IPAM einer neuen Virtual Private Cloud (VPC) zugewiesen wird. aft-account-customizations
Mit IPAM können Sie IP-Adressen in großem Umfang organisieren, zuweisen, überwachen und prüfen, sodass Sie IP-Adressen für Ihre Workloads einfach planen, verfolgen und überwachen können. AWS Sie können einen IPAM- und einen IPAM-Pool erstellen, um während des Kontoverkaufs einer neuen VPC einen IPv4 CIDR-Block zuzuweisen.
Voraussetzungen und Einschränkungen
Voraussetzungen
Ein aktiver, der in einer unterstützten Version AWS Control Tower aktiviert ist AWS-Konto und eine AFT-Datei installiert ist AWS-Region
Ein unterstützter Anbieter von Versionskontrollsystemen (VCS)
wie BitBucket GitHub, und Enterprise GitHub Eine Laufzeitumgebung, in der Sie das Terraform-Modul ausführen können, das AFT installiert
AWS Command Line Interface (AWS CLI) installiert und konfiguriert
Einschränkungen
Einige AWS-Services sind nicht in allen verfügbar AWS-Regionen. Informationen zur Verfügbarkeit in den einzelnen Regionen finden Sie unter AWS Dienste nach Regionen
. Informationen zu bestimmten Endpunkten finden Sie unter Dienstendpunkte und Kontingente. Wählen Sie dort den Link für den Dienst aus.
Produktversionen
AWS Control Tower landing zone Version 3.0 oder höher, früher als Version 4.0
AFT
Version 1.13.0 oder höher, früher als Version 2.0.0 Terraform OSS Version 1.2.0 oder höher, früher als Version 2.0.0
Terraform AWS Provider
( terraform-provider-aws) Version 5.11.0 oder höher, früher als Version 6.0.0Terraform-Modul für
IPAM () Version 2.1.0 oder höher aws-ia/ipam/aws
Architektur
Das folgende Diagramm zeigt den Arbeitsablauf und die Komponenten dieses Musters.

Der Workflow besteht aus den folgenden Hauptaufgaben:
Änderungen auslösen — Die Änderungen an der Terraform- und IPAM-Anpassung werden in das GitHub Repository übernommen und per Push übertragen. Diese Aufgabe löst die Pipeline automatisch aus. AWS CodeBuild
Automatisieren Sie den Build — Innerhalb CodeBuild werden mehrere Build-Projekte ausgelöst AWS Step Functions.
Anpassung anwenden — Step Functions koordiniert CodeBuild die Planung und Anwendung von Terraform-Änderungen. Bei dieser Aufgabe wird das AFT-Terraform-Modul verwendet, um die IP-Zuweisung des IPAM-Pools zum verkauften Konto zu koordinieren. AWS
Tools
AWS-Services
AWS CodeBuildist ein vollständig verwalteter Build-Service, der Sie beim Kompilieren von Quellcode, beim Ausführen von Komponententests und beim Erstellen von Artefakten unterstützt, die sofort einsatzbereit sind.
AWS CodePipelinehilft Ihnen dabei, die verschiedenen Phasen einer Softwareversion schnell zu modellieren und zu konfigurieren und die Schritte zu automatisieren, die für die kontinuierliche Veröffentlichung von Softwareänderungen erforderlich sind.
AWS Control Towerorchestriert die Funktionen mehrerer anderer Funktionen AWS-Services, darunter AWS Organizations AWS Service Catalog, und AWS IAM Identity Center. Es kann Ihnen helfen, eine Umgebung mit AWS mehreren Konten einzurichten und zu verwalten und dabei die vorgeschriebenen Best Practices zu befolgen.
Amazon DynamoDB ist ein vollständig verwalteter NoSQL-Datenbank-Service, der schnelle und planbare Leistung mit nahtloser Skalierbarkeit bereitstellt.
AWS Lambda ist ein Datenverarbeitungsservice, mit dem Sie Code ausführen können, ohne dass Sie Server bereitstellen oder verwalten müssen. Es führt Ihren Code nur bei Bedarf aus und skaliert automatisch, sodass Sie nur für die tatsächlich genutzte Rechenzeit zahlen.
AWS SDK für Python (Boto3)
ist ein Softwareentwicklungskit, mit dem Sie Ihre Python-Anwendung, -Bibliothek oder Ihr Skript integrieren können AWS-Services. AWS Service Cataloghilft Ihnen dabei, Kataloge von IT-Services, für AWS die eine Genehmigung erteilt wurde, zentral zu verwalten. Endbenutzer können schnell nur die jeweils benötigten genehmigten IT-Services bereitstellen, wobei die Einschränkungen Ihrer Organisation berücksichtigt werden.
AWS Step Functionsist ein serverloser Orchestrierungsservice, mit dem Sie AWS Lambda Funktionen und andere Funktionen kombinieren können, um geschäftskritische Anwendungen AWS-Services zu erstellen.
Amazon Virtual Private Cloud (Amazon VPC) hilft Ihnen dabei, AWS Ressourcen in einem von Ihnen definierten virtuellen Netzwerk bereitzustellen. Dieses virtuelle Netzwerk entspricht einem herkömmlichen Netzwerk, wie Sie es in Ihrem Rechenzentrum betreiben würden, mit den Vorteilen der Verwendung der skalierbaren Infrastruktur von AWS. Amazon VPC IP Address Manager (IPAM) ist eine VPC-Funktion, die es Ihnen erleichtert, IP-Adressen für Ihre Workloads zu planen, nachzuverfolgen und zu überwachen. AWS
Andere Tools
GitHub
ist eine Entwicklerplattform, mit der Entwickler ihren Code erstellen, speichern, verwalten und teilen können. HashiCorp Terraform
ist ein IaC-Tool (Infrastructure as Code), mit dem Sie Cloud- und lokale Ressourcen erstellen und verwalten können. Dazu gehören Komponenten auf niedriger Ebene wie Recheninstanzen, Speicher und Netzwerke sowie Komponenten auf hoher Ebene wie DNS-Einträge und Software-as-a-Service (SaaS) -Funktionen. Python
ist eine Allzweck-Computerprogrammiersprache. Sie können es verwenden, um Anwendungen zu erstellen, Aufgaben zu automatisieren und Dienste auf der zu entwickeln. AWS Cloud
Code-Repository
Der Code für dieses Muster ist im GitHub AWS Control Tower Account Factory for Terraform-Repository
verfügbar.
Best Practices
Wir empfehlen Ihnen, bei der Bereitstellung von AFT bewährte Methoden zu befolgen, um eine sichere, effiziente und erfolgreiche Implementierung zu gewährleisten. Zu den wichtigsten Richtlinien und Empfehlungen für die Implementierung und den Betrieb von AFT gehören:
Gründliche Überprüfung der Eingaben — Prüfen und verstehen Sie jede Eingabe
sorgfältig. Die korrekte Eingangskonfiguration ist entscheidend für die Einrichtung und den Betrieb von AFT. Regelmäßige Vorlagenaktualisierungen — Halten Sie die Vorlagen mit den neuesten AWS Funktionen und Terraform-Versionen auf dem neuesten Stand. Regelmäßige Updates helfen Ihnen dabei, neue Funktionen zu nutzen und die Sicherheit zu gewährleisten.
Versionierung — Geben Sie die Version Ihres AFT-Moduls an und verwenden Sie, wenn möglich, eine separate AFT-Bereitstellung zum Testen.
Umfang — Verwenden Sie AFT nur, um Infrastruktur-Leitplanken und Anpassungen bereitzustellen. Verwenden Sie es nicht, um Ihre Anwendung bereitzustellen.
Linting und Validierung — Die AFT-Pipeline erfordert eine verknüpfte und validierte Terraform-Konfiguration. Führen Sie Lint, Validation und Test aus, bevor Sie die Konfiguration in die AFT-Repositorys übertragen.
Terraform-Module — Erstellen Sie wiederverwendbaren Terraform-Code als Module und geben Sie immer die Terraform- und AWS Provider-Versionen an, die den Anforderungen Ihres Unternehmens entsprechen.
Epen
| Aufgabe | Description | Erforderliche Fähigkeiten |
|---|---|---|
Bereitstellen AWS Control Tower. | Richten Sie es AWS Control Tower in Ihrer AWS Umgebung ein und konfigurieren Sie es, um eine zentrale Verwaltung und Steuerung Ihrer zu gewährleisten AWS-Konten. Weitere Informationen finden Sie AWS Control Tower in der AWS Control Tower Dokumentation unter Erste Schritte mit. | Cloud-Administrator |
Stellen Sie AWS Control Tower Account Factory für Terraform (AFT) bereit. | Richten Sie AFT in einem neuen, dedizierten AFT-Verwaltungskonto ein. Weitere Informationen finden Sie in der Dokumentation unter Konfiguration und Start Ihrer AWS Control Tower Account Factory für Terraform. AWS Control Tower | Cloud-Administrator |
Schließen Sie AFT nach der Bereitstellung ab. | Wenn die Bereitstellung der AFT-Infrastruktur abgeschlossen ist, führen Sie die Schritte unter Schritte nach der Bereitstellung in der AWS Control Tower Dokumentation aus. | Cloud-Administrator |
| Aufgabe | Description | Erforderliche Fähigkeiten |
|---|---|---|
Delegieren Sie einen IPAM-Administrator. | Gehen Sie wie folgt vor, um ein IPAM-Administratorkonto in Ihrer AWS Organisation zu delegieren:
Alternativ können Sie den folgenden Befehl verwenden AWS CLI und ausführen:
Weitere Informationen finden Sie unter Integrieren von IPAM mit Konten in einer AWS Organisation in der Amazon VPC-Dokumentation und enable-ipam-organization-adminunter -account in der AWS CLI Befehlsreferenz. WichtigUm IPAM weiterhin verwenden zu können, müssen Sie sich mit dem delegierten Administratorkonto anmelden. Das im nächsten Schritt angegebene SSO-Profil oder die AWS Umgebungsvariablen müssen es Ihnen ermöglichen, sich bei diesem Konto anzumelden und Berechtigungen zum Erstellen eines IPAM-Pool der obersten Ebene und eines regionalen IPAM-Pool zu erteilen. | AWS-Administrator |
Erstellen Sie einen IPAM-Pool der obersten Ebene und einen regionalen IPAM-Pool. | Das GitHub Repository dieses Musters enthält eine Terraform-Vorlage, mit der Sie Ihren IPAM-Pool auf oberster Ebene und Ihren regionalen Pool erstellen können. Anschließend können Sie die Pools mithilfe von () für eine Organisation, eine Organisationseinheit (OU) oder eine andere Ressource freigeben. AWS-Konto AWS Resource Access Manager AWS RAM Gehen Sie dazu wie folgt vor:
Notieren Sie sich die Ressourcenpool-ID, die nach der Erstellung ausgegeben wird. Sie benötigen die ID, wenn Sie die Kontoanfrage einreichen. Wenn Sie die Ressourcenpool-ID vergessen haben, können Sie sie später von der abrufen AWS-Managementkonsole. WichtigStellen Sie sicher, dass sich die erstellten Pools CIDRs nicht mit anderen Pools in Ihrer Arbeitsregion überschneiden. Sie können einen Pool ohne CIDR erstellen, aber Sie können den Pool erst für Zuweisungen verwenden, wenn Sie ein CIDR dafür bereitgestellt haben. Sie können einem Pool jederzeit etwas hinzufügen CIDRs , indem Sie den Pool bearbeiten. | AWS-Administrator |
| Aufgabe | Description | Erforderliche Fähigkeiten |
|---|---|---|
Beginnen Sie mit der Erstellung der Kontoanpassung. | Führen Sie die folgenden Befehle von Ihrem Terminal aus aus, um mit der Anpassung eines neuen Kontos zu beginnen:
| DevOps Ingenieur |
| Fügen Sie der Gehen Sie dazu wie folgt vor:
| DevOps Ingenieur |
| Fügen Sie der Gehen Sie dazu wie folgt vor:
| DevOps Ingenieur |
| Erstellen Sie eine neue Gehen Sie dazu wie folgt vor:
| DevOps Ingenieur |
| Erstellen Sie eine Gehen Sie dazu wie folgt vor:
| DevOps Ingenieur |
| Erstellen Sie eine Gehen Sie dazu wie folgt vor:
| DevOps Ingenieur |
| Erstellen Sie eine neue Gehen Sie dazu wie folgt vor:
| DevOps Ingenieur |
Bestätigen Sie die Anpassung. | Führen Sie die folgenden Befehle aus, um die neue Anpassung in das Repository für Kontoanpassungen zu übernehmen:
| DevOps Ingenieur |
Wenden Sie die Anpassung an. | Fügen Sie der Gehen Sie dazu wie folgt vor:
| AWS DevOps |
Validieren Sie die Anpassung. | Melden Sie sich bei dem neu verkauften Konto an und vergewissern Sie sich, dass die Anpassung erfolgreich angewendet wurde. Gehen Sie dazu wie folgt vor:
| DevOps Ingenieur |
Fehlerbehebung
| Problem | Lösung |
|---|---|
Sie stoßen auf Fehler bei der Erstellung oder Verwaltung von Ressourcen, die auf unzureichende Berechtigungen zurückzuführen sind. | Überprüfen Sie die AWS Identity and Access Management (IAM-) Rollen und Richtlinien, die Step Functions und anderen an der Bereitstellung beteiligten Diensten zugeordnet sind. CodeBuild Vergewissern Sie sich, dass sie über die erforderlichen Berechtigungen verfügen. Wenn es Probleme mit den Berechtigungen gibt, passen Sie die IAM-Richtlinien an, um den erforderlichen Zugriff zu gewähren. |
Während der Bereitstellung erreichen Sie die AWS-Service Kontingente. | Bevor Sie die Pipeline bereitstellen, überprüfen Sie die AWS-Service Kontingente für Ressourcen wie Amazon Simple Storage Service (Amazon S3) -Buckets, IAM-Rollen und AWS Lambda Funktionen. Beantragen Sie bei Bedarf eine Erhöhung der Kontingente. Weitere Informationen finden Sie unter AWS-Service Quotas in der Allgemeinen AWS -Referenz. |
Zugehörige Ressourcen
AWS-Service Dokumentation
Sonstige Ressourcen