AWS CloudFormation StackSets Mit vom Service verwalteten Berechtigungen erstellen - AWS CloudFormation

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.

AWS CloudFormation StackSets Mit vom Service verwalteten Berechtigungen erstellen

Mit vom Dienst verwalteten Berechtigungen können Sie Stacks für Konten bereitstellen, die von AWS Organizations in bestimmten Regionen verwaltet werden. Bei diesem Modell müssen Sie nicht die erforderlichen IAM-Rollen erstellen, sondern CloudFormation erstellt die IAM-Rollen in Ihrem Namen. Weitere Informationen finden Sie unter Aktivieren Sie den vertrauenswürdigen Zugriff.

Überlegungen

Bevor Sie eine StackSet mit vom Service verwalteten Berechtigungen erstellen, sollten Sie Folgendes berücksichtigen:

  • StackSets mit vom Dienst verwalteten Berechtigungen werden im Verwaltungskonto erstellt, auch solche, StackSets die von delegierten Administratoren erstellt wurden.

  • Sie StackSet können Ihre gesamte Organisation (einschließlich aller Konten) oder bestimmte Organisationseinheiten (OUs) als Ziel angeben. Wenn Sie eine übergeordnete Organisationseinheit ins StackSet Visier nehmen, zielt sie auch auf jedes Kind ab OUs. Wenn Ihre StackSet Ziele spezifisch sind OUs, OUs sind standardmäßig alle Konten innerhalb dieser Ziele enthalten. Sie können jedoch mithilfe der Kontofilteroptionen auf bestimmte Konten abzielen.

  • Mehrere StackSets können auf dieselbe Organisation oder Organisationseinheit abzielen.

  • Sie StackSet können nicht auf Konten außerhalb Ihrer Organisation abzielen.

  • Sie StackSet können keine verschachtelten Stacks bereitstellen.

  • CloudFormation stellt keine Stacks für das Verwaltungskonto der Organisation bereit, auch wenn sich das Verwaltungskonto in Ihrer Organisation oder in einer Organisationseinheit in Ihrer Organisation befindet.

  • Die automatische Bereitstellung ist auf der StackSet Ebene festgelegt. Sie können automatische Bereitstellungen nicht selektiv für OUs Konten oder Regionen anpassen.

  • Die Berechtigungen der IAM-Prinzipalentität (Benutzer, Rolle oder Gruppe), mit der Sie sich beim Verwaltungskonto anmelden, bestimmen, ob Sie für die Bereitstellung autorisiert sind. StackSets Eine IAM-Beispielrichtlinie, die Berechtigungen für die Bereitstellung in einer Organisation erteilt, finden Sie unter Beschränken Sie Stack-Set-Operationen auf der Grundlage von Region und Ressourcentypen.

  • Delegierte Administratoren haben volle Berechtigungen für die Bereitstellung auf Konten Ihrer Organisation. Das Verwaltungskonto kann delegierte Administratorberechtigungen nicht auf die Bereitstellung auf bestimmte Vorgänge OUs oder die Ausführung bestimmter StackSet Vorgänge beschränken.

