Löschen von Stack-Instances aus dem Stack-Set - AWS CloudFormation

Löschen von Stack-Instances aus dem Stack-Set

Sie können Stack-Instances entweder mithilfe der AWS Management Console oder mithilfe von AWS CloudFormation-Befehlen in der AWS CLI aus einem Stack-Set löschen. Bei diesem Verfahren löschen wir alle Stacks.

Bei einem Stack-Set mit serviceverwalteten Berechtigungen wird, wenn Sie Stack-Instances aus einer Organisationseinheit (OU) der obersten Ebene löschen, die OU als Ziel des Stack-Sets entfernt.

Löschen von Stack-Instances mithilfe der AWS Management Console

  1. Öffnen Sie die AWS CloudFormation-Konsole unter https://console.aws.amazon.com/cloudformation.

  2. Wählen Sie im Navigationsbereich StackSets aus. Wählen Sie auf der StackSets-Seite das Stack-Set aus, das Sie unter Erstellen eines Stack-Sets erstellt haben.

  3. Wählen Sie nach Auswahl des Stack-Sets die Option Delete stacks from StackSet (Stacks aus StackSet löschen) im Menü Actions (Aktionen) aus.

    
                        Auswählen der Option zum Löschen von Stacks aus dem Stack-Set im Menü "Actions (Aktionen)".
  4. Wählen Sie auf der Seite Set deployment options (Bereitstellungsoptionen festlegen) die Konten aus, aus denen Stack-Instances gelöscht werden sollen.

    1. [Selbstverwaltete Berechtigungen] Wählen Sie für Accounts (Konten) die Option Deploy stacks in accounts (Stacks in Konten bereitstellen) aus. Fügen Sie Ihre Zielkonto-Zahlen in das Textfeld ein und trennen Sie dabei die einzelnen Zahlen durch Kommas.

      [Serviceverwaltete Berechtigungen] Wählen Sie für Accounts (Konten) die Option Deploy stacks in organizational units (Stacks in Organisationseinheiten bereitstellen) aus. Fügen Sie die IDs der OUs ein, die Ihr Stack-Set anvisiert.

      Anmerkung

      StackSets löscht auch Stack-Instances von untergeordneten OUs der angegebenen Ziel-OUs.

      
                                Auswählen von Organisationseinheiten, aus denen Stack-Instances gelöscht werden sollen.
    2. Wählen Sie unter Deployment regions (Bereitstellungsregionen) die Regionen aus, aus denen Sie Stack-Instances löschen möchten. In diesem Fall ist dies Region USA Ost (N.-Virginia) und Region USA West (Oregon).

    3. Für Deployment options (Bereitstellungsoptionen):

      • Für Maximum concurrent accounts (Maximale Anzahl paralleler Konten) behalten Sie die Standardwerte Number (Zahl) und 1 bei.

      • Behalten Sie für Failure tolerance (Fehlertoleranz) die Standardwerte Number (Zahl) und 0 bei.

      Behalten Sie im Bereich Retain stacks (Stacks beibehalten) die Standardeinstellung („disabled (deaktiviert)“) bei.

      Beim Löschen von Stacks aus einem Stack-Set erlaubt Ihnen die Option Retain stacks, die Stack-Instances aus Ihrem Stack-Set zu entfernen, während die Stacks und die damit assoziierten Ressourcen gespeichert werden. Wenn Sie Stacks in einem Stack-Set mithilfe der Option Retain stacks speichern, behalten die Ressourcen des Stacks ihren aktuellen Status bei, aber der Stack ist danach kein Bestandteil des Stack-Sets mehr. Sie können weder einen beibehaltenen Stack neu zuordnen noch einen vorhandenen gespeicherten Stack einem neuen Stack-Set hinzufügen. Der Stack ist auf Dauer unabhängig von einem Stack-Set. Im Rahmen dieses Verfahrens löschen wir alle Stacks, bevor wir das gesamte Stack-Set löschen. Auf diese Weise werden keine Stacks beibehalten.

      Wählen Sie Next.

  5. Überprüfen Sie auf der Seite Review (Überprüfen) Ihre Auswahl und wählen Sie anschließend Submit (Einsenden) aus.

  6. Nach dem Löschen der Stacks können Sie auf der StackSet-Detailseite auf der Registerkarte Stack instances (Stack-Instances) überprüfen, ob Stack-Instances aus Ihrem Stack-Set gelöscht wurden.

    
                        Verwenden der Registerkarte „Stack instances (Stack-Instances)“ der StackSet-Detailseite zum Anzeigen von Informationen zu Ihren Stack-Instances.

