arrow_back

Creare l'infrastruttura con Terraform su Google Cloud: Challenge Lab

Partecipa Accedi
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

Creare l'infrastruttura con Terraform su Google Cloud: Challenge Lab

Lab 1 ora 30 minuti universal_currency_alt 5 crediti show_chart Intermedio
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

GSP345

Laboratori autogestiti Google Cloud

Panoramica

In un Challenge Lab ti vengono presentati uno scenario e un insieme di attività. Anziché seguire le istruzioni dettagliate, utilizzerai le competenze apprese dai lab nella Quest per capire come completare le attività autonomamente. Tramite un sistema di valutazione automatico (visibile in questa pagina), riceverai un feedback che ti consentirà di capire se hai completato le attività in modo corretto.

Quando partecipi a un Challenge Lab non ricevi alcuna formazione sui concetti di Google Cloud. Dovrai estendere le competenze che hai appreso, ad esempio modificare i valori predefiniti e leggere ed esaminare i messaggi di errore per correggere i tuoi errori.

Per ottenere un punteggio del 100% devi completare tutte le attività correttamente nel tempo stabilito.

Questo lab è consigliato per gli studenti che si sono iscritti al corso Build Infrastructure with Terraform on Google Cloud. Accetti la sfida?

Argomenti di verifica:

  • Importazione dell'infrastruttura esistente nella tua configurazione Terraform.
  • Creazione e riferimento ai tuoi moduli Terraform.
  • Aggiunta di un backend remoto alla tua configurazione.
  • Utilizzo e implementazione di un modulo dal registro Terraform.
  • Riesecuzione del provisioning, eliminazione e aggiornamento dell'infrastruttura.
  • Verifica della connettività tra le risorse create.

Configurazione e requisiti

Prima di fare clic sul pulsante Avvia lab

Leggi le seguenti istruzioni. I lab sono a tempo e non possono essere messi in pausa. Il timer si avvia quando fai clic su Avvia lab e ti mostra per quanto tempo avrai a disposizione le risorse Google Cloud.

Con questo lab pratico avrai la possibilità di completare le attività in prima persona, in un ambiente cloud reale e non di simulazione o demo. Riceverai delle nuove credenziali temporanee che potrai utilizzare per accedere a Google Cloud per la durata del lab.

Per completare il lab, avrai bisogno di:

  • Accesso a un browser internet standard (Chrome è il browser consigliato).
Nota: utilizza una finestra del browser in incognito o privata per eseguire questo lab. Ciò evita eventuali conflitti tra il tuo account personale e l'account Studente, che potrebbero causare addebiti aggiuntivi sul tuo account personale.
  • È ora di completare il lab: ricorda che, una volta iniziato, non puoi metterlo in pausa.
Nota: se hai già un account o un progetto Google Cloud personale, non utilizzarlo per questo lab per evitare addebiti aggiuntivi al tuo account.

Scenario della sfida

Stai prendendo parte a uno stage come Cloud Engineer per una nuova startup. Per il tuo primo progetto, il tuo nuovo capo ti ha incaricato di creare un'infrastruttura in modo rapido ed efficiente e di generare un meccanismo che ti consenta di tenerne traccia per utilizzarlo o apportarvi modifiche in seguito. Per completare il progetto, ti è stato detto di utilizzare Terraform.

Per questo progetto, utilizzerai Terraform per creare, sottoporre a deployment e tenere traccia dell'infrastruttura sul provider preferito della startup, Google Cloud. Dovrai anche importare nella tua configurazione alcune istanze mal gestite e correggerle.

In questo lab, utilizzerai Terraform per importare e creare più istanze VM, una rete VPC con due subnet e una regola firewall con cui la rete VPC consenta le connessioni tra le due istanze. Creerai anche un bucket Cloud Storage per ospitare il tuo backend remoto.

Nota: alla fine di ogni sezione, mediante i comandi, plan e apply, pianifica e applica le modifiche per consentire la verifica del tuo lavoro. Siccome aggiorneremo molti file Terraform in questo lab, assicurati di usarne i percorsi corretti e mantieni il giusto rientro.

Attività 1: crea i file di configurazione

  1. In Cloud Shell, crea i tuoi file di configurazione Terraform e una struttura di directory simile alla seguente:
main.tf variables.tf modules/ └── instances ├── instances.tf ├── outputs.tf └── variables.tf └── storage ├── storage.tf ├── outputs.tf └── variables.tf
  1. Compila i file variables.tf nella directory radice e all'interno dei moduli. Aggiungi tre variabili a ogni file: region, zone e project_id. Come valori predefiniti, utilizza , e il tuo ID progetto Google Cloud.
Nota: dovresti usare queste variabili ovunque siano applicabili nelle configurazioni delle tue risorse.
  1. Aggiungi il blocco Terraform e il provider Google al file main.tf. Verifica che l'argomento zone sia stato aggiunto insieme agli argomenti project e region nel blocco del provider Google.

  2. Inizializza Terraform.

