Lavorare con i CloudFormation modelli - AWS CloudFormation

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à.

Lavorare con i CloudFormation modelli

Un AWS CloudFormation modello definisce le AWS risorse che desideri creare, aggiornare o eliminare come parte di uno stack. Consiste in diverse sezioni, ma l’unica sezione richiesta è la sezione Resources, che deve dichiarare almeno una risorsa.

Puoi creare dei modelli utilizzando i metodi seguenti:

  • AWS Infrastructure Composer: un’interfaccia visiva per la progettazione di modelli.

  • Editor di testo: per scrivere modelli direttamente nella sintassi JSON o YAML.

  • Generatore IaC: genera modelli a partire dalle risorse fornite nel tuo account che attualmente non sono gestite da. CloudFormation Il generatore di IaC funziona con un’ampia gamma di tipi di risorse supportati da Cloud Control API nella tua Regione.

Questa sezione fornisce una guida completa su come utilizzare le diverse sezioni di un CloudFormation modello e su come iniziare a creare modelli di stack. Comprende i seguenti argomenti:

Dove vengono archiviati i modelli

Bucket Amazon S3

Puoi archiviare CloudFormation i modelli in un bucket Amazon S3. Quando crei o aggiorni uno stack, puoi specificare l’URL S3 del modello anziché caricarlo direttamente.

Se carichi i modelli direttamente tramite la sala Console di gestione AWS operatoria AWS CLI, viene creato automaticamente un bucket S3. Per ulteriori informazioni, consulta Crea uno stack dalla console CloudFormation.

Repository Git

Con la sincronizzazione Git, puoi archiviare i modelli in un repository Git. Quando crei o aggiorni uno stack, puoi specificare la posizione del repository Git e il ramo contenente il modello invece di caricarlo direttamente o fare riferimento a un URL S3. CloudFormation monitora automaticamente il repository e il ramo specificati per le modifiche al modello. Per ulteriori informazioni, consulta Creazione di uno stack dal codice sorgente del repository con la sincronizzazione Git.

Convalida dei modelli

Convalida della sintassi

Puoi verificare la sintassi JSON o YAML del modello utilizzando il comando CLI validate-template o specificando il modello nella console. La console esegue la convalida automaticamente. Per ulteriori informazioni, consulta Crea uno stack dalla console CloudFormation.

Tuttavia, questi metodi verificano solamente la sintassi del modello e non convalidano i valori delle proprietà specificati per una risorsa.

Strumenti di convalida aggiuntivi

Per convalide più complesse e controlli basati sulle best practice, puoi utilizzare strumenti aggiuntivi come:

Nozioni di base sui modelli

Per iniziare a creare un modello, segui questi passaggi: CloudFormation

  1. Scegli le risorse: identifica le AWS risorse che desideri includere nel tuo stack, come EC2 istanze VPCs, gruppi di sicurezza e altro.

  2. Scrivi il modello: scrivi il modello in formato JSON o YAML definendo le risorse e le relative proprietà.

  3. Salva il modello: salva il modello localmente con un’estensione di file come .json, .yaml o .txt.

  4. Convalida il modello: convalida il modello utilizzando i metodi descritti nella sezione Convalida dei modelli.

  5. Crea uno stack: crea uno stack utilizzando il modello convalidato.

Pianifica di utilizzare il modello di riferimento CloudFormation

Mentre scrivi i modelli, puoi trovare la documentazione sulla sintassi dettagliata per i diversi tipi di risorse nella documentazione di riferimento ai tipi di risorse e proprietàAWS.

Spesso, i modelli di stack richiedono funzioni intrinseche per assegnare valori di proprietà che non sono disponibili fino al runtime e attributi speciali per controllare il comportamento delle risorse. Durante la scrittura del modello, consulta le seguenti risorse come guida:

  • Documentazione di riferimento sulla funzione intrinseca: tra le funzioni intrinseche di uso comune ci sono:

    • Ref: recupera il valore di un parametro o l’ID fisico di una risorsa.

    • Sub: sostituisce i segnaposto nelle stringhe con valori effettivi.

    • GetAtt: restituisce il valore di un attributo da una risorsa nel modello.

    • Join: unisce un set di valori in un’unica stringa.

  • Documentazione di riferimento sugli attributi della risorsa: tra gli attributi speciali di uso comune ci sono:

    • DependsOn: per specificare che una risorsa deve essere creata dopo un’altra.

    • DeletionPolicy— Utilizzate questo attributo per CloudFormation specificare come gestire l'eliminazione di una risorsa.

Modelli di esempio

CloudFormation fornisce modelli di stack open source che è possibile utilizzare per iniziare. Per ulteriori informazioni, consulta Modelli CloudFormation di esempio sul GitHub sito Web.

Tieni presente che questi modelli non sono pensati per essere pronti per la produzione. Prenditi il tempo necessario per imparare come funzionano, adattarli alle tue esigenze e assicurarti che soddisfino gli standard di conformità della tua azienda.

Ogni modello di questo repository supera i controlli di CloudFormation Linter (cfn-lint) e anche un set di AWS CloudFormation Guard regole di base basato sulla Center for Internet Security (CIS) Top 20, con eccezioni per alcune regole in cui era opportuno mantenere l'esempio concentrato su un singolo caso d'uso.