D: Cos'è AWS CloudFormation?

AWS CloudFormation è un servizio che offre ad aziende e sviluppatori strumenti di facile utilizzo per la creazione di una raccolta di risorse AWS correlate e il provisioning delle risorse in modo ordinato e prevedibile.

D: Quali possibilità non disponibili in precedenza offre AWS CloudFormation agli sviluppatori?

AWS CloudFormation automatizza e semplifica le attività ripetute e pianificate di creazione di gruppi di risorse correlate per l'esecuzione di applicazioni. In questo modo, raccogliere e collegare tra loro tutte le risorse necessarie all'avvio della tua applicazione è semplice come creare una singola istanza EC2 o RDS.

Inizia a usare AWS gratis

Crea un account gratuito
Oppure accedi alla console

Il piano gratuito di AWS include 750 ore di nodi di cache Micro con Amazon ElastiCache.

Visualizza i dettagli del piano gratuito di AWS »

D: In cosa differisce AWS CloudFormation da AWS Elastic Beanstalk?

Si tratta di servizi creati per completarsi a vicenda. AWS Elastic Beanstalk fornisce un ambiente che permette di distribuire ed eseguire applicazioni nel cloud con la massima semplicità. È una soluzione che si integra con gli strumenti degli sviluppatori e fornisce un'esperienza centralizzata per la gestione del ciclo di vita delle applicazioni. AWS CloudFormation è un maccanismo di distribuzione che si applica a un'ampia gamma di risorse AWS. Supporta le necessità infrastrutturali di diversi tipi di applicazione, tra cui applicazioni aziendali esistenti, applicazioni obsolete, applicazioni che impiegano una serie di risorse AWS e soluzioni basate su container (incluse quelle create usando AWS Elastic Beanstalk).

AWS CloudFormation supporta gli ambienti applicativi di Elastic Beanstalk come tipo di risorsa AWS. In questo modo è possibile ad esempio creare e gestire applicazioni in hosting in AWS Elastic Beanstalk con database RDS per memorizzare i dati dell'applicazione. Oltre alle istanze RDS, al gruppo può essere aggiunta qualsiasi risorsa AWS supportata.

D: Quali novità introduce AWS CloudFormation?

AWS CloudFormation introduce due nuovi concetti: il modello, un file di testo in formato JSON o YAML che descrive le risorse AWS da distribuire per eseguire la tua applicazione, e lo stack, l'insieme di risorse AWS create e gestite come una singola unità quando AWS CloudFormation avvia un'istanza da un modello.

D: Come si inizia a usare AWS CloudFormation?

Accedere a AWS CloudFormation è semplice tramite la Console di gestione AWS, che offre un'interfaccia utente grafica basata sul Web per distribuire e gestire gli stack. Per creare un nuovo stack dalla Console di gestione AWS bastano pochi semplici passi:

  1. Assegnare un nome allo stack: scegli un nome univoco da assegnare allo stack.
  2. Selezionare un modello: seleziona un modello dal file system locale o da un URL Amazon S3. Può trattarsi di un modello di AWS CloudFormation di esempio, oppure di un modello personalizzato, un modello gestito in un repository di controllo del codice sorgente o un modello ricevuto da terze parti.
  3. Specificare un parametro: se il modello consente di configurare la distribuzione, indica i parametri che desideri personalizzare oppure usa quelli predefiniti.
  4. Fare clic su "Create": la distribuzione viene avviata. Per consultare lo stato della distribuzione, i nomi delle risorse coinvolte e gli eventi di stack, accedi alla Console di gestione AWS.

D: Quali risorse supporta AWS CloudFormation?

Per consultare un elenco completo di risorse AWS supportato e relative caratteristiche, visita la pagina relativa ai servizi AWS supportati nella sezione Release History della documentazione.

Le risorse personalizzate di AWS CloudFormation consentono di gestire anche altre risorse AWS ed esterne ad AWS.

D: È possibile gestire singole risorse AWS che fanno parte di uno stack di AWS CloudFormation?

Sì. AWS CloudFormation non interferisce con queste attività: hai sempre il controllo completo di tutti gli elementi della tua infrastruttura. Per la gestione delle tue risorse AWS potrai continuare a utilizzare tutti gli strumenti di AWS e di terze parti.

D: Da quali elementi è composto un modello di AWS CloudFormation?

I modelli di AWS CloudFormation sono file di testo in formato JSON o YAML che contengono cinque tipi di elementi:

  1. Un elenco opzionale dei parametri del modello (valori di input forniti in fase di creazione dello stack)
  2. Un elenco opzionale di valori di output (ad es. l'URL completo a un'applicazione Web)
  3. Un elenco opzionale di tabelle di dati usate per verificare i valori di configurazione statici (ad es. nomi di AMI)
  4. L'elenco di risorse AWS con i relativi valori di configurazione
  5. Il numero di versione del formato del file di modello

