Importieren eines Stacks inAWS CloudFormation StackSets - AWS CloudFormation

Importieren eines Stacks inAWS CloudFormation StackSets

Der AWS CloudFormation Stack-Import-Vorgang kann vorhandene Stacks in neue oder vorhandene Stack-Sets importieren, sodass Sie vorhandene Stacks in einem Vorgang auf einen Stack-Set migrieren können. StackSetserweitert die Funktionalität von Stacks, sodass Sie Stacks über mehrere Konten und Regionen mit einem einzigen Vorgang erstellen, aktualisieren oder löschen können. Verwenden Sie den Stack-Importvorgang, um bis zu zehn Stacks in einen neuen Stack zu importieren, der im selben Konto wie der Quell-Stack oder in einem anderen Administratorkonto und einer anderen Region festgelegt ist, indem Sie die Stack-ID des Stacks angeben, den Sie importieren möchten. Der Stack-Import ist überall verfügbar, wo StackSets immer unterstützt wird. Informationen zur Unterstützung von StackSets in der Region finden Sie unter Regionale Unterstützung von StackSets.

Wenn Sie beispielsweise über einen Stack verfügen, der eine Administrator AWS Identity and Access Management (IAM)-Rolle für mehrere Konten angibt, können Sie diesen Stack in ein Stack-Set importieren. Durch die Verwendung des Stack-Imports vermeiden Sie Ausfallzeiten und Ausfälle, ohne diese Ressourcen zu löschen und neu zu erstellen. Sobald der Stack in einen Stack-Set importiert wurde, wird der ursprüngliche Stack zu einer Stack-Instance des neu generierten Stack-Sets.

In den folgenden Abschnitten finden Sie weitere Informationen zum Importieren eines vorhandenen Stacks in einen Stack-Set.

Anforderungen für den Stack-Import

Bevor Sie einen Stack in ein Stack-Set importieren, stellen Sie sicher, dass Sie die folgenden Anforderungen verstehen:

  • Die Funktion zum Stack-Import erfordert ein Administratorkonto, in dem Sie ein Stack-Set erstellen, und ein Zielkonto, das einen Stack enthält.

  • Das Zielkonto muss über die Berechtigung verfügen, den GetTemplate-Vorgang mit der Eingabe von Stack-ID oder ARN zu verwenden. Aus diesem Grund müssen Ihrem Administratorkonto AWSCloudFormationStackSetsAdminstration oder AWSCloudFormationStackSetsExectionRole Berechtigungen erteilt werden.

  • Stacks können nur zu einem Stack-Set gehören.

  • Sie können Stack-Tags in das Stack-Set implementieren, indem Sie Tags explizit als Parameter im Stack-Importvorgang angeben.

  • Die benutzerdefinierten Parameter-Überschreibungen eines Stacks sind während des Importvorgangs nicht betroffen.

  • Der Stack-Importvorgang unterstützt das Erstellen eines Stack-Sets mit selbstverwalteten Berechtigungen.

  • Die StackSets-Kontingente und Stack-Instances gelten beim Importieren von Stacks. Weitere Informationen zu Kontingenten finden Sie unter AWS CloudFormation-Kontingente-.

Importieren eines Stacks in ein Stack-Set (Konsole)

Importieren Sie einen Stack in ein neues Stack-Set

Importieren Sie einen Stack in ein neues Stack-Set mit dem AWS Management Console

Um einen vorhandenen Stack in ein Stack-Set zu importieren, identifizieren Sie einen Stack, der die zu importierende Ressource enthält.

  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die AWS CloudFormation-Konsole unter https://console.aws.amazon.com/cloudformation.

  2. Wählen Sie im Navigationsbereich StackSets aus.

  3. Wählen Sie oben auf der Seite StackSets die Option Create StackSet (StackSet erstellen) aus.

  4. Geben Sie auf der Seite Vorlage auswählen eine Vorlage mit einer der folgenden Optionen an, und wählen Sie Weiter aus.

    • Wählen Sie Amazon S3-URL aus und geben Sie die URL für Ihre Vorlage im Textfeld an.

    • Wählen Sie Vorlagendatei hochladen aus und suchen Sie nach Ihrer Vorlage.

    • Wählen Sie Aus Stack-ID und geben Sie Ihre Stack-ID ein.

  5. Geben Sie auf der Seite StackSet-Details angeben den Namen eines Stack-Sets ein, das Sie erstellen möchten, und wählen Sie Weiter aus.

    (Optional) Geben Sie eine Beschreibung des Stack-Sets ein.

  6. Überprüfen Sie auf der Seite StackSet-Optionen konfigurieren Ihre Auswahl und wählen SieWeiter aus.

  7. Wählen Sie auf der Seite Bereitstellungsoptionen festlegen die Option Stacks zum Stack-Set importieren aus.

  8. Geben Sie die Stack-ID des zu importierenden Stapels in das Feld Zu importierende Stacks ein. Beispiel, arn:123456789101:us-east-1:StackToImport.

    (Optional) Wählen Sie Weitere Stack-ID hinzufügen und geben Sie die Stack-ID eines anderen Stacks ein, den Sie importieren möchten. Sie können bis zu zehn Stacks pro Stack-Importvorgang hinzufügen.

  9. Überprüfen Sie Ihre Bereitstellungsoptionen und wählen Sie Weiter aus.

  10. Überprüfen Sie Ihre Auswahl und die Eigenschaften Ihres Stack-Sets auf der Seite Review. Wenn Sie bereit sind, Ihren Stack in Ihr Stack-Set zu importieren, wählen Sie Absenden aus.