Attività 2: importa l'infrastruttura

  1. Nella console Google Cloud, nel menu di navigazione, fai clic su Compute Engine > Istanze VM. Due istanze denominate tf-instance-1 e tf-instance-2 sono già state create automaticamente.
Nota: facendo clic su una delle istanze, puoi trovarne l'ID istanza, l'immagine disco di avvio e il tipo di macchina. Questi elementi sono tutti necessari per scrivere correttamente le configurazioni e importarle in Terraform.
  1. Importa le istanze esistenti nel modulo instances. Per farlo, dovrai seguire questi passaggi:
  • Innanzitutto, aggiungi al file main.tf il riferimento al modulo, quindi inizializza nuovamente Terraform.
  • Quindi, scrivi le configurazioni delle risorse nel file instances.tf in modo che corrispondano alle istanze preesistenti.
    • Denomina le tue istanze tf-instance-1 e tf-instance-2.
    • Ai fini di questo lab, la configurazione delle risorse deve essere ridotta al minimo. Per farlo, dovrai solo includere i seguenti argomenti aggiuntivi alla tua configurazione: machine_type, boot_disk, network_interface, metadata_startup_script e allow_stopping_for_update. Per gli ultimi due argomenti, utilizza la seguente configurazione poiché in questo modo non sarà necessario ricrearla:
    metadata_startup_script = <<-EOT #!/bin/bash EOT allow_stopping_for_update = true
  • Dopo aver scritto le configurazioni delle risorse all'interno del modulo, utilizza il comando terraform import per importarle nel tuo modulo instances.
  1. Applica le tue modifiche. Nota che, poiché non hai compilato tutti gli argomenti in tutta la configurazione, il comando apply aggiornerà le istanze in loco. Questo va bene ai fini del lab, ma in un ambiente di produzione dovresti assicurarti di compilare correttamente tutti gli argomenti prima dell'importazione.

Fai clic su Controlla i miei progressi per verificare l'obiettivo. Importa l'infrastruttura.

Attività 3: configura un backend remoto

  1. Crea una risorsa bucket Cloud Storage all'interno del modulo storage. Per il bucket name, utilizza . Per gli altri argomenti, puoi semplicemente utilizzare:

    • location = "US"
    • force_destroy = true
    • uniform_bucket_level_access = true
Nota: puoi aggiungere valori di output all'interno del file outputs.tf.
  1. Aggiungi al file main.tf il riferimento al modulo. Inizializza il modulo e, con il comando apply, applica le modifiche per creare il bucket utilizzando Terraform.

  2. Configura questo bucket di archiviazione come il backend remoto all'interno del file main.tf. Assicurati di utilizzare il prefisso terraform/state in modo che possa essere valutato correttamente.

  3. Se hai scritto correttamente la configurazione, con il comando init, Terraform ti chiederà se vuoi copiare nel nuovo backend i dati di stato esistenti. Al prompt, digita yes.

Fai clic su Controlla i miei progressi per verificare l'obiettivo. Configura un backend remoto.

Attività 4: modifica e aggiorna l'infrastruttura

  1. Vai al modulo instances e modifica la risorsa tf-instance-1 in modo che usi un tipo di macchina e2-standard-2.

  2. Modifica la risorsa tf-instance-2 in modo che usi un tipo di macchina e2-standard-2.

  3. Aggiungi una terza risorsa instance e denominala . Per questa terza risorsa, utilizza un tipo di macchina e2-standard-2. Assicurati di modificare il tipo di macchina in e2-standard-2 per tutte e tre le istanze.

  4. Inizializza Terraform e utilizza il comando apply per applicare le modifiche.

Nota: facoltativamente, puoi aggiungere all'interno del modulo valori di output da queste risorse nel file outputs.tf.

Fai clic su Controlla i miei progressi per verificare l'obiettivo. Modifica e aggiorna l'infrastruttura.

Attività 5: distruggi le risorse

  1. Distruggi la terza istanza rimuovendo la risorsa dal file di configurazione. Dopo la rimozione, inizializza Terraform e applica le modifiche con il comando apply.

Fai clic su Controlla i miei progressi per verificare l'obiettivo. Distruggi le risorse.

Attività 6: utilizza un modulo del registro

  1. Nel registro Terraform, vai al modulo di rete.

  2. Aggiungi questo modulo al tuo file main.tf. Utilizza le seguenti configurazioni:

  • Utilizza la versione 6.0.0 (altre versioni potrebbero causare errori di compatibilità).
  • Denomina il VPC e utilizza una modalità di routing globale.
  • Specifica 2 subnet nella regione e denominale subnet-01 e subnet-02. Per gli argomenti delle subnet, hai solo bisogno di Name, IP e Region.
  • Utilizza l'IP 10.10.10.0/24 per subnet-01 e 10.10.20.0/24 per subnet-02.
  • Non sono necessari route o intervalli secondari associati a questo VPC, quindi puoi ometterli dalla configurazione.
  1. Una volta scritta la configurazione del modulo, inizializza Terraform ed esegui un comando apply per creare le reti.

  2. Quindi, vai al file instances.tf e aggiorna le risorse di configurazione per connettere tf-instance-1 a subnet-01 e tf-instance-2 a subnet-02.

