

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.

# Erste Schritte mit CloudFormation
<a name="GettingStarted"></a>

Sie können mit der Nutzung des beginnen, AWS-Managementkonsole indem Sie CloudFormation anhand einer Beispielvorlage einen Stack erstellen, der Ihnen hilft, die Grundlagen der Stack-Erstellung zu erlernen. Eine-*Vorlage* ist eine Textdatei, die alle Ressourcen innerhalb eines Stacks definiert. Ein *Stack* ist die Bereitstellung einer CloudFormation Vorlage. Aus einer einzigen Vorlage können Sie mehrere Stapel erstellen. Jeder Stapel enthält eine Sammlung von AWS Ressourcen, die als eine Einheit verwaltet werden können.

CloudFormation ist ein kostenloser Service. Die AWS Ressourcen, die Sie in Ihren Stacks aufnehmen, werden Ihnen jedoch zu den jeweils aktuellen Preisen in Rechnung gestellt. Weitere Informationen zur AWS Preisgestaltung finden Sie auf der Detailseite der einzelnen Produkte unter [http://aws.amazon.com](https://aws.amazon.com/).

**Video: Erste Schritte mit CloudFormation**  
Das folgende Video ist eine Einführung in das Erstellen von CloudFormation Stacks aus dem AWS-Managementkonsole.

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/1h-GPXQrLZw?si=MYHlJvBkE3DspKcL/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/1h-GPXQrLZw?si=MYHlJvBkE3DspKcL)


**Topics**
+ [Wie CloudFormation funktioniert](cloudformation-overview.md)
+ [Melden Sie sich an für ein AWS-Konto](cfn-sign-up-for-aws.md)
+ [Erstellen Sie Ihren ersten Stapel](gettingstarted.walkthrough.md)

# Wie CloudFormation funktioniert
<a name="cloudformation-overview"></a>

In diesem Thema wird beschrieben, wie es CloudFormation funktioniert, und es werden die wichtigsten Konzepte vorgestellt, die Sie bei der Verwendung kennen sollten.