Tramite i parametri, è possibile personalizzare, al momento della creazione dello stack, diversi aspetti del modello in fase di runtime. Quando ad esempio crei uno stack, puoi inoltrare le dimensioni del database Amazon RDS, i tipi di istanza Amazon EC2, il database e i numeri di porta del server Web ad AWS CloudFormation. Ogni parametro può avere un valore predefinito e una descrizione, e può essere contrassegnato come "NoEcho" per fare in modo che il valore effettivo inserito sia nascosto sia sullo schermo sia nel log di eventi di AWS CloudFormation. Quando viene creato uno stack di AWS CloudFormation, la Console di gestione AWS farà immediatamente un resoconto presentando un modulo a comparsa che consente di modificare i valori dei parametri.

I valori di output consentono di mostrare all'utente le risorse chiave dello stack (ad esempio l'indirizzo del sistema di bilanciamento del carico di Elastic Load Balancing o il database di Amazon RDS) tramite la Console di gestione AWS o gli strumenti a riga di comando. È possibile usare funzioni semplici per concatenare valori letterali stringa e valori degli attributi associati con le risorse AWS effettive.

D: Come vengono scelti i nomi delle risorse effettive in AWS CloudFormation?

È possibile assegnare nomi logici alle risorse di AWS in un modello. Al momento della creazione di uno stack, AWS CloudFormation collega il nome logico al nome della risorsa AWS effettiva corrispondente. I nomi delle risorse effettive sono una combinazione tra il nome dello stack e il nome logico della risorsa. In questo modo è possibile creare diversi stack da un modello senza causare conflitti di nomi tra risorse AWS.

D: Perché non è possibile assegnare nomi a tutte le risorse?

Anche se AWS CloudFormation consente di assegnare i nomi ad alcune risorse (ad esempio ai bucket Amazon S3), CloudFormation non consente questa operazione per tutte le risorse. Assegnare un nome a una risorsa limita la riusabilità di un modello e provoca conflitti di denominazione quando un aggiornamento provoca la sostituzione di una risorsa. Per ridurre al minimo questi problemi, CloudFormation il supporto all'assegnazione di nomi sarà valutato caso per caso.

D: È possibile installare software al momento della creazione dello stack mediante AWS CloudFormation?

Sì. AWS CloudFormation offre un set di script di processi di boot applicativi che consentono di installare pacchetti, file e servizi sulle istanze EC2 semplicemente descrivendoli nel modello di CloudFormation. Per ulteriori informazioni e istruzioni, consulta Bootstrapping Applications via AWS CloudFormation.

D: È possibile usare AWS CloudFormation con Chef?

Sì. AWS CloudFormation può essere impiegato per eseguire il bootstrap sia di Chef Server sia del client Chef sulle istanze EC2. Per ulteriori informazioni e istruzioni, consulta Integrating AWS CloudFormation with Chef.

D: È possibile usare AWS CloudFormation con Puppet?

Sì. AWS CloudFormation può essere impiegato per eseguire il bootstrap sia di Puppet Master sia del client Puppet sulle istanze EC2. Per ulteriori informazioni e istruzioni, consulta Integrating AWS CloudFormation with Puppet.

D: AWS CloudFormation supporta l'applicazione di tag di Amazon EC2?

Sì. Le risorse Amazon EC2 che supportano la funzione di tagging possono operare anche in un modello di AWS. I valori dei tag possono fare riferimento a parametri del modello, a nomi di altre risorse, a valori degli attributi di risorse (ad es. indirizzi) o a valori calcolati da funzioni semplici (ad es. un elenco di stringhe concatenate).

AWS CloudFormation applica automaticamente un tag ai volumi di Amazon EBS e alle istanze di Amazon EC2 con il nome dello stack di AWS CloudFormation di cui fanno parte.

D: È possibile accedere all'istanza di Amazon EC2 o ai campi dati utente della configurazione di avvio di Auto Scaling?

Sì. È possibile usare funzioni semplici per concatenare valori letterali stringa e valori degli attributi delle risorse AWS effettive inoltrandoli ai campi dati utente nel modello. Per ulteriori informazioni su queste funzioni fai riferimento ai modelli di prova.

D: Cosa succede quando non è possibile creare correttamente una delle risorse in uno stack?

Di default si attiva la funzione "automatic rollback on error". Tutte le risorse AWS dello stack create da AWS CloudFormation prima di questo errore saranno eliminate. Questa funzione è utile, ad esempio, quando si supera accidentalmente il limite predefinito di indirizzi IP elastici, oppure quando non si dispone dell'accesso all'AMI EC2 che si desidera eseguire. L'utilità della funzione si basa sul fatto che gli stack o vengono creati completamente o non vengono creati affatto; l'amministrazione di sistema e la creazione di soluzioni a più livelli con AWS CloudFormation ne risultano semplificate.

D: La creazione di stack può attendere l'avvio dell'applicazione?

Sì. AWS CloudFormation offre una risorsa WaitCondition che agisce come una barriera, bloccando la creazione di altre risorse finché non riceve un segnale di completamento da una sorgente esterna, ad esempio l'applicazione o il sistema di gestione.

