

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.

# Migrieren Sie AWS CloudFormation Stacks zu Startvorlagen
<a name="migrate-launch-configurations-with-cloudformation"></a>

Sie können Ihre vorhandenen CloudFormation Stack-Vorlagen von Startkonfigurationen zu Startvorlagen migrieren. Fügen Sie dazu eine Startvorlage direkt zu einer vorhandenen Stack-Vorlage hinzu und verknüpfen Sie die Startvorlage dann mit der Auto-Scaling-Gruppe in der Stack-Vorlage. Verwenden Sie anschließend die geänderte Vorlage zum Aktualisieren Ihres Stacks. 

Bei der Migration zu Startvorlagen spart Ihnen dieses Thema Zeit, da es Anweisungen zum Umschreiben der Startkonfigurationen in Ihren CloudFormation Stack-Vorlagen als Startvorlagen enthält. Weitere Informationen zum Migrieren von Startkonfigurationen in Startvorlagen finden Sie unter [Migrieren Sie Ihre Auto Scaling Scaling-Gruppen, um Vorlagen zu starten](migrate-to-launch-templates.md).

**Topics**
+ [Auto-Scaling-Gruppen finden, die eine Startkonfiguration verwenden](#find-auto-scaling-groups-to-migrate)
+ [Aktualisieren eines Stacks zur Verwendung einer Startvorlage](#update-stack-to-use-launch-template)
+ [Das Aktualisierungsverhalten von Stack-Ressourcen verstehen](#understand-update-behavior)
+ [Verfolgen Sie die Migration](#track-the-migration)
+ [Referenz für die Abbildung der Startkonfiguration](#launch-configuration-mapping-reference)

## Auto-Scaling-Gruppen finden, die eine Startkonfiguration verwenden
<a name="find-auto-scaling-groups-to-migrate"></a>

**So finden Sie Auto-Scaling-Gruppen, die eine Startkonfiguration verwenden**
+ Verwenden Sie den folgenden [describe-auto-scaling-groups](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/describe-auto-scaling-groups.html)Befehl, um die Namen der Auto Scaling Scaling-Gruppen aufzulisten, die Startkonfigurationen in der angegebenen Region verwenden. Fügen Sie die `--filters` Option hinzu, die Ergebnisse auf Gruppen einzugrenzen, die einem CloudFormation Stack zugeordnet sind (durch Filtern nach dem `aws:cloudformation:stack-name` Tag-Schlüssel). 

  ```
  aws autoscaling describe-auto-scaling-groups --region {{REGION}} \
    --filters Name=tag-key,Values=aws:cloudformation:stack-name \
    --query 'AutoScalingGroups[?LaunchConfigurationName!=`null`].AutoScalingGroupName'
  ```

  Das folgende Beispiel zeigt eine Ausgabe.

  ```
  [
      "{stack-name}-group-1",
      "{stack-name}-group-2",
      "{stack-name}-group-3"
  ]
  ```

  Sie finden weitere nützliche AWS CLI Befehle, um Auto Scaling Scaling-Gruppen für die Migration zu finden und die Ausgabe zu filtern[Migrieren Sie Ihre Auto Scaling Scaling-Gruppen, um Vorlagen zu starten](migrate-to-launch-templates.md).

**Wichtig**  
Wenn Ihre Stack-Ressourcen `AWSEB` in ihrem Namen stehen, bedeutet das, dass sie durch erstellt wurden AWS Elastic Beanstalk. In diesem Fall müssen Sie die Beanstalk-Umgebung aktualisieren, um Elastic Beanstalk anzuweisen, die Startkonfiguration zu entfernen und sie durch eine Startvorlage zu ersetzen.

## Aktualisieren eines Stacks zur Verwendung einer Startvorlage
<a name="update-stack-to-use-launch-template"></a>

Befolgen Sie die Schritte in diesem Abschnitt, um Folgendes zu tun:
+ Schreiben Sie die Startkonfiguration als Startvorlage um und verwenden Sie die entsprechenden Eigenschaften der Startvorlage. 
+ Verknüpfen Sie die neue Startvorlage mit der Auto-Scaling-Gruppe. 
+ Stellen Sie diese Updates bereit.

**So ändern Sie die Stack-Vorlage und aktualisieren den Stack**

1. Folgen Sie den gleichen allgemeinen Verfahren zum Ändern der Stack-Vorlage, die im *AWS CloudFormation Benutzerhandbuch* unter [Ändern einer Stack-Vorlage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-get-template.html) beschrieben sind.

1. Schreiben Sie die Startkonfiguration in eine Startvorlage um. Sehen Sie sich das folgende Beispiel an: 

   **Beispiel: Eine einfache Startkonfiguration**

   ```
   ---
   Resources:
     myLaunchConfig: 
       Type: AWS::AutoScaling::LaunchConfiguration
       Properties: 
         ImageId: ami-02354e95b3example
         InstanceType: t3.micro
         SecurityGroups:
           - !Ref EC2SecurityGroup
         KeyName: MyKeyPair
         BlockDeviceMappings: 
           - DeviceName: /dev/xvda
             Ebs: 
               VolumeSize: 150
               DeleteOnTermination: true
         UserData: 
           Fn::Base64: !Sub |
             #!/bin/bash -xe
             yum install -y aws-cfn-bootstrap
             /opt/aws/bin/cfn-signal -e $? --stack ${AWS::StackName} --resource myASG --region ${AWS::Region}
   ```

   **Beispiel: Das Äquivalent zur Startvorlage**

   ```
   ---
   Resources:
     myLaunchTemplate:
       Type: AWS::EC2::LaunchTemplate
       Properties:
         LaunchTemplateName: {{!Sub ${AWS::StackName}-launch-template}}
         LaunchTemplateData:
           ImageId: ami-02354e95b3example
           InstanceType: t3.micro
           SecurityGroupIds:
             - Ref! EC2SecurityGroup
           KeyName: MyKeyPair
           BlockDeviceMappings: 
             - DeviceName: /dev/xvda
               Ebs: 
                 VolumeSize: 150
                 DeleteOnTermination: true
           UserData: 
             Fn::Base64: !Sub |
               #!/bin/bash -x
               yum install -y aws-cfn-bootstrap
               /opt/aws/bin/cfn-signal -e $? --stack ${AWS::StackName} --resource myASG --region ${AWS::Region}
   ```

   Referenzinformationen zu allen Eigenschaften, die Amazon EC2 unterstützt, finden Sie [AWS::EC2::LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html)im *AWS CloudFormation Benutzerhandbuch*. 

   Beachten Sie, dass die Startvorlage die Eigenschaft `LaunchTemplateName` mit einem Wert von `!Sub ${AWS::StackName}-launch-template` enthält. Dies ist erforderlich, wenn der Name der Startvorlage den Namen des Stacks enthalten soll.

1. Wenn die Eigenschaft `IamInstanceProfile` in Ihrer Startkonfiguration vorhanden ist, müssen Sie sie in eine Struktur umwandeln und entweder den Namen oder den ARN des Instance-Profils angeben. Ein Beispiel finden Sie unter [AWS::EC2::LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html). 

1. Wenn die Eigenschaften `AssociatePublicIpAddress`, `InstanceMonitoring` oder `PlacementTenancy` in Ihrer Startkonfiguration vorhanden sind, müssen Sie diese in eine Struktur umwandeln. Beispiele finden Sie unter [AWS::EC2::LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html). 

   Eine Ausnahme besteht, wenn der Wert für die Eigenschaft `MapPublicIpOnLaunch` in den Teilnetzen, die Sie für Ihre Auto-Scaling-Gruppe verwendet haben, mit dem Wert für die Eigenschaft `AssociatePublicIpAddress` in Ihrer Startkonfiguration übereinstimmt. In diesem Fall können Sie die `AssociatePublicIpAddress`-Eigenschaft ignorieren. Die `AssociatePublicIpAddress` Eigenschaft wird nur verwendet, um die `MapPublicIpOnLaunch` Eigenschaft zu überschreiben, um zu ändern, ob Instances beim Start eine öffentliche IPv4 Adresse erhalten. 

1. Sie können Sicherheitsgruppen aus der `SecurityGroups`-Eigenschaft an eine von zwei Stellen in Ihrer Startvorlage kopieren. Normalerweise kopieren Sie die Sicherheitsgruppen in die `SecurityGroupIds`-Eigenschaft. Wenn Sie jedoch in Ihrer Startvorlage eine `NetworkInterfaces`-Struktur erstellen, um die `AssociatePublicIpAddress`-Eigenschaft anzugeben, müssen Sie stattdessen die Sicherheitsgruppen in die `Groups`-Eigenschaft der Netzwerkschnittstelle kopieren.

1. Wenn in Ihrer Startkonfiguration `BlockDeviceMapping`-Strukturen vorhanden sind und `NoDevice` auf `true` gesetzt ist, müssen Sie in Ihrer Startvorlage eine leere Zeichenfolge für `NoDevice` angeben, damit Amazon EC2 das Gerät auslässt.

1. Wenn die Eigenschaft `SpotPrice` in Ihrer Startkonfiguration vorhanden ist, empfehlen wir Ihnen, sie in Ihrer Startvorlage wegzulassen. Ihre Spot Instance wird zum aktuellen Spot-Preis gestartet. Dieser Preis wird niemals den On-Demand-Preis überschreiten.

   Um Spot-Instances anzufordern, haben Sie zwei Optionen, die sich gegenseitig ausschließen:
   + Die erste Möglichkeit besteht darin, die `InstanceMarketOptions`-Struktur in Ihrer Startvorlage zu verwenden (nicht empfohlen). Weitere Informationen finden Sie [AWS::EC2::LaunchTemplate InstanceMarketOptions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-instancemarketoptions.html)im *AWS CloudFormation Benutzerhandbuch*.
   + Die andere besteht darin, Ihrer Auto-Scaling-Gruppe eine `MixedInstancesPolicy`-Struktur hinzuzufügen. Auf diese Weise stehen Ihnen mehr Optionen zur Verfügung, wie Sie die Anfrage stellen können. Eine Spot-Instance-Anfrage in Ihrer Startvorlage unterstützt nicht mehr als eine Instance-Typauswahl pro Auto-Scaling-Gruppe. Eine Richtlinie für gemischte Instances unterstützt jedoch die Auswahl von mehr als einem Instance-Typ pro Auto-Scaling-Gruppe. Spot-Instance-Anfragen profitieren davon, dass mehr als ein einziger Instance-Typ zur Auswahl steht. Weitere Informationen finden Sie MixedInstancesPolicy im *AWS CloudFormation Benutzerhandbuch* unter [AWS::AutoScaling::AutoScaling MixedInstancesPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-mixedinstancespolicy.html).

1. Entfernen Sie die `LaunchConfigurationName` Eigenschaft aus der [AWS::AutoScaling::AutoScaling](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html). Fügen Sie stattdessen die Startvorlage hinzu.

   In den folgenden Beispielen ruft die intrinsische Funktion [Ref](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) die ID der [AWS::EC2::LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html)Ressource mit der logischen ID ab. `myLaunchTemplate` Die [GetAtt](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html)Funktion ruft die neueste Versionsnummer (z. B.`1`) der Startvorlage für die `Version` Eigenschaft ab.

   **Beispiel: Ohne eine Richtlinie für gemischte Instances**

   ```
   ---
   Resources:
     myASG:
       Type: AWS::AutoScaling::AutoScalingGroup
       Properties:
         LaunchTemplate:
           LaunchTemplateId: {{!Ref myLaunchTemplate}}
           Version: {{!GetAtt myLaunchTemplate.LatestVersionNumber}}
         ...
   ```

   **Beispiel: Mit einer Richtlinie für gemischte Instances**

   ```
   ---
   Resources:
     myASG:
       Type: AWS::AutoScaling::AutoScalingGroup
       Properties:        
         MixedInstancesPolicy:
           LaunchTemplate:
             LaunchTemplateSpecification:
               LaunchTemplateId: {{!Ref myLaunchTemplate}}
               Version: {{!GetAtt myLaunchTemplate.LatestVersionNumber}}
         ...
   ```

   Referenzinformationen zu allen Eigenschaften, die Amazon EC2 Auto Scaling unterstützt, finden Sie unter [AWS::AutoScaling::AutoScalingAWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) im *AWS CloudFormation Benutzerhandbuch*.

1. Wenn Sie bereit sind, diese Updates bereitzustellen, folgen Sie den CloudFormation Verfahren, um den Stack mit Ihrer geänderten Stack-Vorlage zu aktualisieren. Weitere Informationen finden Sie unter [Ändern einer Stack-Vorlage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-get-template.html) im *AWS CloudFormation Benutzerhandbuch*. 

## Das Aktualisierungsverhalten von Stack-Ressourcen verstehen
<a name="understand-update-behavior"></a>

CloudFormation aktualisiert die Stack-Ressourcen, indem die Änderungen zwischen der von Ihnen bereitgestellten aktualisierten Vorlage und den Ressourcenkonfigurationen, die Sie in der vorherigen Version Ihrer Stack-Vorlage beschrieben haben, verglichen werden. Nicht geänderte Ressourcenkonfigurationen bleiben während des Updates davon unberührt.

CloudFormation unterstützt das [UpdatePolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatepolicy.html)Attribut für Auto Scaling Scaling-Gruppen. Wenn während eines Updates auf eingestellt `UpdatePolicy` ist`AutoScalingRollingUpdate`, werden `InService` Instanzen CloudFormation ersetzt, nachdem Sie die Schritte in diesem Verfahren ausgeführt haben. Wenn auf gesetzt `UpdatePolicy` ist`AutoScalingReplacingUpdate`, CloudFormation ersetzt die Auto Scaling Scaling-Gruppe und ihren Warmpool (falls vorhanden).

Wenn Sie kein `UpdatePolicy` Attribut für Ihre Auto Scaling Scaling-Gruppe angegeben haben, wird die Startvorlage auf ihre Richtigkeit überprüft, aber CloudFormation es werden keine Änderungen für die Instances in der Auto Scaling Scaling-Gruppe bereitgestellt. Alle neuen Instances verwenden Ihre Startvorlage, aber bestehende Instances werden weiterhin mit der Startkonfiguration ausgeführt, mit der sie ursprünglich gestartet wurden (obwohl die Startkonfiguration nicht mehr existiert). Die Ausnahme ist, wenn Sie Ihre Kaufoptionen ändern, z. B. indem Sie eine Police für gemischte Instances hinzufügen. In diesem Fall ersetzt Ihre Auto-Scaling-Gruppe die vorhandenen Instances nach und nach durch neue Instances, die den neuen Kaufoptionen entsprechen.

Wenn Sie eine Änderung rückgängig machen müssen, um von Startkonfigurationen zu Startvorlagen zu wechseln, stellen Sie sicher, dass Sie den Rollback-Vorgang testen.

## Verfolgen Sie die Migration
<a name="track-the-migration"></a>

**So verfolgen Sie die Migration**

1. Wählen Sie in der [CloudFormation -Konsole](https://console.aws.amazon.com/cloudformation) den Stack aus, den Sie aktualisiert haben, und klicken Sie dann auf die Registerkarte **Events (Ereignisse)**, um die Stack-Ereignisse anzuzeigen.

1. Um die Ereignisliste mit den neuesten Ereignissen zu aktualisieren, klicken Sie in der CloudFormation Konsole auf die Schaltfläche „Aktualisieren“.

1. Während Ihr Stack aktualisiert wird, werden Sie mehrere Ereignisse für jede Ressourcenaktualisierung feststellen. Wenn Sie in der Spalte **Statusgrund** eine Ausnahme sehen, die auf ein Problem beim Erstellen der Startvorlage hinweist, finden Sie weitere Informationen [Fehlersuche bei Amazon EC2 Auto Scaling: Startvorlagen](ts-as-launch-template.md) zu möglichen Ursachen.

1. (Optional) Je nach Verwendung des `UpdatePolicy`-Attributs können Sie den Fortschritt Ihrer Auto-Scaling-Gruppe auf der Seite [Auto-Scaling-Gruppen](https://console.aws.amazon.com/ec2/v2/home?#AutoScalingGroups) der Amazon EC2-Konsole überwachen. Wählen Sie die Auto-Scaling-Gruppe aus. Auf der Registerkarte **Activity** (Aktivität) unter **Activity history** (Aktivitätsverlauf) zeigt die Spalte **Status** an, ob Ihre Auto-Scaling-Gruppe-Instances erfolgreich gestartet oder beendet hat oder ob die Skalierungsaktivität noch im Gange ist. 

1. Wenn das Stack-Update abgeschlossen ist, wird CloudFormation ein `UPDATE_COMPLETE` Stack-Ereignis ausgelöst. Weitere Informationen finden Sie unter [Überwachung des Fortschritts einer Stack-Aktualisierung](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-monitor-stack.html) im *AWS CloudFormation Benutzerhandbuch*. 

1. Nachdem das Stack-Update abgeschlossen ist, öffnen [Sie die Seite Startvorlagen](https://console.aws.amazon.com/ec2/v2/#LaunchTemplates) und [Startkonfigurationen](https://console.aws.amazon.com/ec2/v2/home?#LaunchConfigurations) der Amazon EC2-Konsole. Sie werden feststellen, dass eine neue Startvorlage erstellt und die Startkonfiguration gelöscht wurde. 

## Referenz für die Abbildung der Startkonfiguration
<a name="launch-configuration-mapping-reference"></a>

Zu Referenzzwecken sind in der folgenden Tabelle alle Eigenschaften der [AWS::AutoScaling::LaunchConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-launchconfiguration.html)Ressource auf oberster Ebene mit ihren entsprechenden Eigenschaften in der [AWS::EC2::LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html)Ressource aufgeführt.


| Startkonfiguration Quelleigenschaft | Ziel-Eigenschaft der Startvorlage | 
| --- | --- | 
| AssociatePublicIpAddress | NetworkInterfaces.AssociatePublicIpAddress | 
| BlockDeviceMappings | BlockDeviceMappings | 
| ClassicLinkVPCId | Nicht verfügbar¹ | 
| ClassicLinkVPCSecurityGroups | Nicht verfügbar¹ | 
| EbsOptimized | EbsOptimized | 
| IamInstanceProfile | Entweder IamInstanceProfile.Arn oder IamInstanceProfile.Name, jedoch nicht beides.  | 
| ImageId | ImageId | 
| InstanceId | InstanceId | 
| InstanceMonitoring | Monitoring.Enabled | 
| InstanceType | InstanceType | 
| KernelId | KernelId | 
| KeyName | KeyName | 
| LaunchConfigurationName | LaunchTemplateName | 
| MetadataOptions | MetadataOptions | 
| PlacementTenancy | Placement.Tenancy  | 
| RamDiskId | RamDiskId | 
| SecurityGroups | Entweder SecurityGroupIds oder NetworkInterfaces.Groups, jedoch nicht beides. | 
| SpotPrice | InstanceMarketOptions.SpotOptions.MaxPrice | 
| UserData | UserData | 

¹ Die `ClassicLinkVPCSecurityGroups` Eigenschaften `ClassicLinkVPCId` und können nicht in einer Startvorlage verwendet werden, da EC2-Classic nicht mehr verfügbar ist.