Erstellen Sie eine StackSet mit vom Service verwalteten Berechtigungen (Konsole)

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

  2. Wählen Sie in der Navigationsleiste oben auf dem Bildschirm die aus, von der aus Sie AWS-Region die StackSet verwalten möchten.

  3. StackSets.

  4. Wählen Sie oben StackSetsauf der Seite die Option Erstellen aus StackSet.

  5. Wählen Sie unter Permissions (Berechtigungen) die Option Service-managed permissions (Serviceverwaltete Berechtigungen) aus.

    Anmerkung

    Wenn der vertrauenswürdige Zugriff mit deaktiviert AWS Organizations ist, wird ein Banner angezeigt. Vertrauenswürdiger Zugriff ist erforderlich, um eine StackSet mit vom Dienst verwalteten Berechtigungen zu erstellen oder zu aktualisieren. Nur der Administrator im Verwaltungskonto der Organisation verfügt über Berechtigungen für Aktivieren Sie den vertrauenswürdigen Zugriff für StackSets mit AWS Organizations.

  6. Wählen Sie unter Voraussetzung — Vorlage vorbereiten die Option Vorlage ist bereit aus.

  7. Wählen Sie unter Specify template (Vorlage angeben) entweder die URL für den S3-Bucket, der Ihre Stack-Vorlage enthält, aus oder laden Sie eine Stack-Vorlagendatei hoch. Wählen Sie anschließend Weiter.

  8. Geben Sie auf der Seite „ StackSet Details angeben“ einen Namen für die ein StackSet, geben Sie alle Parameter an, und klicken Sie dann auf Weiter.

  9. Geben Sie auf der Seite StackSet Optionen konfigurieren unter Tags alle Tags an, die auf Ressourcen in Ihrem Stack angewendet werden sollen. Weitere Informationen zur Verwendung von Tags finden Sie im AWSBenutzerhandbuch unter Organisieren und Nachverfolgen von Kosten mithilfe von AWS Kostenzuweisungs-Tags.AWS Fakturierung und Kostenmanagement

  10. Wählen Sie für die Ausführungskonfiguration die Option Aktiv aus, um CloudFormation die optimierte Betriebsbehandlung zu aktivieren:

    • Konfliktfreie Operationen werden gleichzeitig ausgeführt, um die Bereitstellungszeiten zu verkürzen.

    • Widersprüchliche Vorgänge werden automatisch in die Warteschlange gestellt und in der Reihenfolge verarbeitet, in der sie angefordert wurden.

    Solange Vorgänge ausgeführt werden oder sich in der Warteschlange befinden, werden alle eingehenden Vorgänge in die CloudFormation Warteschlange gestellt, auch wenn sie nicht miteinander in Konflikt stehen. Während dieser Zeit können Sie die Ausführungseinstellungen nicht ändern.

  11. Wenn Ihre Vorlage IAM-Ressourcen enthält, wählen Sie unter Capabilities die Option Ich bestätige, dass diese Vorlage IAM-Ressourcen erstellen kann aus, um anzugeben, dass Sie IAM-Ressourcen in der Vorlage verwenden möchten. Weitere Informationen finden Sie unter Bestätigen von IAM-Ressourcen in CloudFormation-Vorlagen.

  12. Wählen Sie Weiter aus, um fortzufahren und den vertrauenswürdigen Zugriff zu aktivieren, falls er noch nicht aktiviert ist.

  13. Führen Sie auf der Seite Bereitstellungsoptionen festlegen unter Bereitstellungsziele einen der folgenden Schritte aus:

    • Um die Bereitstellung für alle Konten in Ihrer Organisation durchzuführen, wählen Sie In Organisation bereitstellen aus.

    • Um die Bereitstellung nur für alle Konten vorzunehmen OUs, wählen Sie Für Organisationseinheiten bereitstellen (OUs) aus. Wählen Sie Add an OU (OU hinzufügen) aus und fügen Sie dann die Ziel-OU-ID in das Textfeld ein. Wiederholen Sie den Vorgang für jede neue Ziel-OU.

    Wenn Sie für den Filtertyp Konto die Option Für Organisationseinheiten bereitstellen (OUs) ausgewählt haben, können Sie Ihre Bereitstellungsziele auf bestimmte einzelne Konten festlegen, indem Sie eine der folgenden Optionen wählen und die Kontonummern angeben.

    • Keine (Standard) — Stacks werden für alle Konten in den angegebenen OUs Konten bereitgestellt.

    • Schnittmenge — Stellen Sie Stacks für bestimmte einzelne Konten innerhalb der ausgewählten Konten bereit. OUs

    • Unterschied — Stellen Sie Stacks für alle Konten in den ausgewählten Konten bereit, OUs mit Ausnahme bestimmter Konten.

    • Vereinigung — Stellt Stacks für die angegebenen Konten OUs sowie für weitere individuelle Konten bereit.

  14. Wählen Sie unter Automatische Bereitstellung aus, ob die Bereitstellung automatisch für Konten erfolgen soll, die der Zielorganisation hinzugefügt werden, oder für Konten, die der Zielorganisation hinzugefügt werden, oder OUs für future Konten. Weitere Informationen finden Sie unter Automatische Bereitstellungen für StackSets in aktivieren oder deaktivieren AWS Organizations.

  15. Wenn Sie die automatische Bereitstellung aktiviert haben, wählen Sie unter Account removal behavior (Kontoentfernungsverhalten) aus, ob Stack-Ressourcen beibehalten oder gelöscht werden, wenn ein Konto aus einer Zielorganisation oder OU entfernt wird.

    Anmerkung

    Wenn Stapel beibehalten ausgewählt ist, werden Stapel aus Ihren entfernt StackSet, aber die Stapel und die zugehörigen Ressourcen bleiben erhalten. Die Ressourcen bleiben in ihrem aktuellen Zustand, sind aber nicht mehr Teil von. StackSet

  16. Wählen Sie unter Regionen angeben die Regionen aus, in denen Sie Stacks bereitstellen möchten.

  17. Gehen Sie für Bereitstellungsoptionen wie folgt vor:

    • Geben Sie unter Maximale Anzahl gleichzeitiger Konten an, wie viele Konten gleichzeitig verarbeitet werden.

    • Geben Sie unter Fehlertoleranz die maximale Anzahl von Kontoausfällen an, die pro Region zulässig sind. Sobald dieses Limit erreicht ist, wird der Vorgang beendet und nicht in andere Regionen übertragen.

    • Wählen Sie für die Regionenparallelität aus, wie Regionen verarbeitet werden sollen: Sequentiell (jeweils eine Region) oder Parallel (mehrere Regionen gleichzeitig).

    • Wählen Sie für den Parallelitätsmodus aus, wie sich Parallelität während der Ausführung des Vorgangs verhält.

      • Strikte Fehlertoleranz — Reduziert den Grad der Parallelität der Konten bei Ausfällen und bleibt innerhalb der Fehlertoleranz +1.

      • Weiche Fehlertoleranz — Behält die angegebene Parallelitätsstufe (den Wert für Maximale Anzahl gleichzeitiger Konten) unabhängig von Ausfällen bei.

  18. Wählen Sie Next (Weiter), um fortzufahren.

  19. Vergewissern Sie sich auf der Seite „Überprüfen“, dass StackSet Sie die Bereitstellung für die richtigen Konten in den richtigen Regionen durchführen, und wählen Sie dann „Erstellen“. StackSet

    Die StackSet Detailseite wird geöffnet. Sie können den Fortschritt und den Status der Erstellung der Stacks in Ihrem StackSet einsehen.

