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 Resources Abschnitt, der mindestens eine Ressource deklarieren muss.

Sie können Vorlagen mit den folgenden Methoden erstellen:

  • AWS-Infrastruktur-Composer— Eine visuelle Oberfläche zum Entwerfen von Vorlagen.

  • Texteditor — Schreiben Sie Vorlagen direkt in JSON- oder YAML-Syntax.

  • IaC-Generator — Generieren Sie Vorlagen aus Ressourcen, die in Ihrem Konto bereitgestellt werden und derzeit nicht von verwaltet werden. CloudFormation Der IaC-Generator funktioniert mit einer Vielzahl 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 Erstellen von Stack-Vorlagen. Es werden folgende Themen behandelt:

Wo Vorlagen gespeichert werden

Amazon-S3-Bucket

Sie können CloudFormation Vorlagen in einem Amazon S3 S3-Bucket speichern. Beim Erstellen oder Aktualisieren eines Stacks können Sie die S3-URL der Vorlage angeben, anstatt sie direkt hochzuladen.

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

Git-Repository

Mit Git Sync kö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 angegebenen Branch automatisch auf Vorlagenänderungen. Weitere Informationen finden Sie unter Erstellen Sie mit Git Sync einen Stack aus dem Repository-Quellcode.

Vorlagen werden validiert

Überprüfung der Syntax

Sie können die JSON- oder YAML-Syntax Ihrer Vorlage überprüfen, indem Sie den validate-templateCLI-Befehl verwenden oder Ihre Vorlage auf der Konsole angeben. Die Konsole führt die Validierung automatisch durch. Weitere Informationen finden Sie unter Einen Stack von der CloudFormation Konsole aus erstellen.

Diese Methoden überprüfen jedoch nur die Syntax Ihrer Vorlage und nicht die Eigenschaftswerte, die Sie für eine Ressource angegeben haben.

Zusätzliche Validierungstools

Für komplexere Validierungen und Best-Practice-Prüfungen können Sie zusätzliche Tools verwenden, z. B.:

Erste Schritte mit Vorlagen

Gehen Sie wie folgt 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, z. B. EC2 Instanzen 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,.yaml, oder.txt.

  4. Vorlage validieren — Validieren Sie die Vorlage mit den im Vorlagen werden validiert Abschnitt beschriebenen Methoden.

  5. Stapel erstellen — Erstellen Sie einen Stack mit der validierten Vorlage.

Planen Sie, die CloudFormation Vorlagenreferenz zu verwenden

Während Sie Ihre Vorlagen schreiben, finden Sie in der Referenz zu Ressourcen- und Eigenschaftstypen eine Dokumentation zur detaillierten Syntax für verschiedene AWS Ressourcentypen.

Oft benötigen Ihre Stack-Vorlagen systeminterne Funktionen, um Eigenschaftswerte zuzuweisen, die erst zur Laufzeit verfügbar sind, und spezielle Attribute, um das Verhalten von Ressourcen zu steuern. Wenn Sie Ihre Vorlage schreiben, sollten Sie sich an den folgenden Ressourcen orientieren:

  • Referenz zu systeminternen Funktionen — Zu den häufig verwendeten systeminternen Funktionen gehören:

    • 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 Zeichenfolge.

  • Referenz zu Ressourcenattributen — Zu den häufig verwendeten Spezialattributen gehören:

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

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

Mustervorlagen

CloudFormation stellt Open-Source-Stack-Vorlagen bereit, die Sie für den Einstieg verwenden können. Weitere Informationen finden Sie unter AWS CloudFormation Beispielvorlagen auf der GitHub Website.

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

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