View a markdown version of this page

Mit CloudFormation Vorlagen arbeiten - AWS CloudFormation

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.

Mit CloudFormation Vorlagen arbeiten

Eine AWS CloudFormation Vorlage definiert die AWS Ressourcen, die Sie als Teil eines Stacks erstellen, aktualisieren oder löschen möchten. Sie besteht aus mehreren Abschnitten, aber der einzige erforderliche Abschnitt ist der Abschnitt Resources, in dem mindestens eine Ressource deklariert werden muss.

Sie können Vorlagen mit den folgenden Methoden erstellen:

  • AWS Infrastructure Composer- Eine visuelle Schnittstelle für die Gestaltung von Vorlagen.

  • Text Editor- Schreiben Sie Vorlagen direkt in JSON- oder YAML-Syntax.

  • IaC-Generator — Generieren Sie Vorlagen aus Ressourcen, die in Ihrem Konto bereitgestellt wurden und derzeit nicht von verwaltet werden. CloudFormation Der IaC-Generator arbeitet mit einer breiten Palette von Ressourcentypen, die von der Cloud Control API in Ihrer Region unterstützt werden.

Dieser Abschnitt enthält eine umfassende Anleitung zur Verwendung der verschiedenen Abschnitte einer CloudFormation Vorlage und zum Beginn der Erstellung von Stack-Vorlagen. Es werden folgende Themen behandelt:

Wo Vorlagen gespeichert werden

Amazon-S3-Bucket

Sie können CloudFormation Vorlagen in einem Amazon S3-Bucket speichern. Wenn Sie einen Stapel erstellen oder aktualisieren, können Sie die S3-URL der Vorlage angeben, anstatt sie direkt hochzuladen.

Wenn Sie Vorlagen direkt über das AWS-Managementkonsole oder hochladen AWS CLI, wird automatisch ein S3-Bucket für Sie erstellt. Weitere Informationen finden Sie unter Einen Stapel von der CloudFormation Konsole aus erstellen.

Git-Repository

Mit Git synckönnen Sie Vorlagen in einem Git-Repository speichern. Wenn Sie einen Stack erstellen oder aktualisieren, können Sie den Speicherort und den Branch des Git-Repositorys angeben, der die Vorlage enthält, anstatt sie direkt hochzuladen oder auf eine S3-URL zu verweisen. CloudFormation überwacht das angegebene Repository und den Branch automatisch auf Vorlagenänderungen. Weitere Informationen finden Sie unter Erstellen Sie einen Stack aus dem Repository-Quellcode mit Git-Synchronisierung.

Vorlagen validieren

Überprüfen Sie Ihre Vorlagen vor der Bereitstellung, damit Sie Probleme früher finden und beheben können. Der CloudFormation Service und die Tools in diesem Abschnitt überprüfen verschiedene Teile einer Vorlage. Sie können sie zusammen verwenden.

Sie können mit dem validate-template CLI-Befehl überprüfen, ob eine Vorlage gültiges JSON oder YAML verwendet, oder indem Sie Ihre Vorlage in der AWS-Managementkonsole angeben. Die Konsole führt diese Prüfung automatisch durch. Bei diesen serviceseitigen Prüfungen werden die zusätzlichen Eigenschafts-, Sicherheits- oder Best-Practice-Prüfungen, die von den folgenden Tools bereitgestellt werden, nicht ausgeführt:

  • CloudFormation Sprachserver— Holen Sie sich Vorschläge, Dokumentation und Feedback zur Validierung, während Sie Vorlagen in einem Editor schreiben.

  • CloudFormation Linter— Prüfen Sie Ressourceneigenschaften, zulässige Werte und häufig auftretende Probleme von der Befehlszeile, einem Editor oder einem automatisierten Build aus.

  • CloudFormation Validieren— Führen Sie lokale Offline-Prüfungen von der Befehlszeile oder einer Bibliothek aus und fügen Sie benutzerdefinierte Rego- oder Guard-Regeln hinzu. AWS CDK verwendet diesen Validator automatisch, nachdem er Ihre Vorlagen synthetisiert hat.

  • CloudFormation Guard— Schreiben Sie Richtlinienregeln und überprüfen Sie die Vorlagen anhand der Sicherheits-, Compliance- und Governance-Anforderungen Ihres Unternehmens.

Zur Verwendung mit KI-Codierungsagenten

