menu
arrow_back

Interact with Terraform Modules

search share Partecipa Accedi

Interact with Terraform Modules

1 ora 5 crediti

Questo lab è stato sviluppato in collaborazione con il nostro partner Hashicorp. Le tue informazioni personali potrebbero essere condivise con Hashicorp, lo sponsor del lab, se hai acconsentito a ricevere aggiornamenti, annunci e offerte di prodotti nel profilo del tuo account.

GSP751

Laboratori autogestiti Google Cloud

Panoramica

Man mano che gestisci la tua infrastruttura con Terraform, vengono create configurazioni sempre più complesse. Non esiste un limite intrinseco alla complessità di un file di configurazione o di una directory di Terraform, quindi puoi continuare a scrivere e aggiornare i file di configurazione in un'unica directory. Se procedi in questo modo, però, potresti riscontrare uno o più dei seguenti problemi:

  • I file di configurazione diventeranno sempre più difficili da comprendere ed esplorare.
  • L'aggiornamento della configurazione diventerà più rischioso perché un aggiornamento in un blocco può causare conseguenze indesiderate su altri blocchi della configurazione.
  • Può aumentare la duplicazione di blocchi di configurazione simili; ad esempio, quando configuri ambienti di sviluppo/temporanei/di produzione separati, questi genereranno un carico maggiore in fase di aggiornamento di quelle parti della configurazione.
  • Se vuoi condividere parti della configurazione tra progetti e team, tagliare e incollare i blocchi di configurazione in diversi progetti può essere una soluzione soggetta a errori e difficile da gestire.

In questo lab scoprirai in che modo i moduli possono risolvere questi problemi, qual è la struttura di un modulo Terraform e quali sono le best practice per l'utilizzo e la creazione di moduli.

A cosa servono i moduli?

Ecco alcuni modi in cui i moduli possono essere utili per risolvere i problemi indicati sopra

  • Organizzare la configurazione: i moduli consentono di esplorare, comprendere e aggiornare più facilmente la configurazione, mantenendo insieme parti della configurazione correlate tra loro. Anche un'infrastruttura di complessità moderata può richiedere l'implementazione di centinaia o migliaia di righe di configurazione. Grazie ai moduli, puoi organizzare la configurazione in componenti logici.

  • Incapsulare la configurazione: un altro vantaggio dell'utilizzo dei moduli consiste nell'incapsulamento della configurazione in componenti logici separati. L'incapsulamento può contribuire a evitare conseguenze indesiderate, ad esempio una modifica in una parte della configurazione che causa modifiche in altre parti della configurazione, e riduce le possibilità di errori banali come l'utilizzo dello stesso nome per due risorse diverse.

  • Riutilizzare la configurazione: scrivere tutta la configurazione senza utilizzare il codice esistente può essere un'attività lunga e soggetta a errori. I moduli ti consentono di risparmiare tempo e ridurre errori costosi attraverso il riutilizzo di una configurazione già scritta da te, da altri membri del tuo team o da altri professionisti di Terraform che hanno pubblicato moduli che puoi utilizzare. Puoi anche condividere i moduli scritti da te con il tuo team o con il pubblico, mettendo a loro disposizione i frutti del tuo lavoro.

  • Assicurare coerenza e best practice: i moduli possono essere utili per garantire la coerenza delle tue configurazioni. Grazie alla coerenza, le configurazioni complesse diventano più facili da comprendere ed è possibile applicare le best practice in tutta la configurazione. Ad esempio, i cloud provider offrono molte opzioni per la configurazione di servizi di archiviazione di oggetti, come Amazon S3 (Simple Storage Service) o i bucket Cloud Storage di Google. Molti incidenti di sicurezza di alto profilo hanno coinvolto l'archiviazione non corretta di oggetti protetti e, dato il numero di opzioni di configurazione complesse coinvolte, è facile che questi servizi vengano accidentalmente configurati in modo errato.

L'uso dei moduli può aiutare a ridurre questi errori. Ad esempio, potresti creare un modulo per descrivere come verranno configurati tutti i bucket del sito web pubblico dell'organizzazione e un altro modulo per i bucket privati utilizzati per le applicazioni di logging. Inoltre, se è necessario aggiornare una configurazione per un tipo di risorsa, con i moduli è possibile apportare l'aggiornamento in un unico posto e fare in modo che venga applicato a tutti i casi in cui viene utilizzato quel modulo.

Obiettivi

In questo lab imparerai a:

  • Utilizzare un modulo del registro

  • Creare un modulo

Crea un account Qwiklabs per leggere il resto del lab e tanto altro ancora.

  • Acquisisci accesso temporaneo a Google Cloud Console.
  • Oltre 200 lab dal livello iniziale a quelli più avanzati.
  • Corsi brevi per apprendere secondo i tuoi ritmi.
Crea un account per iniziare questo lab