Crea StackSet CloudFormation con autorizzazioni gestite dal cliente
Questo argomento descrive come creare StackSet con autorizzazioni gestite dal cliente per distribuire stack in tutte le Regioni e gli Account AWS.
Nota
Prima di continuare, devi creare i ruoli di servizio IAM richiesti da StackSet per stabilire una relazione di trust tra l’account da cui amministri lo StackSet e l’account a cui distribuisci gli stack. Per ulteriori informazioni, consulta Concedere autorizzazioni gestite dal cliente.
Argomenti
Crea uno StackSet con autorizzazioni gestite dal cliente (console)
Per creare uno StackSet
Accedere alla Console di gestione AWS e aprire la console di CloudFormation all'indirizzo https://console.aws.amazon.com/cloudformation
. -
Nella barra di navigazione nella parte superiore dello schermo, scegli la Regione AWS dalla quale desideri gestire lo StackSet.
-
Nel riquadro di navigazione scegliere StackSets.
-
Nella parte superiore della pagina StackSet, scegli Crea StackSet.
-
In Autorizzazioni, scegli Autorizzazioni self-service e seleziona i ruoli IAM che hai creato.
-
In Prerequisito - Prepara modello, scegli Il modello è pronto.
-
In Specify template (Specifica modello), scegliere di specificare l'URL per il bucket S3 che contiene il modello di stack oppure caricare un file modello di stack. Quindi, seleziona Next (Successivo).
-
Nella pagina Specifica dettagli di StackSet, indica un nome per lo StackSet e specifica eventuali parametri, poi scegli Avanti.
-
Seleziona Successivo per continuare.
-
Nella pagina Configure StackSet options (Configura opzioni StackSet) in Tags, specificare eventuali tag da applicare alle risorse nello stack. Per ulteriori informazioni sull’utilizzo dei tag in AWS, consulta Organizing and tracking costs using AWS cost allocation tags nella Guida per l’utente di Gestione dei costi e fatturazione AWS.
-
In Configurazione dell’esecuzione, scegli Attiva per abilitare la gestione ottimizzata delle operazioni di CloudFormation:
-
Le operazioni non in conflitto vengono eseguite contemporaneamente per tempi di implementazione più veloci.
-
Le operazioni in conflitto vengono automaticamente messe in coda ed elaborate nell’ordine di richiesta.
Mentre le operazioni sono in esecuzione o in coda, CloudFormation mette in coda tutte le operazioni in entrata anche se non sono in conflitto. Non puoi modificare le impostazioni di esecuzione durante questa fase.
-
-
Se il modello contiene risorse IAM, in Funzionalità scegli Riconosco che questo modello può creare risorse IAM per specificare che desideri utilizzare risorse IAM nel modello. Per ulteriori informazioni, consulta Accettazione delle risorse IAM nei modelli CloudFormation.
-
Scegli Next (Successivo).
-
Nella pagina Imposta opzioni di implementazione, per Aggiungi stack a un set di stack, mantieni l’opzione predefinita Implementa nuovi stack.
-
Per Accounts (Account), scegliere Deploy stacks in accounts (Distribuisci stack in account). Incolla i numeri degli Account AWS di destinazione nella casella di testo, separando più numeri con virgole.
Nota
Puoi includere l’ID account amministratore se desideri distribuire gli stack anche in quell’account.
-
In Specifica Regioni, scegli le Regioni in cui desideri implementare gli stack.
-
In Opzioni di implementazione, procedi come segue:
-
In Numero massimo di account simultanei, specifica quanti account vengono elaborati contemporaneamente.
-
In Failure tolerance, specifica il numero massimo di errori consentiti per Regione negli account. Una volta raggiunto questo limite, l’operazione si interromperà e non passerà ad altre Regioni.
-
In Region concurrency, scegli il modo con cui elaborare le Regioni: sequenziale (una Regione alla volta) o parallelo (più Regioni contemporaneamente).
-
In Concurrency mode, scegli come deve comportarsi la simultaneità durante l’esecuzione dell’operazione.
-
Tolleranza rigorosa ai guasti: riduce il livello di simultaneità degli account quando si verificano errori, rimanendo all’interno di Tolleranza ai guasti +1.
-
Tolleranza leggera ai guasti: mantiene il livello di simultaneità specificato (il valore di Numero massimo di account simultanei) indipendentemente dai guasti.
-
-
-
Scegli Next (Successivo).
-
Nella pagina Review (Esamina), esaminare le proprie opzioni. Per apportare modifiche, scegli Modifica nella sezione da modificare.
-
Quando vuoi creare lo StackSet, scegli Invia.
CloudFormation avvia la creazione dello StackSet. Visualizza l’avanzamento e lo stato della creazione degli stack nello StackSet nella pagina dei dettagli dello StackSet che si apre quando scegli Invia.
Crea uno StackSet con autorizzazioni gestite dal cliente (AWS CLI)
Segui i passaggi indicati in questa sezione per utilizzare la AWS CLI per:
-
Creare il container StackSet.
-
Implementa le istanze di stack.
Per creare uno StackSet
-
Usa il comando create-stack-set per creare un nuovo StackSet chiamato
. Il seguente esempio usa un modello archiviato in un bucket S3 e include un parametro che imposta unmy-stacksetcon il valoreKeyPairName.TestKeyaws cloudformation create-stack-set \ --stack-set-namemy-stackset\ --template-urlhttps://s3.region-code.amazonaws.com/amzn-s3-demo-bucket/MyApp.template\ --parametersParameterKey=KeyPairName,ParameterValue=TestKey -
Quando il comando create-stack-set viene completato, esegui il comando list-stack-sets per verificare che lo StackSet sia stato creato. Il nuovo StackSet dovrebbe essere visibile nei risultati.
aws cloudformation list-stack-sets -
Usa il comando create-stack-instances per distribuire stack nello StackSet. L’esempio seguente distribuisce gli stack in due Account AWS (
eaccount_ID_1) in due Regioni (account_ID_2eus-west-2).us-east-1Imposta l’elaborazione simultanea degli account e altre preferenze di implementazione con l’opzione
--operation-preferences. Questo esempio usa impostazioni basate su numeri. Tieni presente cheMaxConcurrentCountnon deve superareFailureToleranceCount+ 1. Per le impostazioni basate su percentuali, usaFailureTolerancePercentageoMaxConcurrentPercentage.aws cloudformation create-stack-instances \ --stack-set-namemy-stackset\ --accountsaccount_ID_1 account_ID_2\ --regionsus-west-2 us-east-1\ --operation-preferencesMaxConcurrentCount=1,FailureToleranceCount=0Per ulteriori informazioni, consulta CreateStackInstances nella Documentazione di riferimento dell’API di AWS CloudFormation.
-
Usa il comando describe-stack-set-operation per verificare che gli stack siano stati creati correttamente. Per l’opzione
--operation-id, specifica l’ID operazione che è stato restituito come parte dell’output create-stack-instances.aws cloudformation describe-stack-set-operation \ --stack-set-namemy-stackset\ --operation-idoperation_ID