

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.

# CloudFormation Vorlagenformat
<a name="template-formats"></a>

Sie können CloudFormation Vorlagen in den Formaten JSON oder YAML erstellen. Beide Formate dienen dem gleichen Zweck, bieten aber deutliche Vorteile in Bezug auf Lesbarkeit und Komplexität.
+ **JSON**- JSON ist ein leichtgewichtiges Datenaustauschformat, das von Maschinen leicht geparst und generiert werden kann. Allerdings kann es für Menschen mühsam werden, sie zu lesen und zu schreiben, insbesondere bei komplexen Konfigurationen. In JSON wird die Vorlage durch verschachtelte geschweifte Klammern `{}` und Klammern `[]` strukturiert, um Ressourcen, Parameter und andere Komponenten zu definieren. Ihre Syntax erfordert die explizite Deklaration jedes Elements, was die Vorlage zwar langatmig machen kann, aber die strikte Einhaltung eines strukturierten Formats gewährleistet. 
+ **YAML**- YAML ist besser lesbar und weniger ausführlich als JSON. Es verwendet Einrückungen anstelle von geschweiften Klammern und Klammern, um Verschachtelungen zu kennzeichnen, was die Hierarchie der Ressourcen und Parameter leichter sichtbar macht. YAML wird oft wegen seiner Klarheit und Benutzerfreundlichkeit bevorzugt, insbesondere wenn es um komplexere Vorlagen geht. Da sich YAML jedoch auf die Einrückung verlässt, kann es zu Fehlern kommen, wenn die Abstände nicht konsistent sind, was sorgfältige Aufmerksamkeit erfordert, um die Genauigkeit zu wahren.

## Struktur der Vorlage
<a name="template-structure"></a>

CloudFormation Vorlagen sind in verschiedene Abschnitte unterteilt, und jeder Abschnitt ist so konzipiert, dass er eine bestimmte Art von Informationen enthält. Einige Abschnitte müssen in einer bestimmten Reihenfolge angegeben werden, bei anderen spielt die Reihenfolge keine Rolle. Bei der Erstellung Ihrer Vorlage kann es jedoch hilfreich sein, die in den folgenden Beispielen gezeigte logische Reihenfolge zu verwenden, da sich die Werte in einem Abschnitt auf Werte aus einem früheren Abschnitt beziehen können. 

Verwenden Sie beim Erstellen von Vorlagen keine doppelten Hauptabschnitte, wie beispielsweise den Abschnitt `Resources` . Sie akzeptiert CloudFormation zwar die Vorlage, verhält sich aber bei der Verarbeitung der Vorlage undefiniert und stellt möglicherweise Ressourcen falsch bereit oder gibt unerklärliche Fehler zurück.

### JSON
<a name="template-structure.json"></a>

Das folgende Beispiel zeigt die Struktur einer JSON-formatierten Vorlage mit allen verfügbaren Abschnitten.

```
{
  "AWSTemplateFormatVersion" : "version date",

  "Description" : "JSON string",

  "Metadata" : {
    template metadata
  },

  "Parameters" : {
    set of parameters
  },
  
  "Rules" : {
    set of rules
  },

  "Mappings" : {
    set of mappings
  },

  "Conditions" : {
    set of conditions
  },

  "Transform" : {
    set of transforms
  },

  "Resources" : {
    set of resources
  },
  
  "Outputs" : {
    set of outputs
  }
}
```

### YAML
<a name="template-structure.yaml"></a>

Das folgende Beispiel zeigt die Struktur einer YAML-formatierten Vorlage mit allen verfügbaren Abschnitten.

```
---
AWSTemplateFormatVersion: version date

Description:
  String

Metadata:
  template metadata

Parameters:
  set of parameters

Rules:
  set of rules

Mappings:
  set of mappings

Conditions:
  set of conditions

Transform:
  set of transforms

Resources:
  set of resources

Outputs:
  set of outputs
```

## Kommentare
<a name="template-comments"></a>

In JSON-formatierten Vorlagen werden Kommentare nicht unterstützt. JSON enthält von Haus aus keine Syntax für Kommentare, also Sie können keine Kommentare direkt in die JSON-Struktur einfügen. Wenn Sie jedoch Erklärungen oder Dokumentationen einfügen müssen, können Sie Metadaten hinzufügen. Weitere Informationen finden Sie unter [Metadata-Attribut](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-attribute-metadata.html).

In YAML-formatierte Vorlagen können Sie Inline-Kommentare einfügen, indem Sie das Symbol `#` verwenden.

Das folgende Beispiel zeigt eine YAML-Vorlage mit eingebundenen Kommentaren.

```
AWSTemplateFormatVersion: 2010-09-09
Description: A sample CloudFormation template with YAML comments.
# Resources section
Resources:
  MyEC2Instance: 
    Type: AWS::EC2::Instance
    Properties: 
      # Linux AMI
      ImageId: ami-1234567890abcdef0 
      InstanceType: t2.micro
      KeyName: MyKey
      BlockDeviceMappings:
        - DeviceName: /dev/sdm
          Ebs:
            VolumeType: io1
            Iops: 200
            DeleteOnTermination: false
            VolumeSize: 20
```

## Technische Daten
<a name="template-formats.supported-specifications"></a>

CloudFormation unterstützt die folgenden JSON- und YAML-Spezifikationen:

JSON  
CloudFormation folgt dem ECMA-404 JSON-Standard. Weitere Informationen zum JSON-Format finden Sie unter [http://www.json.org](http://www.json.org).

YAML  
CloudFormation unterstützt die YAML-Spezifikation Version 1.1 mit wenigen Ausnahmen. CloudFormation unterstützt die folgenden Funktionen nicht:  
+ Die Tags `binary``omap`, `pairs`, `set` und `timestamp`
+ Aliase
+ Hash-Zusammenführungen
Weitere Informationen zu YAML finden Sie unter [https://yaml.org/](https://yaml.org/).

## Weitere Informationen
<a name="template-formats.learnmore"></a>

Für jede Ressource, die Sie in Ihrer Vorlage angeben, definieren Sie deren Eigenschaften und Werte anhand der spezifischen Syntaxregeln von JSON oder YAML. Weitere Informationen zur Vorlagensyntax der einzelnen Formate finden Sie unter [CloudFormation Vorlagenabschnitte](template-anatomy.md).