**Topics**
+ [Die wichtigsten Konzepte](#cfn-whatis-concepts)
+ [Wie CloudFormation funktioniert](#cfn-whatis-howdoesitwork)
+ [Möglichkeiten für den Einstieg CloudFormation](#ways-to-get-started)

## Die wichtigsten Konzepte
<a name="cfn-whatis-concepts"></a>

Bei der Verwendung CloudFormation arbeiten Sie mit *Vorlagen* und *Stacks*. Sie erstellen Vorlagen, um Ihre AWS Ressourcen und ihre Eigenschaften zu beschreiben. Jedes Mal, wenn Sie einen Stapel erstellen CloudFormation , werden die Ressourcen bereitgestellt, die in Ihrer Vorlage beschrieben sind.

**Topics**
+ [-Vorlagen](#cfn-concepts-templates)
+ [Stacks](#cfn-concepts-stacks)
+ [Änderungssätze](#cfn-concepts-change-sets)

### -Vorlagen
<a name="cfn-concepts-templates"></a>

Eine CloudFormation Vorlage ist eine Textdatei im YAML- oder JSON-Format. Sie können diese Dateien mit einer beliebigen Erweiterung speichern, z. B.`.yaml`, `.json``.template`, oder. `.txt` CloudFormation verwendet diese Vorlagen als Vorlagen für den Aufbau Ihrer AWS Ressourcen. In einer Vorlage können Sie beispielsweise eine Amazon EC2-Instance erstellen, z. B. den Instance-Typ, die AMI-ID, die Blockgerät-Zuweisungen und den Namen des Amazon EC2-Schlüsselpaars. Jedes Mal, wenn Sie einen Stack erstellen, geben Sie auch eine Vorlage an, die CloudFormation verwendet, um das zu erstellen, was Sie in der Vorlage beschrieben haben.

Wenn Sie beispielsweise einen Stack mit der folgenden Vorlage erstellt haben, CloudFormation wird eine Instance mit einer `ami-0ff8a91507f77f867` AMI-ID, einem `t2.micro` Instance-Typ, einem `testkey` Schlüsselpaarnamen und einem Amazon EBS-Volume bereitgestellt.

#### YAML
<a name="t2-micro-example.yaml"></a>

```
AWSTemplateFormatVersion: 2010-09-09
Description: A sample template
Resources:
  MyEC2Instance:
    Type: AWS::EC2::Instance
    Properties:
      ImageId: ami-0ff8a91507f77f867
      InstanceType: t2.micro
      KeyName: testkey
      BlockDeviceMappings:
        - DeviceName: /dev/sdm
          Ebs:
            VolumeType: io1
            Iops: 200
            DeleteOnTermination: false
            VolumeSize: 20
```

#### JSON
<a name="t2-micro-example.json"></a>

```
{
    "AWSTemplateFormatVersion": "2010-09-09",
    "Description": "A sample template",
    "Resources": {
        "MyEC2Instance": {
            "Type": "AWS::EC2::Instance",
            "Properties": {
                "ImageId": "ami-0ff8a91507f77f867",
                "InstanceType": "t2.micro",
                "KeyName": "testkey",
                "BlockDeviceMappings": [
                    {
                        "DeviceName": "/dev/sdm",
                        "Ebs": {
                            "VolumeType": "io1",
                            "Iops": 200,
                            "DeleteOnTermination": false,
                            "VolumeSize": 20
                        }
                    }
                ]
            }
        }
    }
}
```

Sie können auch mehrere Ressourcen in einer einzigen Vorlage angeben und diese Ressourcen so konfigurieren, dass sie zusammenarbeiten. Sie können beispielsweise die vorherige Vorlage so ändern, dass sie eine Elastic IP-Adresse (EIP) enthält und diese der Amazon-EC2-Instance zuordnen, wie im folgenden Beispiel dargestellt:

#### YAML
<a name="multiple-resources-single-template.yaml"></a>

```
AWSTemplateFormatVersion: 2010-09-09
Description: A sample template
Resources:
  MyEC2Instance:
    Type: AWS::EC2::Instance
    Properties:
      ImageId: ami-0ff8a91507f77f867
      InstanceType: t2.micro
      KeyName: testkey
      BlockDeviceMappings:
        - DeviceName: /dev/sdm
          Ebs:
            VolumeType: io1
            Iops: 200
            DeleteOnTermination: false
            VolumeSize: 20
  MyEIP:
    Type: AWS::EC2::EIP
    Properties:
      InstanceId: !Ref MyEC2Instance
```

#### JSON
<a name="multiple-resources-single-template.json"></a>

```
{
    "AWSTemplateFormatVersion": "2010-09-09",
    "Description": "A sample template",
    "Resources": {
        "MyEC2Instance": {
            "Type": "AWS::EC2::Instance",
            "Properties": {
                "ImageId": "ami-0ff8a91507f77f867",
                "InstanceType": "t2.micro",
                "KeyName": "testkey",
                "BlockDeviceMappings": [
                    {
                        "DeviceName": "/dev/sdm",
                        "Ebs": {
                            "VolumeType": "io1",
                            "Iops": 200,
                            "DeleteOnTermination": false,
                            "VolumeSize": 20
                        }
                    }
                ]
            }
        },
        "MyEIP": {
            "Type": "AWS::EC2::EIP",
            "Properties": {
                "InstanceId": {
                    "Ref": "MyEC2Instance"
                }
            }
        }
    }
}
```

Die vorherigen Vorlagen konzentrieren sich auf eine einzelne Amazon EC2 EC2-Instance. CloudFormation Vorlagen verfügen jedoch über zusätzliche Funktionen, mit denen Sie komplexe Ressourcensätze erstellen und diese Vorlagen in mehreren Kontexten wiederverwenden können. Sie können beispielsweise Eingabeparameter hinzufügen, deren Werte bei der Erstellung eines CloudFormation Stacks angegeben werden. Mit anderen Worten: Sie können einen Wert wie den Instance-Typ beim Erstellen eines Stacks und nicht beim Erstellen der Vorlage angeben, sodass die Vorlage in anderen Situationen einfacher wiederverwendet werden kann.

### Stacks
<a name="cfn-concepts-stacks"></a>

Wenn Sie verwenden CloudFormation, verwalten Sie zugehörige Ressourcen als eine einzige Einheit, die als Stapel bezeichnet wird. Sie können eine Sammlung von Ressourcen durch Erstellen, Aktualisieren und Löschen von Stacks erstellen und löschen. Alle Ressourcen in einem Stapel werden durch die CloudFormation Vorlage des Stacks definiert. Angenommen, Sie erstellen eine Vorlage, die eine Auto-Scaling-Gruppe, einen Elastic Load Balancing Load Balancer und eine Amazon Relational Database Service (Amazon RDS)-Datenbank-Instance enthält. Um diese Ressourcen zu erstellen, erstellen Sie einen Stapel, indem Sie die von Ihnen erstellte Vorlage einreichen CloudFormation und all diese Ressourcen für Sie bereitstellen.

### Änderungssätze
<a name="cfn-concepts-change-sets"></a>

Wenn Sie Änderungen an den ausgeführten Ressourcen in einem Stack vornehmen müssen, aktualisieren Sie den Stack. Bevor Sie Änderungen an Ihren Ressourcen vornehmen, können Sie einen Änderungssatz generieren, eine Zusammenfassung der von Ihnen vorgeschlagenen Änderungen. Anhand von Änderungssätzen können Sie sehen, wie sich Ihre Änderungen möglicherweise auf die ausgeführten Ressourcen auswirken, bevor Sie sie implementieren, insbesondere bei kritischen Ressourcen.

Wenn Sie beispielsweise den Namen einer Amazon RDS-Datenbank-Instance ändern, CloudFormation wird eine neue Datenbank erstellt und die alte gelöscht. Sofern Sie die Daten in der alten Datenbank nicht gesichert haben, gehen diese verloren. Wenn Sie einen Änderungssatz generieren, sehen Sie, dass die Änderung dazu führt, dass die Datenbank ersetzt wird. So können Sie entsprechend planen, bevor Sie den Stack aktualisieren. 

## Wie CloudFormation funktioniert
<a name="cfn-whatis-howdoesitwork"></a>

Wenn Sie CloudFormation Ihren Stack erstellen, CloudFormation ruft die zugrunde liegenden Dienste auf, AWS um die in Ihrer Vorlage beschriebenen Ressourcen bereitzustellen und zu konfigurieren. Sie benötigen eine Genehmigung, um diese Ressourcen zu erstellen. Um beispielsweise EC2-Instances mithilfe von zu erstellen CloudFormation, benötigen Sie Berechtigungen zum Erstellen von Instanzen. Sie verwalten diese Berechtigungen mit [AWS Identity and Access Management](https://docs.aws.amazon.com/IAM/latest/UserGuide/) (IAM).

Die Aufrufe, die getätigt CloudFormation werden, werden alle von Ihrer Vorlage deklariert. Angenommen Sie haben zum Beispiel eine Vorlage, die eine EC2-Instance mit einem `t2.micro` Instance-Typ beschreibt. Wenn Sie diese Vorlage verwenden, um einen Stack zu erstellen, CloudFormation ruft sie die Amazon EC2 Create Instance API auf und gibt den Instance-Typ als `t2.micro` an. Das folgende Diagramm bietet eine Übersicht über die CloudFormation -Workflows für die Erstellung von Stacks.

![\[Eine erstellte oder vorhandene Vorlage, die lokal oder in einem Bucket gespeichert ist und zur Erstellung eines Stacks verwendet wird.\]](http://docs.aws.amazon.com/de_de/AWSCloudFormation/latest/UserGuide/images/create-stack-diagram.png)


**So erstellen Sie einen -Stack**

1. Verwenden Sie einen Texteditor, um eine CloudFormation Vorlage im YAML- oder JSON-Format zu erstellen. Die CloudFormation-Vorlage beschreibt die Ressourcen, die sie möchten und deren Einstellungen. Verwenden Sie [Infrastructure Composer](infrastructure-composer-for-cloudformation.md), um Ihre Vorlage zu visualisieren und zu validieren. So können Sie sicherstellen, dass Ihre Vorlage richtig strukturiert und frei von Syntaxfehlern ist. Weitere Informationen finden Sie unter [Mit CloudFormation Vorlagen arbeiten](template-guide.md).

1. Speichern Sie die Vorlage lokal oder in einem Amazon S3-Bucket.

1. Erstellen Sie einen CloudFormation Stapel, indem Sie den Speicherort Ihrer Vorlagendatei angeben, z. B. einen Pfad auf Ihrem lokalen Computer oder eine Amazon S3 S3-URL. Wenn die Vorlage Parameter enthält, können Sie beim Erstellen des Stacks Eingabewerte angeben. Parameter ermöglichen Ihnen Werte in Ihre Vorlage zu übergeben, sodass Sie Ihre Ressourcen jedes Mal anpassen können, wenn Sie einen Stack erstellen.
**Anmerkung**  
Wenn Sie eine lokal gespeicherte Vorlagendatei angeben, CloudFormation lädt sie in einen S3-Bucket in Ihrem AWS Konto hoch. CloudFormation erstellt einen Bucket für jede Region, in die Sie eine Vorlagendatei hochladen. Auf die Buckets kann jeder zugreifen, der über Amazon Simple Storage Service (Amazon S3) -Berechtigungen in Ihrem AWS Konto verfügt. Wenn ein von erstellter Bucket bereits vorhanden CloudFormation ist, wird die Vorlage diesem Bucket hinzugefügt.  
Sie können Ihren eigenen Bucket verwenden und dessen Berechtigungen durch manuelles Hochladen von Vorlagen in Amazon S3 verwalten. Anschließend geben Sie immer, wenn Sie einen Stack erstellen oder aktualisieren, die Amazon S3-URL einer Vorlagendatei an.

Nachdem alle Ressourcen erstellt wurden, CloudFormation meldet es, dass Ihr Stack erstellt wurde. Sie können dann die Ressourcen in Ihrem Stack verwenden. Wenn das Erstellen des Stacks misslingt, setzt CloudFormation Ihre Änderungen durch Löschen der Ressourcen, die es erstellt hat, zurück.

### Aktualisieren eines Stapels mit einem Änderungssatz
<a name="updating-stack-with-change-sets"></a>

Wenn Sie die Ressourcen in Ihrem Stack aktualisieren müssen, können Sie die Stack-Vorlage ändern. Sie müssen keinen neuen Stack erstellen und den alten löschen. Um einen Stack zu aktualisieren, erstellen Sie einen Änderungssatz, indem Sie eine modifizierte Version der ursprünglichen Stack-Vorlage, andere Eingabeparameterwerte oder beides einreichen. CloudFormation vergleicht die geänderte Vorlage mit der Originalvorlage und generiert einen Änderungssatz. Der Änderungssatz listet die vorgeschlagenen Änderungen auf. Nach dem Überprüfen der Änderungen können Sie den Änderungssatz starten um Ihren Stack zu aktualisieren oder Sie können einen neuen Änderungssatz erstellen. Das folgende Diagramm bietet eine Übersicht über den Workflow für die Aktualisierung eines Stacks.

![\[Eine Vorlage, die ein Änderungsset verwendet, um den geänderten Wert anzuzeigen, bevor das Änderungsset zur Aktualisierung des Stapels ausgeführt wird.\]](http://docs.aws.amazon.com/de_de/AWSCloudFormation/latest/UserGuide/images/update-stack-diagram.png)


**So aktualisieren Sie einen Stapel mit einem Änderungssatz**

1. Sie können eine CloudFormation Stapelvorlage mithilfe [Infrastructure Composer](infrastructure-composer-for-cloudformation.md) eines Texteditors ändern. Weitere Informationen finden Sie unter [Aktualisieren Sie Ihre Stapelvorlage](using-cfn-updating-stacks-get-template.md).

   Wenn Sie Ihre Vorlage aktualisieren, denken Sie daran, dass Aktualisierungen zu Unterbrechungen führen können. Abhängig von der Ressource und den Eigenschaften, die Sie aktualisieren, kann eine Aktualisierung unterbrechen oder sogar eine vorhandene Ressource ersetzen. Weitere Informationen finden Sie unter [Verstehen des Aktualisierungsverhaltens von Stack-Ressourcen](using-cfn-updating-stacks-update-behaviors.md).

1. Speichern Sie die CloudFormation Vorlage lokal oder in einem S3-Bucket.

1. Erstellen Sie einen Änderungssatz, indem Sie den Stack, den Sie aktualisieren möchten angeben und den Ort der geänderten Vorlage wie z.B. ein Pfad auf Ihrem lokalen Computer oder einem Amazon S3-URL. Weitere Informationen zum Erstellen von Änderungssätzen finden Sie unter [CloudFormation Stapel mithilfe von Änderungssätzen aktualisieren](using-cfn-updating-stacks-changesets.md).
**Anmerkung**  
Wenn Sie eine Vorlage angeben, die auf Ihrem lokalen Computer gespeichert ist, CloudFormation wird Ihre Vorlage automatisch in einen S3-Bucket in Ihrem AWS-Konto.

1. Sehen Sie sich den Änderungssatz an, um zu überprüfen, CloudFormation ob er die erwarteten Änderungen vornimmt. Prüfen Sie beispielsweise, ob kritische Stack-Ressourcen ersetzt CloudFormation werden. Sie können so viele Änderungssätze erstellen wie sie benötigen, bis Sie die gewünschten Änderungen eingebunden haben.
**Wichtig**  
Änderungssätze geben nicht an, ob Ihr Stack erfolgreich aktualisiert wird. Ein Änderungssatz prüft zum Beispiel nicht, ob Sie ein Konto [Kontingent](cloudformation-limits.md)überschreiten, ob Sie eine Ressource aktualisieren, die keine Aktualisierungen unterstützt, oder ob Sie nicht über ausreichende [Berechtigungen](control-access-with-iam.md) zum Ändern einer Ressource verfügen, was dazu führen kann, dass eine Stapelaktualisierung fehlschlägt.

1. Initiieren Sie den Änderungssatz, den Sie auf Ihren Stack anwenden möchten. CloudFormation aktualisiert Ihren Stack, indem es nur die Ressourcen aktualisiert, die Sie geändert haben, und signalisiert, dass Ihr Stack erfolgreich aktualisiert wurde. Wenn die Aktualisierung des Stacks CloudFormation fehlschlägt, werden die Änderungen rückgängig gemacht, um den Stack auf den letzten bekannten Betriebszustand zurückzusetzen.

## Möglichkeiten für den Einstieg CloudFormation
<a name="ways-to-get-started"></a>

Informationen zum Erstellen eines Hello CloudFormation World-Stacks mit der Konsole finden Sie unter[Erstellen Sie Ihren ersten Stapel](gettingstarted.walkthrough.md).

Wenn Sie eine Anleitung benötigen, sollten Sie den Workshop [Erste Schritte mit CloudFormation](https://catalog.us-east-1.prod.workshops.aws/workshops/df7f72cf-4f10-4664-acb6-b30dc8d4bcf0/en-US) besuchen, in dem Sie praktische Erfahrungen mit der Entwicklung von Vorlagen sammeln können.

# Melden Sie sich an für ein AWS-Konto
<a name="cfn-sign-up-for-aws"></a>

Wenn Sie sich für anmelden AWS, AWS-Konto ist Ihr automatisch für alle Dienste in angemeldet AWS, einschließlich CloudFormation. Wenn Sie AWS-Konto bereits einen haben, fahren Sie mit dem nächsten Thema fort. Wenn Sie noch keine haben AWS-Konto, gehen Sie wie folgt vor, um eine zu erstellen.

## Melden Sie sich für eine an AWS-Konto
<a name="sign-up-for-aws"></a>

Wenn Sie noch keine haben AWS-Konto, führen Sie die folgenden Schritte aus, um eine zu erstellen.

**Um sich für eine anzumelden AWS-Konto**

1. Öffnen Sie [https://portal.aws.amazon.com/billing/die Anmeldung.](https://portal.aws.amazon.com/billing/signup)

1. Folgen Sie den Online-Anweisungen.

   Während der Anmeldung erhalten Sie einen Telefonanruf oder eine Textnachricht und müssen einen Verifizierungscode über die Telefontasten eingeben.

   Wenn Sie sich für eine anmelden AWS-Konto, *Root-Benutzer des AWS-Kontos*wird eine erstellt. Der Root-Benutzer hat Zugriff auf alle AWS-Services und Ressourcen des Kontos. Als bewährte Sicherheitsmethode weisen Sie einem Benutzer Administratorzugriff zu und verwenden Sie nur den Root-Benutzer, um [Aufgaben auszuführen, die Root-Benutzerzugriff erfordern](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks).

AWS sendet Ihnen nach Abschluss des Anmeldevorgangs eine Bestätigungs-E-Mail. Du kannst jederzeit deine aktuellen Kontoaktivitäten einsehen und dein Konto verwalten, indem du zu [https://aws.amazon.com/](https://aws.amazon.com/)gehst und **Mein Konto** auswählst.

## Erstellen eines Benutzers mit Administratorzugriff
<a name="create-an-admin"></a>

Nachdem Sie sich für einen angemeldet haben AWS-Konto, sichern Sie Ihren Root-Benutzer des AWS-Kontos AWS IAM Identity Center, aktivieren und erstellen Sie einen Administratorbenutzer, sodass Sie den Root-Benutzer nicht für alltägliche Aufgaben verwenden.

**Sichern Sie Ihre Root-Benutzer des AWS-Kontos**

1.  Melden Sie sich [AWS-Managementkonsole](https://console.aws.amazon.com/)als Kontoinhaber an, indem Sie **Root-Benutzer** auswählen und Ihre AWS-Konto E-Mail-Adresse eingeben. Geben Sie auf der nächsten Seite Ihr Passwort ein.

   Hilfe bei der Anmeldung mit dem Root-Benutzer finden Sie unter [Anmelden als Root-Benutzer](https://docs.aws.amazon.com/signin/latest/userguide/console-sign-in-tutorials.html#introduction-to-root-user-sign-in-tutorial) im *AWS-Anmeldung -Benutzerhandbuch* zu.

1. Aktivieren Sie die Multi-Faktor-Authentifizierung (MFA) für den Root-Benutzer.

   Anweisungen finden Sie unter [Aktivieren eines virtuellen MFA-Geräts für Ihren AWS-Konto Root-Benutzer (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/enable-virt-mfa-for-root.html) im *IAM-Benutzerhandbuch*.

**Erstellen eines Benutzers mit Administratorzugriff**

1. Aktivieren Sie das IAM Identity Center.

   Anweisungen finden Sie unter [Aktivieren AWS IAM Identity Center](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-set-up-for-idc.html) im *AWS IAM Identity Center -Benutzerhandbuch*.

1. Gewähren Sie einem Administratorbenutzer im IAM Identity Center Benutzerzugriff.

   *Ein Tutorial zur Verwendung von IAM-Identity-Center-Verzeichnis als Identitätsquelle finden Sie IAM-Identity-Center-Verzeichnis im Benutzerhandbuch unter [Benutzerzugriff mit der Standardeinstellung konfigurieren](https://docs.aws.amazon.com//singlesignon/latest/userguide/quick-start-default-idc.html).AWS IAM Identity Center *

**Anmelden als Administratorbenutzer**
+ Um sich mit Ihrem IAM-Identity-Center-Benutzer anzumelden, verwenden Sie die Anmelde-URL, die an Ihre E-Mail-Adresse gesendet wurde, als Sie den IAM-Identity-Center-Benutzer erstellt haben.

  Hilfe bei der Anmeldung mit einem IAM Identity Center-Benutzer finden Sie [im *AWS-Anmeldung Benutzerhandbuch* unter Anmeldung beim AWS Access-Portal](https://docs.aws.amazon.com/signin/latest/userguide/iam-id-center-sign-in-tutorial.html).

**Weiteren Benutzern Zugriff zuweisen**

1. Erstellen Sie im IAM-Identity-Center einen Berechtigungssatz, der den bewährten Vorgehensweisen für die Anwendung von geringsten Berechtigungen folgt.

   Anweisungen hierzu finden Sie unter [ Berechtigungssatz erstellen](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-started-create-a-permission-set.html) im *AWS IAM Identity Center -Benutzerhandbuch*.

1. Weisen Sie Benutzer einer Gruppe zu und weisen Sie der Gruppe dann Single Sign-On-Zugriff zu.

   Eine genaue Anleitung finden Sie unter [ Gruppen hinzufügen](https://docs.aws.amazon.com//singlesignon/latest/userguide/addgroups.html) im *AWS IAM Identity Center -Benutzerhandbuch*.

**Anmerkung**  
Weitere Informationen über die Verwaltung der Zugriffsrechte finden Sie unter [Steuern CloudFormation Sie den Zugriff mit AWS Identity and Access Management](control-access-with-iam.md).

# Erstellen Sie Ihren ersten Stapel
<a name="gettingstarted.walkthrough"></a>

Dieses Thema führt Sie durch die Erstellung Ihres ersten CloudFormation Stacks mit dem AWS-Managementkonsole. In diesem Tutorial erfahren Sie, wie Sie grundlegende AWS Ressourcen bereitstellen, Stack-Ereignisse überwachen und Ausgaben generieren.

In diesem Beispiel ist die CloudFormation Vorlage in YAML geschrieben. YAML ist ein von Menschen lesbares Format, das häufig zur Definition von Infrastruktur als Code verwendet wird. Wenn Sie mehr darüber erfahren CloudFormation, werden Sie möglicherweise auch auf andere Vorlagen im JSON-Format stoßen, aber für dieses Tutorial wurde YAML aufgrund seiner Lesbarkeit ausgewählt.

**Anmerkung**  
CloudFormation ist kostenlos, aber die von Ihnen erstellten Amazon EC2- und Amazon S3 S3-Ressourcen werden Ihnen in Rechnung gestellt. Wenn Sie jedoch noch keine Erfahrung damit haben AWS, können Sie das [kostenlose Kontingent](https://aws.amazon.com/free/) nutzen, um die Kosten während dieses Lernprozesses zu minimieren oder ganz zu vermeiden.

**Topics**
+ [Voraussetzungen](#getting-started-prerequisites)
+ [Erstellen Sie einen CloudFormation Stack mit der Konsole](#getting-started-create-stack)
+ [Stack-Erstellung überwachen](#getting-started-monitor-stack-creation)
+ [Testen Sie den Webserver](#getting-started-test-web-server)
+ [Fehlerbehebung](#getting-started-troubleshooting)
+ [Bereinigen](#getting-started-clean-up)
+ [Nächste Schritte](#getting-started-next-steps)

## Voraussetzungen
<a name="getting-started-prerequisites"></a>
+ Sie benötigen Zugriff auf einen Benutzer oder eine Rolle AWS-Konto mit einem IAM-Status, der über Berechtigungen zur Verwendung von Amazon EC2, Amazon S3 und/oder verfügt CloudFormation, oder Administratorzugriff.
+ Sie müssen über eine Virtual Private Cloud (VPC) verfügen, die Zugang zum Internet hat. Diese exemplarische Vorlage erfordert eine Standard-VPC, die automatisch mit newer AWS-Konten geliefert wird. Wenn Sie keine Standard-VPC haben oder diese gelöscht wurde, finden Sie im Abschnitt zur Fehlerbehebung in diesem Thema alternative Lösungen.

## Erstellen Sie einen CloudFormation Stack mit der Konsole
<a name="getting-started-create-stack"></a>

**Um einen Hello CloudFormation World-Stack mit der Konsole zu erstellen**

1. Öffnen Sie die [CloudFormation-Konsole](https://console.aws.amazon.com/cloudformation/).

1. Wählen Sie **Stack erstellen** aus.

1. Wählen Sie auf der Seite **Stack erstellen** die Option **Von Infrastructure Composer erstellen**und dann **In Infrastructure Composer erstellen**. Dadurch gelangen Sie im CloudFormation Konsolenmodus zu Infrastructure Composer, wo Sie die Beispielvorlage hochladen und validieren können.

1. Um die Beispielvorlage hochzuladen und zu validieren, gehen Sie wie folgt vor:

   1. Choose **Template**. Kopieren Sie dann die folgende CloudFormation Vorlage und fügen Sie sie in den Vorlageneditor ein:

      ```
      AWSTemplateFormatVersion: 2010-09-09
      Description: CloudFormation Template for WebServer with Security Group and EC2 Instance
      
      Parameters:
        LatestAmiId:
          Description: The latest Amazon Linux 2 AMI from the Parameter Store
          Type: AWS::SSM::Parameter::Value<AWS::EC2::Image::Id>
          Default: '/aws/service/ami-amazon-linux-latest/amzn2-ami-hvm-x86_64-gp2'
      
        InstanceType:
          Description: WebServer EC2 instance type
          Type: String
          Default: t2.micro
          AllowedValues:
            - t3.micro
            - t2.micro
          ConstraintDescription: must be a valid EC2 instance type.
          
        MyIP:
          Description: Your IP address in CIDR format (e.g. 203.0.113.1/32).
          Type: String
          MinLength: '9'
          MaxLength: '18'
          Default: 0.0.0.0/0
          AllowedPattern: '^(\d{1,3}\.){3}\d{1,3}\/\d{1,2}$'
          ConstraintDescription: must be a valid IP CIDR range of the form x.x.x.x/x.
      
      Resources:
        WebServerSecurityGroup:
          Type: AWS::EC2::SecurityGroup
          Properties:
            GroupDescription: Allow HTTP access via my IP address
            SecurityGroupIngress:
              - IpProtocol: tcp
                FromPort: 80
                ToPort: 80
                CidrIp: !Ref MyIP
      
        WebServer:
          Type: AWS::EC2::Instance
          Properties:
            ImageId: !Ref LatestAmiId
            InstanceType: !Ref InstanceType
            SecurityGroupIds:
              - !Ref WebServerSecurityGroup
            UserData: !Base64 |
              #!/bin/bash
              yum update -y
              yum install -y httpd
              systemctl start httpd
              systemctl enable httpd
              echo "<html><body><h1>Hello World!</h1></body></html>" > /var/www/html/index.html
      
      Outputs:
        WebsiteURL:
          Value: !Join
            - ''
            - - http://
              - !GetAtt WebServer.PublicDnsName
          Description: Website URL
      ```

      Bevor Sie mit dem nächsten Schritt fortfahren, nehmen wir uns einen Moment Zeit, um einen Blick auf die Vorlage zu werfen und einige wichtige CloudFormation Konzepte zu verstehen.
      + Der Abschnitt **`Parameters`** deklariert Werte, die bei der Erstellung des Stapels an die Vorlage übergeben werden können. Später in der Vorlage angegebene Ressourcen verweisen auf diese Werte und verwenden die Daten. Parameter sind eine effektive Möglichkeit, Informationen anzugeben, die Sie nicht in der Vorlage selbst speichern möchten. Sie sind auch eine Möglichkeit, Informationen anzugeben, die für die spezifische Anwendung oder Konfiguration, die Sie bereitstellen, einzigartig sein könnten.
      + Die Vorlage definiert die folgenden Parameter:
        + **`LatestAmiId`**- Ruft die neueste Amazon Linux 2 AMI ID aus dem AWS Systems Manager Parameter Store ab.
        + **`InstanceType`**- Ermöglicht die Auswahl des EC2-Instancetyps (Standard:,`t2.micro` zulässig:,`t3.micro` `t2.micro`). 
        + **`MyIP`**- Gibt den IP-Adressbereich für den HTTP-Zugriff an (Standard: 0.0.0.0/0, was den Zugriff von jeder IP erlaubt).
      + Der **`Resources`**Abschnitt enthält die Definitionen der AWS Ressourcen, die Sie mit der Vorlage erstellen möchten. Resourcendeklarationen stellen eine effiziente Möglichkeit dar, alle diese Konfigurationseinstellungen gleichzeitig anzugeben. Wenn Sie Ressourcendeklarationen in eine Vorlage aufnehmen, können Sie alle deklarierten Ressourcen erstellen und konfigurieren, indem Sie diese Vorlage zur Erstellung eines Stapels verwenden. Sie können auch neue Stapel mit der gleichen Vorlage erstellen, um identische Konfigurationen von Ressourcen zu starten.
      + Diese-Vorlage erstellt die folgenden Ressourcen:
        + **`WebServerSecurityGroup`**- Eine EC2-Sicherheitsgruppe, die eingehenden HTTP-Verkehr auf Port 80 aus dem angegebenen IP-Bereich zulässt.
        + **`WebServer`**- Eine EC2-Instance mit der folgenden Konfiguration:
          + Verwendet das neueste Amazon Linux 2 AMI
          + Wendet den ausgewählten Instancetyp an
          + Fügt die Eigenschaft `WebServerSecurityGroup` zur Eigenschaft `SecurityGroupIds` hinzu
          + Enthält ein Skript mit Benutzerdaten zur Installation von Apache HTTP Server
      + Am Anfang jeder Ressourcen- und Parameterdeklaration wird ein logischer Name angegeben. Zum Beispiel ist `WebServerSecurityGroup` der logische Name, der der EC2-Sicherheitsgruppenressource zugewiesen ist. Die Funktion `Ref` wird dann verwendet, um in anderen Teilen der Vorlage auf Ressourcen und Parameter über ihre logischen Namen zu verweisen. Wenn eine Ressource auf eine andere Ressource verweist, entsteht eine Abhängigkeit zwischen ihnen.
      + Der Abschnitt **`Outputs`** definiert benutzerdefinierte Werte, die nach der Erstellung des Stacks zurückgegeben werden. Sie können die Ausgabewerte verwenden, um Informationen aus den Ressourcen im Stapel zurückzugeben, z. B. Ressourcen-IDs oder URLs.
      + Die Vorlage definiert eine Ausgabe:
        + **`WebsiteURL`**- Die URL des bereitgestellten Webservers, die unter Verwendung des öffentlichen DNS-Namens der EC2-Instance erstellt wird. Mit der Funktion `Join` können Sie die feste Variable `http://` und die Variable `PublicDnsName` zu einer einzigen Zeichenkette zusammenfassen, was die Ausgabe der vollständigen URL des Webservers erleichtert.

   1. Wählen Sie **Validieren** um sicherzustellen, dass der YAML-Code gültig ist, bevor Sie die Vorlage hochladen.

   1. Wählen Sie anschließend **Vorlage erstellen** um die Vorlage zu erstellen und zu einem S3-Bucket hinzuzufügen.

   1. Notieren Sie sich in dem sich öffnenden Dialogfenster den Namen des S3-Buckets, damit Sie ihn später löschen können. Wählen Sie dann **Bestätigen und fahren Sie fort CloudFormation**. Dadurch gelangen Sie zur CloudFormation Konsole, in der jetzt der S3-Pfad zu Ihrer Vorlage angegeben ist.

1. Auf der Seite **Stapel erstellen** wählen Sie **Weiter**.

1. Geben Sie auf der Seite **Stapeldetails angeben** einen Namen in das Feld **Stapelname** ein. Der Stack-Name darf keine Leerzeichen enthalten. Wählen Sie für dieses Beispiel **MyTestStack**.

1. Unter **Parameter**geben Sie die Parameterwerte wie folgt an:
   + **LatestAmiId**: Dies ist standardmäßig auf das neueste Amazon Linux 2-AMI eingestellt.
   + **InstanceType**: Wählen Sie entweder **t2.micro** oder **t3.micro** als EC2-Instance-Typ.
**Anmerkung**  
Wenn Sie noch nicht damit vertraut sind AWS, können Sie das kostenlose Kontingent nutzen, um eine `t2.micro` Instance zu starten und 12 Monate lang kostenlos zu nutzen (in Regionen, in denen die Instance nicht verfügbar `t2.micro` ist, können Sie eine `t3.micro` Instance im Rahmen des kostenlosen Kontingents nutzen).
   + **MeineIP**: Geben Sie Ihre aktuelle öffentliche IP-Adresse mit dem Suffix `/32` an. Das Suffix `/32` wird in der CIDR-Notation verwendet, um anzugeben, dass eine einzelne IP-Adresse erlaubt ist. Das bedeutet im Wesentlichen, dass Sie den Datenverkehr zu und von dieser bestimmten IP-Adresse zulassen, und keine anderen.

1. Wählen Sie zweimal **Weiter** um zur Seite **Überprüfen und erstellen** zu gelangen. Für dieses Tutorial können Sie die Standardeinstellungen auf der Seite **Stack-Optionen konfigurieren** so belassen, wie sie sind.

1. Überprüfen Sie die Informationen für den Stack. Wenn Sie mit den Einstellungen zufrieden sind, klicken Sie auf **Submit (Absenden)**.

## Stack-Erstellung überwachen
<a name="getting-started-monitor-stack-creation"></a>

Nachdem Sie „**Senden**“ ausgewählt haben, CloudFormation beginnt die Erstellung der Ressourcen, die in der Vorlage angegeben sind. Ihr neuer Stack**MyTestStack**,, wird in der Liste im oberen Bereich der **CloudFormation**Konsole angezeigt. Sein Status sollte `CREATE_IN_PROGRESS`sein. Sie können den detaillierten Status für einen Stack anzeigen, indem Sie die entsprechenden Ereignisse anzeigen.

**Anzeigen der Ereignisse für den Stack**

1. Wählen Sie auf der CloudFormation Konsole den Stack **MyTestStack** in der Liste aus.

1. Wählen Sie im Detailbereich des Stacks die Registerkarte **Events** aus.

   Die Konsole aktualisiert die Ereignisliste alle 60 Sekunden automatisch mit den neuesten Ereignissen.

Auf der Registerkarte **Events** wird jeder wichtige Schritt bei der Erstellung des Stacks sortiert nach dem Zeitpunkt jedes Ereignisses angezeigt, wobei die neuesten Ereignisse oben angezeigt werden.

Das erste Ereignis (unten in der Ereignisliste) ist der Beginn des Prozesses zum Erstellen des Stacks:

`2024-12-23 18:54 UTC-7 MyTestStack CREATE_IN_PROGRESS User initiated`

Es folgen Ereignisse, die den Beginn und den Abschluss der Erstellung jeder Ressource darstellen. Die Erstellung der EC2-Instance führt z. B. zu den folgenden Einträgen:

`2024-12-23 18:59 UTC-7 WebServer CREATE_COMPLETE`

`2024-12-23 18:54 UTC-7 WebServer CREATE_IN_PROGRESS Resource creation initiated`

Das `CREATE_IN_PROGRESS` Ereignis wird protokolliert, wenn CloudFormation gemeldet wird, dass mit der Erstellung der Ressource begonnen wurde. Das `CREATE_COMPLETE`-Ereignis wird protokolliert, wenn die Ressource erfolgreich erstellt wurde.

Wenn CloudFormation der Stack erfolgreich erstellt wurde, wird oben auf der Registerkarte **Ereignisse** das folgende Ereignis angezeigt:

`2024-12-23 19:17 UTC-7 MyTestStack CREATE_COMPLETE`

Wenn eine Ressource nicht erstellt werden CloudFormation kann, meldet sie ein `CREATE_FAILED` Ereignis und setzt standardmäßig den Stapel zurück und löscht alle Ressourcen, die erstellt wurden. In der Spalte **Status Reason** wird die Ursache des Fehlers angezeigt.

Nachdem der Stack erstellt wurde, können Sie auf die Registerkarte **Ressourcen** gehen, um die von Ihnen erstellte EC2-Instance und Sicherheitsgruppe anzuzeigen.

## Testen Sie den Webserver
<a name="getting-started-test-web-server"></a>

Nachdem der Stack erfolgreich erstellt wurde, navigieren Sie in der CloudFormation Konsole zur Registerkarte **Ausgaben**. Suchen Sie das Feld **WebsiteURL** . Diese enthält die öffentliche URL Ihrer EC2-Instance.

Öffnen Sie einen Browser und gehen Sie zu der unter **WebsiteURL**aufgeführten URL. Sie sollten eine einfache "Hello World\$1"-Meldung im Browser sehen.

Dies bestätigt, dass Ihre EC2-Instance den Apache HTTP Server ausführt und eine einfache Webseite bereitstellt.

## Fehlerbehebung
<a name="getting-started-troubleshooting"></a>

Wenn bei der Stack-Erstellung ein Rollback auftritt, kann dies an einem fehlenden VPC liegen. Hier erfahren Sie, wie Sie dieses Problem beheben können.

### Keine Standard-VPC verfügbar
<a name="getting-started-troubleshooting-no-default-vpc"></a>

Die Vorlage in dieser Anleitung erfordert eine Standard-VPC. Wenn Ihre Stack-Erstellung aufgrund von Fehlern bei der VPC- oder Subnetz-Verfügbarkeit fehlschlägt, haben Sie möglicherweise keine Standard-VPC in Ihrem Konto. Ihnen stehen folgende Optionen zur Verfügung:
+ **Erstellen einer neuen Standard-VPC**- Sie können eine neue Standard-VPC über die Amazon VPC-Konsole erstellen. Eine Anleitung finden Sie unter [Erstellen einer Standard-VPC](https://docs.aws.amazon.com/vpc/latest/userguide/work-with-default-vpc.html#create-default-vpc) im *Amazon VPC-Benutzerhandbuch*.
+ **Ändern Sie die Vorlage, um ein Subnetz anzugeben** — Wenn Sie eine nicht standardmäßige VPC haben, können Sie die Vorlage ändern, um die VPC und das Subnetz explizit anzugeben. IDs Fügen Sie der Vorlage den folgenden Parameter hinzu:

  ```
    SubnetId:
      Description: The subnet ID to launch the instance into
      Type: AWS::EC2::Subnet::Id
  ```

  Aktualisieren Sie dann die Ressource `WebServer`, um die Subnetz-ID aufzunehmen:

  ```
    WebServer:
      Type: AWS::EC2::Instance
      Properties:
        ImageId: !Ref LatestAmiId
        InstanceType: !Ref InstanceType
        SecurityGroupIds:
          - !Ref WebServerSecurityGroup
        SubnetId: !Ref SubnetId
        UserData: !Base64 |
          #!/bin/bash
          yum update -y
          yum install -y httpd
          systemctl start httpd
          systemctl enable httpd
          echo "<html><body><h1>Hello World!</h1></body></html>" > /var/www/html/index.html
  ```

  Wenn Sie den Stack erstellen, müssen Sie ein Subnetz angeben, das über einen Internetzugang verfügt, damit der Webserver erreichbar ist.

## Bereinigen
<a name="getting-started-clean-up"></a>

Um sicherzustellen, dass Ihnen keine Gebühren für nicht gewünschte Dienste berechnet werden, können Sie den Stack und die entsprechenden Ressourcen löschen. Sie können auch den S3-Bucket löschen, in dem die Vorlage des Stacks gespeichert ist.

**Löschen des Stacks und der entsprechenden Ressourcen**

1. Öffnen Sie die [CloudFormation-Konsole](https://console.aws.amazon.com/cloudformation/).

1. Wählen Sie auf der Seite **Stapel** die Option neben dem Namen des von Ihnen erstellten Stapels (**MyTestStack**) und wählen Sie dann **Löschen**.

1. Wenn Sie zur Bestätigung aufgefordert werden, wählen Sie **Delete (Löschen)**.

1. Überwachen Sie den Fortschritt des Stapel-Löschvorgangs auf der Registerkarte **Ereignis** . Der Status für **MyTestStack** wechselt zu `DELETE_IN_PROGRESS`. Wenn das Löschen des Stacks CloudFormation abgeschlossen ist, wird der Stapel aus der Liste entfernt.

Wenn Sie die Arbeit mit der Beispielvorlage beendet haben und Ihren Amazon S3-Bucket nicht mehr benötigen, löschen Sie ihn. Bevor Sie einen Bucket löschen können, müssen Sie ihn zunächst leeren. Wenn Sie einen Bucket leeren, werden alle darin enthaltenen Objekte gelöscht.

**So leeren und löschen Sie den Amazon S3-Bucket**

1. Öffnen Sie die [Amazon S3-Konsole](https://console.aws.amazon.com/s3/).

1. Klicken Sie im Navigationsbereich auf der linken Seite der Konsole auf **Buckets**.

1. Wählen Sie in der Liste **Buckets** die Option neben dem Namen des Buckets, den Sie für dieses Tutorial erstellt haben, und wählen Sie dann **Leer**.

1. Bestätigen Sie auf der Seite **Bucket leeren**, dass Sie den Bucket leeren möchten, indem Sie **permanently delete** in das Textfeld eingeben, und wählen Sie dann **Leeren**.

1. Überwachen Sie den Fortschritt des Vorgangs zum Entleeren von Buckets auf der Seite **Bucket entleeren: Status)**. 

1. Um zur Bucket-Liste zurückzukehren, wählen Sie **Exit (Beenden)** aus.

1. Wählen Sie die Option neben dem Namen des Buckets und wählen Sie dann **Löschen**.

1. Wenn Sie zur Bestätigung aufgefordert werden, geben Sie den Namen des Buckets ein und wählen Sie **Bucket löschen**.

1. Überwachen Sie in der Liste **Buckets** den Fortschritt des Löschvorgangs für den Bucket. Wenn Amazon S3 die Löschung des Buckets abgeschlossen hat, entfernt es den Bucket aus der Liste.

## Nächste Schritte
<a name="getting-started-next-steps"></a>

Herzlichen Glückwunsch\$1 Sie haben erfolgreich einen Stack erstellt, seine Erstellung überwacht und seine Ausgabe verwendet.

Um weiter zu lernen:
+ Erfahren Sie mehr über Vorlagen, damit Sie Ihre eigenen erstellen können. Weitere Informationen finden Sie unter [Mit CloudFormation Vorlagen arbeiten](template-guide.md).
+ Probieren Sie den Workshop [Erste Schritte mit CloudFormation](https://catalog.us-east-1.prod.workshops.aws/workshops/df7f72cf-4f10-4664-acb6-b30dc8d4bcf0/en-US) für weitere praktische Übungen zur Erstellung von Vorlagen.
+ Eine verkürzte Version von [Getting Started with CloudFormation](https://catalog.us-east-1.prod.workshops.aws/workshops/df7f72cf-4f10-4664-acb6-b30dc8d4bcf0/en-US) finden Sie unter[Bereitstellen von Anwendungen auf Amazon EC2](deploying.applications.md). In diesem Thema wird dasselbe Szenario beschrieben, in dem ein CloudFormation Hilfsskript verwendet wird`cfn-init`, um eine Amazon EC2 EC2-Instance zu booten.