Nota: per quanto riguarda la configurazione delle istanze, sarà necessario aggiornare l'argomento network a e quindi aggiungere l'argomento subnetwork con la subnet corretta per ogni istanza.

Fai clic su Controlla i miei progressi per verificare l'obiettivo. Utilizza un modulo del registro.

Attività 7: configura un firewall

  • Crea una risorsa regola firewall nel file main.tf e denominala tf-firewall.
    • Questa regola firewall dovrebbe consentire alla rete di autorizzare connessioni in entrata in tutti gli intervalli IP (0.0.0.0/0) sulla porta TCP 80.
    • Assicurati di aggiungere l'argomento source_ranges con l'intervallo IP corretto (0.0.0.0/0).
    • Inizializza Terraform e utilizza il comando apply per applicare le modifiche.
Nota: per recuperare l'argomento network richiesto, puoi controllare lo stato e trovare l'elemento ID o self_link della risorsa google_compute_network che hai creato. Il formato sarà projects/PROJECT_ID/global/networks/.

Fai clic su Controlla i miei progressi per verificare l'obiettivo. Configura un firewall.

Test di connettività (facoltativo)

Dopo aver creato una regola firewall per consentire le connessioni interne sul VPC, puoi facoltativamente eseguire un test di connettività di rete.

  1. Assicurati che entrambe le tue VM siano in esecuzione.

  2. Vai a Intelligence di rete > Connectivity Tests. Esegui un test sulle due VM per verificarne la connettività. A questo punto hai convalidato la connettività tra le istanze.

Nota: assicurati che l'API Network Management sia abilitata. In caso contrario, fai clic su Abilita.

Le tue impostazioni di configurazione dovrebbero essere simili alle seguenti:

Pagina di configurazione delle impostazioni

Complimenti!

Se hai importato, creato, modificato e configurato l'architettura nel tempo stabilito, hai dimostrato un'ottima conoscenza di Terraform! In questo lab, per prima cosa, hai importato in Terraform due VM preconfigurate e creato un bucket Cloud Storage per configurare il tuo backend. Quindi, hai aggiunto un'altra istanza e hai fatto pratica nel modificare e aggiornare le configurazioni delle risorse all'interno dei tuoi moduli. Infine, hai utilizzato un modulo del registro Terraform per creare un VPC con due subnet, hai collegato le istanze al modulo e hai creato una regola firewall per consentire le connessioni tra le istanze.

Build Infrastructure with Terraform on Google Cloud

Guadagna il tuo prossimo badge delle competenze

Questo self-paced lab fa parte del corso con badge delle competenze Build Infrastructure with Terraform on Google Cloud. Il completamento di questo corso con badge delle competenze ti permette di ottenere il badge indicato in precedenza come riconoscimento per l'obiettivo raggiunto. Condividi il badge sul tuo CV e sulle piattaforme social e annuncia il risultato che hai raggiunto utilizzando #GoogleCloudBadge.

Passaggi successivi

Ora che hai dimostrato le tue competenze su Terraform, ti suggeriamo di registrarti per la certificazione HashiCorp Infrastructure Automation Certification. La certificazione Associate di Terraform è destinata ai Cloud Engineer specializzati in operazioni, IT o sviluppo che conoscono i concetti e le competenze di base associati alla tecnologia open source HashiCorp Terraform. I candidati saranno preparati al meglio per questo esame se hanno esperienza professionale nell'uso di Terraform nella produzione, ma potrebbe anche essere sufficiente completare gli obiettivi dell'esame in un ambiente demo personale. Pertanto, se vuoi portare le tue competenze al livello successivo e verificare le tue capacità di automazione dell'infrastruttura, ti consigliamo di consultare la guida alla preparazione del test e la revisione dell'esame per poi registrarti all'esame quando ti senti in grado di superarlo. In bocca al lupo!

Formazione e certificazione Google Cloud

… per utilizzare al meglio le tecnologie Google Cloud. I nostri corsi ti consentono di sviluppare competenze tecniche e best practice per aiutarti a metterti subito al passo e avanzare nel tuo percorso di apprendimento. Offriamo vari livelli di formazione, dal livello base a quello avanzato, con opzioni di corsi on demand, dal vivo e virtuali, in modo da poter scegliere il più adatto in base ai tuoi impegni. Le certificazioni ti permettono di confermare e dimostrare le tue abilità e competenze relative alle tecnologie Google Cloud.

Ultimo aggiornamento del manuale: 22 marzo 2024

Ultimo test del lab: 22 marzo 2024

Copyright 2024 Google LLC Tutti i diritti riservati. Google e il logo Google sono marchi di Google LLC. Tutti gli altri nomi di società e prodotti sono marchi delle rispettive società a cui sono associati.