View a markdown version of this page

Lavorare con CloudFormation i 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 CloudFormation i 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 messe a disposizione nel tuo account che non sono attualmente 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 Console di gestione AWS or AWS CLI, viene creato automaticamente un bucket S3 per te. Per ulteriori informazioni, consulta Crea una pila dalla CloudFormation console.

Repository Git

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

Convalida dei modelli

Convalida i tuoi modelli prima dell'implementazione in modo da poter trovare e risolvere i problemi prima. Il CloudFormation servizio e gli strumenti in questa sezione controllano le diverse parti di un modello. Puoi usarli insieme.

Puoi verificare se un modello utilizza JSON o YAML validi con il comando validate-template CLI o specificando il tuo modello nel. Console di gestione AWS La console esegue questo controllo automaticamente. Questi controlli sul lato del servizio non eseguono i controlli aggiuntivi di proprietà, sicurezza o best practice forniti dai seguenti strumenti:

Utilizzalo con agenti di codifica AI

Gli agenti di codifica AI possono aiutarti a creare, convalidare e risolvere i problemi dei CloudFormation modelli utilizzando l'aws-cloudformationabilità di Agent Toolkit for on. AWS GitHub Per le istruzioni di installazione, consulta Guida alla configurazione dell'agente.

Comprendi l'ambito di convalida

Gli strumenti locali controllano il modello e le regole che fornisci loro. Non possono garantire che l'implementazione abbia esito positivo con le risorse, le autorizzazioni e le quote correnti in un unico posto. Account AWS Regione AWS Prima della distribuzione, rivedi un set di modifiche e risolvi eventuali problemi segnalati dal servizio. CloudFormation

Nozioni di base sui modelli

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

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

  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 riferimento del modello 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 su. GitHub

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 in 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 il campione concentrato su un singolo caso d'uso.