Löschen von Stack-Instances mithilfe der AWS CLI

Wenn Sie als delegierter Administrator agieren, müssen Sie den Parameter --call-as jedes Mal auf DELEGATED_ADMIN festlegen, wenn Sie einen StackSets-Befehl ausführen.

--call-as DELEGATED_ADMIN
  1. Führen Sie den Befehl delete-stack-instances aus. Geben Sie für --stack-set-name den Stack-Set-Namen my-awsconfig-stackset an.

    Legen Sie die Fehlertoleranz und die maximale Anzahl gleichzeitiger Konten fest, indem Sie im Parameter FailureToleranceCount wie im folgenden Beispiel den Wert für 0 auf MaxConcurrentCount und für 1 auf --operation-preferences festlegen. Wenn Sie stattdessen Prozentwerte sehen möchten, verwenden Sie FailureTolerancePercentage oder MaxConcurrentPercentage. Für die Zwecke dieser Anleitung verwenden wir die Anzahl und keine Prozentwerte.

    Anmerkung

    Der Wert von MaxConcurrentCount hängt vom Wert von FailureToleranceCount ab. MaxConcurrentCount ist höchstens eins mehr als FailureToleranceCount.

    Da --retain-stacks ein erforderlicher Parameter von delete-stack-instances ist, sollten Sie --no-retain-stacks hinzufügen, wenn Sie keine Stacks beibehalten (speichern) möchten. Im Rahmen dieses Walkthroughs fügen wir den Parameter --no-retain-stacks hinzu, da wir keine Stacks beibehalten.

    [Selbstverwaltete Berechtigungen] Ersetzen Sie account_ID durch die Konten, mit denen Sie Ihren Stack in Erstellen eines Stack-Sets erstellt haben.

    aws cloudformation delete-stack-instances --stack-set-name my-awsconfig-stackset --accounts '["0123456789012"]' --regions '["eu-west-1"]' --operation-preferences FailureToleranceCount=0,MaxConcurrentCount=1 --no-retain-stacks

    [Serviceverwaltete Berechtigungen] Geben Sie für --deployment-targets die Organisations-(Stamm-)ID oder OU-IDs an, in denen Sie Stack-Instances erstellt haben.

    Anmerkung

    StackSets löscht auch Stack-Instances von untergeordneten OUs der angegebenen Ziel-OUs.

    aws cloudformation delete-stack-instances --stack-set-name my-awsconfig-stackset --deployment-targets OrganizationalUnitIds='["ou-rcuk-1x5jlwo", "ou-rcuk-slr5lh0a"]' --regions '["eu-west-1"]' --no-retain-stacks
  2. Optional können Sie nach Abschluss des Löschvorgangs überprüfen, ob die Stack-Instances tatsächlich aus dem Stack-Set gelöscht wurden, indem Sie den Befehl describe-stack-set-operation ausführen. Mit diesem Befehl werden der Status und die Ergebnisse der Operation zum Löschen von Stacks angezeigt. Verwenden Sie als --operation-id die Operations-ID, die durch den Befehl delete-stack-instances zurückgegeben wurde.

    aws cloudformation describe-stack-set-operation --stack-set-name stackSetName --operation-id ddf16f54-ad62-4d9b-b0ab-3ed8e9example