Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Implementazione AWS CloudFormation si accumula più velocemente con la modalità express
Con la modalità CloudFormation express, è possibile completare le operazioni dello stack non appena CloudFormation viene applicata la configurazione delle risorse, senza attendere che le risorse si stabilizzino completamente. Utilizza la modalità express per creare, aggiornare ed eliminare gli stack in modo significativamente più rapido durante i flussi di lavoro di sviluppo iterativi.
La modalità Express funziona con tutti i modelli esistenti. CloudFormation Non è necessario apportare modifiche al modello per utilizzare la modalità rapida.
Quando usare la modalità express
Usa la modalità express per i flussi di lavoro di sviluppo e iterazione in cui la velocità è più importante dell'attesa della completa stabilizzazione delle risorse. Usa la modalità express quando:
-
Si esegue un'iterazione sulle modifiche al modello durante lo sviluppo.
-
Desiderate un feedback più rapido sulla validità delle configurazioni delle risorse.
-
Non è necessario attendere che le risorse siano completamente operative prima di procedere.
Per le implementazioni di produzione in cui è necessario verificare che le risorse siano completamente stabilizzate e operative prima di considerare completa l'implementazione, utilizza la modalità di distribuzione predefinita.
Come funziona la modalità express
Nella modalità di distribuzione predefinita, CloudFormation attende che ogni risorsa raggiunga uno stato completamente stabilizzato prima di dichiarare la risorsa come completa. Ad esempio, quando si crea un'istanza Amazon EC2, CloudFormation attende che l'istanza si trovi nello stato. running
In modalità express, in CloudFormation genere considera completa l'operazione di una risorsa non appena la chiamata API per creare, aggiornare o eliminare la risorsa ha esito positivo. Nella maggior parte dei casi, CloudFormation non attende che la risorsa raggiunga lo stato operativo finale.
Ciò significa che dopo il completamento di un'operazione di stack in modalità espressa:
-
Le risorse potrebbero ancora inizializzare o propagare le modifiche.
-
Le risorse potrebbero non essere ancora pronte per servire il traffico o accettare connessioni.
-
Le operazioni di eliminazione potrebbero essere ancora in corso.
Come CloudFormation gestisce le dipendenze in modalità express
La modalità Express rispetta le dipendenze delle risorse definite nel modello. Se una risorsa fa riferimento all'ID o all'attributo di un'altra risorsa (tramite Ref orFn::GetAtt), CloudFormation conferma che la configurazione della risorsa di riferimento viene applicata prima di avviare la risorsa dipendente. Se una risorsa dipendente riscontra un errore temporaneo perché una risorsa referenziata non è pronta, riprova l'operazione. CloudFormation
Le risorse che non dipendono l'una dall'altra possono procedere in parallelo.
La modalità Express non modifica l'ordine delle dipendenze delle risorse. Cambia quando i report relativi all'operazione di stack vengono completati.
Guida introduttiva alla modalità express
È possibile utilizzare la modalità express con AWS Command Line Interface (AWS CLI), AWS Cloud Development Kit (AWS CDK) (AWS CDK), la CloudFormation console e modificare i set. Le sezioni seguenti descrivono come abilitare la modalità express con ciascun metodo.
Utilizzo della modalità express con AWS CLI
Per utilizzare la modalità express con AWS CLI, aggiungete il --deployment-config parametro ai comandi operativi dello stack.
Crea uno stack con la modalità express
Il comando seguente crea uno stack utilizzando la modalità express:
aws cloudformation create-stack --stack-namemy-stack\ --template-bodyfile://my-template.yaml\ --deployment-config '{"mode": "EXPRESS"}'
Aggiorna uno stack con la modalità express
Il comando seguente aggiorna uno stack utilizzando la modalità express:
aws cloudformation update-stack --stack-namemy-stack\ --template-bodyfile://my-template.yaml\ --deployment-config '{"mode": "EXPRESS"}'
Eliminare uno stack con la modalità express
Il comando seguente elimina uno stack utilizzando la modalità express:
aws cloudformation delete-stack --stack-namemy-stack\ --deployment-config '{"mode": "EXPRESS"}'
Utilizzo della modalità express con AWS CDK
Per usare la modalità express con AWS Cloud Development Kit (AWS CDK) (AWS CDK), usa il --express flag con il cdk deploy comando:
cdk deploy --express
Utilizzo della modalità express con AWS SAM
Per utilizzare la modalità express con la CLI AWS SAM, aggiungi il --express flag ai comandi di distribuzione o sincronizzazione:
sam deploy --express
sam sync --express
Per mantenere l'impostazione nella configurazione del progetto, usa: --save-params
sam deploy --express --save-params
Ciò viene salvato nel samconfig.toml file express = true in modo che le distribuzioni successive utilizzino automaticamente la modalità Express.
Quando la modalità express è abilitata, la AWS SAM CLI passa la configurazione di distribuzione a. CloudFormation Il --disable-rollback flag controlla il comportamento di rollback all'interno della configurazione di distribuzione.
Utilizzo della modalità express con la console
Quando si crea o si aggiorna uno stack nella CloudFormation console, è possibile abilitare la modalità express nel passaggio Configura le opzioni dello stack. In Opzioni di distribuzione, seleziona Express per la modalità di distribuzione.
Utilizzo della modalità express con set di modifiche
È possibile utilizzare la modalità express con i set di modifiche specificando la configurazione di distribuzione al momento della creazione del set di modifiche:
aws cloudformation create-change-set --stack-namemy-stack\ --change-set-namemy-change-set\ --template-bodyfile://my-template.yaml\ --deployment-config '{"mode": "EXPRESS"}'
Quando si esegue il set di modifiche, CloudFormation applica la configurazione di distribuzione in modalità espressa specificata durante la creazione del set di modifiche.
Comportamento del rollback con la modalità express
Quando si utilizza la modalità express, CloudFormation disabilita il rollback per impostazione predefinita. Se un'operazione sulle risorse fallisce, CloudFormation non ripristina automaticamente le modifiche.
Per riattivare il rollback quando si utilizza la modalità express, disableRollback impostate false nel --deployment-config parametro:
aws cloudformation create-stack --stack-namemy-stack\ --template-bodyfile://my-template.yaml\ --deployment-config '{"mode": "EXPRESS", "disableRollback": false}'
Modalità Express e pile annidate
Quando si utilizza la modalità espressa su uno stack principale, l'impostazione si propaga a tutti gli stack nidificati nella gerarchia. Non è necessario specificare la modalità express per ogni stack nidificato separatamente. Tutte le risorse nello stack principale e negli stack annidati vengono completate non appena viene applicata la loro configurazione.
Considerazioni sulla disponibilità delle risorse
La modalità Express completa le operazioni relative alle risorse prima che le risorse raggiungano uno stato completamente stabilizzato, pertanto qualsiasi risorsa potrebbe richiedere più tempo per essere completamente pronta a servire il traffico o completare la propagazione in più regioni. La tabella seguente illustra i tipi di comportamento delle risorse che ci si può aspettare, utilizzando esempi relativi a diversi tipi di risorse. Questi esempi sono illustrativi e non rappresentano un elenco completo delle risorse supportate.
| Tipo di risorsa | Operation | Comportamento di prontezza |
|---|---|---|
| CloudFront Distribuzione Amazon | Create/Update | L'implementazione globale della distribuzione potrebbe richiedere alcuni minuti dopo l'applicazione della configurazione. |
| Istanza Amazon EC2 | Crea | L'istanza potrebbe essere ancora in fase di inizializzazione (esecuzione di script di dati utente, controlli dello stato) dopo il completamento dell'operazione di stack. |
| AWS Funzione Lambda | Elimina | È possibile che le risorse delle funzioni siano ancora in fase di pulizia dopo il completamento dei report sulle operazioni di eliminazione. |
| Servizio Amazon Elastic Container Service (Amazon ECS) | Create/Update | Le attività di servizio potrebbero ancora iniziare o raggiungere uno stato stazionario dopo il completamento dell'operazione di stack. |
Funzionalità e limitazioni non supportate
Le seguenti funzionalità e servizi non sono supportati con la modalità express:
- CloudFormation StackSets
-
CloudFormation non supporta la modalità espressa con StackSets operazioni.
Le seguenti risorse hanno un comportamento specifico con la modalità espressa:
- Risorse personalizzate
-
Le risorse personalizzate (incluse
Custom::*le risorseAWS::CloudFormation::CustomResourcee) seguono il loro comportamento predefinito. CloudFormation attende che la risorsa personalizzata invii un segnale di risposta prima di considerare l'operazione completa, anche in modalità rapida. Per evitare che una risorsa personalizzata lenta o bloccata ritardi i flussi di lavoro a iterazione rapida, imposta un tempo di attesa massimo con la proprietà.ServiceTimeoutPer ulteriori informazioni, consulta Timeout di risposta.
Confronto con AWS CDK implementazioni hotswap
La tabella seguente confronta la modalità express con le distribuzioni hotswap. AWS CDK
| Funzionalità | Modalità Express | AWS CDK hotswap |
|---|---|---|
| Meccanismo di distribuzione | Usi CloudFormation per tutte le operazioni relative alle risorse | Ignora CloudFormation e chiama direttamente le API del servizio |
| Compatibilità dei modelli | Funziona con tutti i CloudFormation modelli esistenti | Supporta un set limitato di tipi di risorse |
| Stato dello stack | Lo stato dello stack rimane coerente con il modello | Lo stato dello stack potrebbe differire dal modello |
| Supporto per il rollback | Supporta il rollback (disabilitato per impostazione predefinita) | Nessun supporto per il rollback |
| Copertura delle risorse | Tutti i tipi di CloudFormation risorse | Tipi di risorse limitati (AWS Lambda, Amazon ECS, AWS Step Functions e altri) |
| Uso consigliato | Flussi di lavoro di sviluppo e iterazione | Flussi di lavoro di sviluppo con sole risorse supportate |
Risorse correlate
-
Scegli in che modo gestire gli errori durante il provisioning delle risorse
-
CreateStack nel Documentazione di riferimento API di AWS CloudFormation