Erstellen Sie eine StackSet mit vom Service verwalteten Berechtigungen ()AWS CLI

Folgen Sie den Schritten in diesem Abschnitt, um Folgendes AWS CLI zu verwenden:

  • Erstellen Sie den StackSet Container.

  • Stellen Sie Stack-Instanzen bereit.

Anmerkung

Wenn Sie als delegierter Administrator agieren, müssen Sie Folgendes --call-as DELEGATED_ADMIN in den Befehl aufnehmen.

Deploy to your organization
Um eine zu erstellen StackSet
  1. Verwenden Sie den create-stack-setBefehl, um einen neuen StackSet Namen zu erstellenmy-stackset. Das folgende Beispiel verwendet eine in einem S3-Bucket gespeicherte Vorlage, ermöglicht automatische Bereitstellungen und bewahrt Stapel, wenn Konten entfernt werden. Weitere Informationen finden Sie unter Automatische Bereitstellungen für StackSets in aktivieren oder deaktivieren AWS Organizations.

    aws cloudformation create-stack-set \ --stack-set-name my-stackset \ --template-url https://s3.region-code.amazonaws.com/amzn-s3-demo-bucket/MyApp.template \ --permission-model SERVICE_MANAGED \ --auto-deployment Enabled=true,RetainStacksOnAccountRemoval=true
  2. Verwenden Sie den list-stack-setsBefehl, um zu bestätigen, dass Ihr erstellt wurde StackSet . Ihr neues StackSet wird in den Ergebnissen aufgeführt.

    aws cloudformation list-stack-sets
    • Wenn Sie die --call-as Option auf einstellen, DELEGATED_ADMIN während Sie in Ihrem Mitgliedskonto angemeldet sind, werden alle StackSets mit vom Dienst verwalteten Berechtigungen im Verwaltungskonto der Organisation list-stack-sets zurückgegeben.

    • Wenn Sie die --call-as Option auf einstellen, SELF während Sie bei Ihrem angemeldet sind AWS-Konto, werden alle selbstverwalteten Daten StackSets in Ihrem list-stack-sets zurückgegeben. AWS-Konto

    • Wenn Sie die --call-as Option auf einstellen, SELF während Sie beim Verwaltungskonto der Organisation angemeldet sind, werden alle Daten StackSets im Verwaltungskonto der Organisation list-stack-sets zurückgegeben.

  3. Verwenden Sie den create-stack-instancesBefehl, um Stapel zu Ihrem StackSet hinzuzufügen. Geben Sie für --deployment-targets diese Option die Root-ID der Organisation an, die für alle Konten in Ihrer Organisation bereitgestellt werden soll.

    Legen Sie mithilfe der --operation-preferences Option Einstellungen für die gleichzeitige Kontoverarbeitung und andere Bereitstellungseinstellungen fest. In diesem Beispiel werden auf der Anzahl basierende Einstellungen verwendet. Beachten Sie, dass dieser MaxConcurrentCount Wert FailureToleranceCount + 1 nicht überschreiten darf. Verwenden Sie für prozentuale Einstellungen stattdessen FailureTolerancePercentage oderMaxConcurrentPercentage.

    aws cloudformation create-stack-instances --stack-set-name my-stackset \ --deployment-targets OrganizationalUnitIds=r-a1b2c3d4e5 \ --regions us-west-2 us-east-1 \ --operation-preferences MaxConcurrentCount=1,FailureToleranceCount=0

    Weitere Informationen finden Sie unter CreateStackInstances in der AWS CloudFormation -API-Referenz.

  4. Verwenden Sie den folgenden Befehloperation-id, um zu überprüfen, ob Ihre Stapel erfolgreich create-stack-instances erstellt wurden, und verwenden Sie den folgenden describe-stack-set-operationBefehl, um zu überprüfen, ob Ihre Stapel erfolgreich erstellt wurden.

    aws cloudformation describe-stack-set-operation \ --stack-set-name my-stackset \ --operation-id operation_ID