D: È possibile salvare i dati quando uno stack viene eliminato?

Sì. AWS CloudFormation consente di definire le policy di eliminazione delle risorse all'interno del modello. Puoi richiedere che siano creati snapshot dei volumi di Amazon EBS o le istanze database di Amazon RDS prima della loro eliminazione. Puoi anche specificare che una risorsa venga conservata e non eliminata insieme allo stack. È una funzione utile, ad esempio, per conservare i bucket di Amazon S3 dopo l'eliminazione dello stack.

D: È possibile aggiornare uno stack dopo che è stato creato?

Sì. È possibile utilizzare AWS CloudFormation anche per modificare e aggiornare le risorse degli stack in modo controllato e prevedibile. Impiegando i modelli per gestire le modifiche agli stack, potrai applicare il controllo della versione all'infrastruttura AWS in modo analogo a come si fa con il software eseguito sull'infrastruttura stessa.

D: È possibile creare stack in Virtual Private Cloud (VPC)?

Sì. CloudFormation supporta la creazione di VPC, sottoreti, gateway, tabelle di instradamento e ACL rete, nonché la creazione di risorse quali indirizzi IP elastici, istanze di Amazon EC2, Security Group di EC2, Auto Scaling group, sistemi di bilanciamento del carico elastici, istanze database Amazon RDS e security group di RDS in un cloud privato virtuale.



D: Come ci si registra a AWS CloudFormation?

Per registrarti ad AWS CloudFormation, fai clic su Crea un account gratuito nella pagina dei dettagli di AWS CloudFormation. Dopo la registrazione, consulta la documentazione di AWS CloudFormation, che comprende la Getting Started Guide.

D: Perché mi viene chiesto di convalidare il mio numero di telefono durante la procedura di registrazione ad AWS CloudFormation?

Per registrarsi ad AWS CloudFormation occorre fornire ad AWS un numero di telefono e un indirizzo di posta elettronica validi per poter essere contattati se necessario. La convalida del numero di telefono richiede soltanto qualche minuto: durante la procedura di registrazione riceverai una telefonata automatica e dovrai inserire un numero PIN mediante la tastiera del telefono.

D: Come si inizia a usarlo dopo aver eseguito l'accesso?

Il miglior modo per iniziare a usare AWS CloudFormation è leggere la Getting Started Guide, inclusa nella documentazione tecnica. In pochi minuti, sarai in grado di distribuire e usare uno dei nostri modelli di esempio che illustrano come creare l'infrastruttura necessaria per l'esecuzione di applicazioni quali Tracks, WordPress e molte altre.

D: Esistono dei modelli di esempio che consentano di vedere come funziona AWS CloudFormation?

Sì, AWS CloudFormation include diversi modelli di esempio che puoi usare per provare l'offerta ed esplorare le funzionalità. I nostri modelli di esempio illustrano come creare interconnessioni e usare risorse AWS multiple in sinergia, seguendo le best practice per ottenere ridondanza su più zone di disponibilità, scalabilità e generazione di allarmi. Per iniziare, è sufficiente accedere alla Console di gestione AWS, fare clic su Create Stack e seguire la procedura per selezionare e avviare uno degli esempi. Una volta creato, seleziona il tuo stack nella console ed esamina le schede Template e Parameter per vedere quali informazioni del file di modello sono state usate per creare lo stack corrispondente.

D: Quanto costa AWS CloudFormation?

Non sono previsti costi aggiuntivi per l'utilizzo di AWS CloudFormation. Il prezzo è calcolato in base alle risorse AWS create, ad esempio le istanze di Amazon EC2, i sistemi di bilanciamento del carico di Elastic Load Balancing, ecc.

D: Vengono addebitati i costi delle risorse sottoposte a rollback quando un tentativo di creazione di uno stack non va a buon fine?

Sì. I costi delle risorse AWS create durante l'avvio di un'istanza da un modello si applicano indipendentemente dalla corretta creazione dello stack.

D: Ci sono limitazioni al numero di modelli o stack?

Non esiste alcun limite al numero di modelli. Ogni account AWS CloudFormation, tuttavia, applica un limite di 200 stack. Per richiedere di estendere questo limite, compila la richiesta in questa pagina; risponderemo alla tua richiesta entro due giorni lavorativi.

D: Ci sono limitazioni alle dimensioni dei campi di descrizione?

I campi Template, Parameter, Output e Resource possono contenere fino a 4.096 caratteri.

D: Ci sono limitazioni al numero di parametri o di output in un modello?

È possibile includere fino a 60 parametri e fino a 60 output per modello.

D: Quali sono i punti di accesso al servizio AWS CloudFormation in ciascuna regione?

Per scoprire gli endpoint di ciascuna regione, consulta la documentazione tecnica.

D: In quali regioni AWS è al momento disponibile AWS CloudFormation?

Per ulteriori informazioni sulla disponibilità dei servizi di CloudFormation, consulta la sezione relativa a prodotti e servizi per regione.