Ergebnisse: Der importierte Stack ist jetzt eine Stack-Instance des angegebenen Stack-Sets. Weitere Informationen zum Stack-Importstatus finden Sie unter Stack-Set- und Stack-Instance-Statuscodes.

Importieren Sie einen Stack in ein vorhandenes Stack-Set

Importieren Sie einen Stack in ein vorhandenes Stack-Set mit dem AWS Management Console

Um einen vorhandenen Stack in ein Stack-Set zu importieren, identifizieren Sie einen Stack, der die zu importierende Ressource enthält.

  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die AWS CloudFormation-Konsole unter https://console.aws.amazon.com/cloudformation.

  2. Wählen Sie im Navigationsbereich StackSets aus.

  3. Wählen Sie auf der Seite StackSets den Stack-Set aus, in den Sie einen Stack importieren möchten.

  4. Wählen Sie nach Auswahl des Stack-Sets die Option Neue Stacks zu StackSet hinzufügen im Menü Aktionen aus.

  5. Wählen Sie auf der Seite Bereitstellungsoptionen festlegen die Option Stack zum Stack-Set importieren aus, und geben Sie die Stack-ID des Stacks, den Sie importieren möchten, in das Feld Zu importierende Stacks ein. Beispiel, arn:123456789101:us-east-1:StackToImport.

    (Optional) Wählen Sie Weitere Stack-ID hinzufügen und geben Sie die Stack-ID eines anderen Stacks ein, den Sie importieren möchten. Sie können bis zu zehn Stacks pro Stack-Importvorgang hinzufügen.

  6. Wählen Sie Next.

  7. Überprüfen Sie auf der Seite Überschreibungen angeben Ihre Auswahl und wählen Sie Weiter aus.

  8. Überprüfen Sie Ihre Auswahl und die Eigenschaften Ihres Stack-Sets auf der Seite Review. Wenn Sie bereit sind, Ihr Stack-Set zu erstellen, wählen Sie Absenden aus.

Ergebnisse: Der importierte Stack ist jetzt eine Stack-Instance des angegebenen Stack-Sets. Weitere Informationen zum Stack-Importstatus finden Sie unter Stack-Set- und Stack-Instance-Statuscodes.

Importieren eines Stacks in ein Stack-Set (AWS CLI)

Importieren Sie einen Stack in ein Stack-Set

Um einen vorhandenen Stack in einen Stack-Set zu importieren, identifizieren Sie einen Stack, der die Ressourcen enthält, die Sie importieren möchten. In diesem Beispiel ist der zu importierende Stack arn:123456789101:us-east-1:StackToImport.

  1. Erstellen Sie aus einer Stack-ID ein Stack-Set.

    create-stackset --stack-id "arn:123456789101:us-east-1:StackToImport" --stackSetName "SingleStackSetName" --permission-model "SELF_MANAGED" --administration-role-arn "AdminRole" --execution-role-name "ExecutionRole"
  2. Importieren Sie einen bestimmten Stack in Ihr Stack-Set.

    import-stack-to-stackset --stack-ids "arn:123456789101:us-east-1:StackToImport" --stackSet "SingleStackSetName" --mutate --permission-model SELF_MANAGED --administration-role-arn "AdminRole" --execution-role-name "ExecutionRole"
  3. Klonen Sie den importierten Stack in andere Regionen und Konten.

    create-stack-instances --stack-set-name "StackSetToWhichStackimported" --accounts "123556789101" --regions "us-east-1"

Importieren von Stacks in ein Stack-Set

Um vorhandene Stacks in ein Stack-Set zu importieren, identifizieren Sie die Stacks, die die Ressourcen enthalten, die Sie importieren möchten. In diesem Beispiel ist der zu importierende Stack arn:123456789101:us-east-1:StackToImport1 und arn:123456789101:us-east-1:StackToImport2.

  1. Erstellen Sie aus einer Stack-ID ein Stack-Set.

    create-stackset --stack-id "arn:123456789101:us-east-1:StackToImport" --stackSetName "StackSetName" --permission-model "SELF_MANAGED" --administration-role-arn "AdminRole" --execution-role-name "ExecutionRole"
  2. Importieren Sie angegebene Stacks in Ihr Stack-Set.

    import-stacks-to-stackset --stack-ids "arn:123456789101:us-east-1:StackToImport1, arn:123456789101:us-east-1:StackToImport2" --stackSet "StackSetName" --permission-model SELF_MANAGED --administration-role-arn "AdminRole" --execution-role-name "ExecutionRole"
  3. Klonen Sie den importierten Stack in andere Regionen und Konten.

    create-stack-instances --stack-set-name "StackSetName" --accounts "123456789012" --regions "us-east-1"

Wiederherstellen eines Stack-Importvorgangs

Führen Sie die folgenden Aufgaben aus, um einen Stack-Importvorgang rückgängig zu machen:

  1. Geben Sie für jede Ressource, die Sie nach dem Löschen der Stack-Instance beibehalten möchten, ein DeletionPolicy-Attribut von Retain an. Weitere Informationen finden Sie unter Wiederherstellen eines Importvorgangs.

  2. Löschen von Stack-Instances aus dem Stack-Set. Weitere Informationen finden Sie unter Löschen von Stack-Instances aus Ihrem Stack-Set.

  3. Löschen Ihres Stack-Sets. Weitere Informationen finden Sie unter Löschen eines Stack-Sets.

Ergebnisse: Der Rückwärtsvorgang hat die Stack-Instance gelöscht und die Ressourcen des Stacks beibehalten.