Deploy to organizational units (OUs)
Um eine zu erstellen StackSet
  1. Verwenden Sie den create-stack-setBefehl, um einen neuen StackSet Namen zu erstellenmy-stackset. Das folgende Beispiel verwendet eine in einem S3-Bucket gespeicherte Vorlage und enthält einen Parameter, der a KeyPairName mit dem Wert festlegt TestKey

    aws cloudformation create-stack-set \ --stack-set-name my-stackset \ --template-url https://s3.region-code.amazonaws.com/amzn-s3-demo-bucket/MyApp.template \ --permission-model SERVICE_MANAGED \ --parameters ParameterKey=KeyPairName,ParameterValue=TestKey
  2. Verwenden Sie den list-stack-setsBefehl, um zu bestätigen, dass Ihr erstellt StackSet wurde. Ihr neues StackSet wird in den Ergebnissen aufgeführt.

    aws cloudformation list-stack-sets
    • Wenn Sie die --call-as Option auf einstellen, DELEGATED_ADMIN während Sie in Ihrem Mitgliedskonto angemeldet sind, werden alle StackSets mit vom Dienst verwalteten Berechtigungen im Verwaltungskonto der Organisation list-stack-sets zurückgegeben.

    • Wenn Sie die --call-as Option auf einstellen, SELF während Sie bei Ihrem angemeldet sind AWS-Konto, werden alle selbstverwalteten Daten StackSets in Ihrem list-stack-sets zurückgegeben. AWS-Konto

    • Wenn Sie die --call-as Option auf einstellen, SELF während Sie beim Verwaltungskonto der Organisation angemeldet sind, werden alle Daten StackSets im Verwaltungskonto der Organisation list-stack-sets zurückgegeben.

  3. Verwenden Sie den create-stack-instancesBefehl, um Stapel zu Ihrem StackSet hinzuzufügen. Geben Sie für die --deployment-targets Option die Organisationseinheit an, in der die Bereitstellung erfolgen IDs soll.

    Legen Sie mithilfe der --operation-preferences Option Einstellungen für die gleichzeitige Kontoverarbeitung und andere Bereitstellungseinstellungen fest. In diesem Beispiel werden auf der Anzahl basierende Einstellungen verwendet. Beachten Sie, dass dieser MaxConcurrentCount Wert FailureToleranceCount + 1 nicht überschreiten darf. Verwenden Sie für prozentuale Einstellungen stattdessen FailureTolerancePercentage oderMaxConcurrentPercentage.

    aws cloudformation create-stack-instances --stack-set-name my-stackset \ --deployment-targets OrganizationalUnitIds=ou-rcuk-1x5j1lwo,ou-rcuk-slr5lh0a \ --regions us-west-2 us-east-1 \ --operation-preferences MaxConcurrentCount=1,FailureToleranceCount=0

    Weitere Informationen finden Sie unter CreateStackInstances in der AWS CloudFormation -API-Referenz.

  4. Verwenden Sie den folgenden Befehloperation-id, um zu überprüfen, ob Ihre Stapel erfolgreich create-stack-instances erstellt wurden, und verwenden Sie den folgenden describe-stack-set-operationBefehl, um zu überprüfen, ob Ihre Stapel erfolgreich erstellt wurden.

    aws cloudformation describe-stack-set-operation \ --stack-set-name my-stackset \ --operation-id operation_ID