KI-Codierungsagenten können Ihnen helfen, CloudFormation Vorlagen zu erstellen, zu validieren und Fehler zu beheben, indem sie aws-cloudformation beispielsweise die Fähigkeiten aus dem Agenten-Toolkit verwenden. AWS GitHub Installationsanweisungen finden Sie unter Anleitung zur Einrichtung des Agenten.

Verstehen Sie den Umfang der Validierung

Lokale Tools überprüfen die Vorlage und die Regeln, die Sie ihnen geben. Sie können nicht garantieren, dass die Bereitstellung mit den aktuellen Ressourcen, Berechtigungen und Kontingenten auf einmal erfolgreich ist AWS-Konto AWS-Region. Überprüfen Sie vor der Bereitstellung einen Änderungssatz und beheben Sie alle vom CloudFormation Dienst gemeldeten Probleme.

Erste Schritte mit Vorlagen

Gehen Sie folgendermaßen vor, um mit der Erstellung einer CloudFormation Vorlage zu beginnen:

  1. Ressourcen auswählen — Identifizieren Sie die AWS Ressourcen, die Sie in Ihren Stack aufnehmen möchten, wie EC2-Instances, VPCs, Sicherheitsgruppen und mehr.

  2. Schreiben Sie die Vorlage- Schreiben Sie die Vorlage im JSON- oder YAML-Format und definieren Sie die Ressourcen und ihre Eigenschaften.

  3. Speichern Sie die Vorlage- Speichern Sie die Vorlage lokal mit einer Dateierweiterung wie,.json .yamloder .txt.

  4. Validieren Sie die Vorlage- Validieren Sie die Vorlage mit den im Abschnitt Vorlagen validieren beschriebenen Methoden.

  5. Einen Stack erstellen- Erstellen Sie einen Stack unter Verwendung der validierten Vorlage.

Planen Sie, die Vorlagenreferenz zu verwenden CloudFormation

Wenn Sie Ihre Vorlagen schreiben, finden Sie die Dokumentation für die detaillierte Syntax für die verschiedenen Ressourcentypen in der AWS Ressourcen- und Eigenschaftstypen-Referenz.

Häufig benötigen Ihre Stack-Vorlagen intrinsische Funktionen, um Eigenschaftswerte zuzuweisen, die erst zur Laufzeit verfügbar sind, sowie spezielle Attribute, um das Verhalten von Ressourcen zu steuern. Wenn Sie Ihre Vorlage schreiben, können Sie sich an den folgenden Ressourcen orientieren:

  • Referenz auf eine intrinsische Funktion- Einige häufig verwendete intrinsische Funktionen sind:

    • Ref- Ruft den Wert eines Parameters oder die physische ID einer Ressource ab.

    • Sub- Ersetzt Platzhalter in Zeichenketten durch tatsächliche Werte.

    • GetAtt- Gibt den Wert eines Attributs aus einer Ressource in der Vorlage zurück.

    • Join- Verbindet eine Reihe von Werten zu einer einzigen Zeichenkette.

  • Ressourcenattribut-Referenz- Einige häufig verwendete spezielle Attribute sind:

    • DependsOn- Verwenden Sie dieses Attribut, um anzugeben, dass eine Ressource nach einer anderen erstellt werden muss.

    • DeletionPolicy— Verwenden Sie dieses Attribut, um anzugeben, wie mit dem Löschen einer Ressource umgegangen werden CloudFormation soll.

Mustervorlagen

CloudFormation bietet Open-Source-Stack-Vorlagen, die Sie für den Einstieg verwenden können. Weitere Informationen finden Sie unter CloudFormation Beispielvorlagen unter GitHub.

Beachten Sie, dass diese Vorlagen nicht für die Produktion geeignet sind. Sie sollten sich die Zeit nehmen, um zu lernen, wie sie funktionieren, sie an Ihre Bedürfnisse anzupassen und sicherzustellen, dass sie den Compliance-Standards Ihres Unternehmens entsprechen.

Jede Vorlage in diesem Repository besteht CloudFormation Linter-Prüfungen (cfn-lint) und außerdem einen grundlegenden Satz von AWS CloudFormation Guard Regeln, die auf den Center for Internet Security (CIS) Top 20 basieren, mit Ausnahmen für einige Regeln, bei denen es sinnvoll war, das Beispiel auf einen einzigen Anwendungsfall zu konzentrieren.