Un template CloudFormation crea un'istanza EC2 (con user data per installare un'applicazione) e un bucket S3 utilizzato dall'applicazione per servire pagine statiche. Tutte le risorse devono essere rimosse quando lo stack viene eliminato, ma l'eliminazione dello stack fallisce perché il bucket S3 non viene rimosso. Qual è il modo più efficiente per garantire che tutte le risorse dello stack vengano eliminate senza errori?
Scegli una risposta
Tocca un'opzione per controllare la tua risposta.
Risposta corretta: Aggiungere una risorsa personalizzata supportata da una funzione AWS Lambda (con un ruolo IAM) che dipende dal bucket S3. Fare in modo che l'handler Lambda elimini tutti gli oggetti dal bucket quando RequestType è Delete..
Perché questa è la risposta
L'eliminazione di uno stack CloudFormation fallisce se un bucket S3 non è vuoto, poiché CloudFormation non svuota automaticamente i bucket. L'opzione corretta risolve questo problema utilizzando una risorsa personalizzata di CloudFormation supportata da una funzione Lambda. Questa funzione viene invocata durante l'eliminazione dello stack (quando RequestType è Delete) e può essere programmata per svuotare il bucket S3 prima che CloudFormation tenti di eliminarlo. Questo garantisce un'eliminazione pulita dello stack. L'opzione che suggerisce di aggiungere DeletionPolicy: Delete non è sufficiente, poiché questa policy elimina il bucket solo se è vuoto; non lo svuota. L'eliminazione manuale è inefficiente e non automatizzata, contraddicendo i principi DevOps. Sostituire con AWS OpsWorks Stacks è un cambiamento architetturale eccessivo e non risolve direttamente il problema dell'eliminazione del bucket S3.
Supera il tuo esame — senza l'infinita caccia alle risposte
Ottieni ogni domanda e spiegazione verificata per questo esame in un unico posto, e risparmia ore di preparazione. Oltre 1.000 certificazioni · Oltre 20 lingue · Inizia gratuitamente.
Supera il tuo esame più velocemente → Nessuna carta richiesta