Deploy to specific accounts in OUs

Sie können auf bestimmte Organisationseinheiten (OUs) abzielen und mithilfe der Kontofilterung genau steuern, welche Konten Stack-Bereitstellungen erhalten. Standardmäßig werden Stacks für alle Konten innerhalb der angegebenen Konten bereitgestellt, OUs wenn keine Kontofilterung angegeben ist.

In der AWS CLI geben Sie die Kontofilterung mit der --deployment-targets Option an. Weitere Informationen finden Sie unter DeploymentTargets.

Nachdem Sie den StackSet Container mit dem create-stack-set Befehl erstellt haben, verwenden Sie eines der folgenden Beispiele, um Stacks für bestimmte Konten bereitzustellen.

Zielt auf bestimmte Konten in einer Organisationseinheit ab

Im folgenden Beispiel werden Stacks nur für die Konten A1 und A2 in bereitgestellt. OU1

aws cloudformation create-stack-instances --stack-set-name my-stackset \ --deployment-targets OrganizationalUnitIds=OU1,Accounts=A1,A2,AccountFilterType=INTERSECTION \ --regions us-west-2 us-east-1
Schließt Konten aus einer Organisationseinheit aus

Im folgenden Beispiel werden Stacks für alle Konten OU1 außer den Konten A1 und A2 bereitgestellt.

aws cloudformation create-stack-instances --stack-set-name my-stackset \ --deployment-targets OrganizationalUnitIds=OU1,Accounts=A1,A2,AccountFilterType=DIFFERENCE \ --regions us-west-2 us-east-1
Zusätzliche Konten einbeziehen

Im folgenden Beispiel werden Stacks für alle Konten in OU1 plus ein zusätzliches Konto A4 von einer anderen Organisationseinheit bereitgestellt.

aws cloudformation create-stack-instances --stack-set-name my-stackset \ --deployment-targets OrganizationalUnitIds=OU1,Accounts=A4,AccountFilterType=UNION \ --regions us-west-2 us-east-1