Esegui il deployment degli elementi di base utilizzando Terraform scaricati dalla console

Panoramica

La guida alla configurazione di Cloud Foundation nella console Google Cloud consente agli amministratori aziendali di configurare una piattaforma Google Cloud di livello enterprise tramite un'interfaccia guidata e di eseguirne il deployment direttamente dalla console o scaricarla come Terraform. Gli amministratori possono configurare un'entità, gli utenti e i gruppi dell'organizzazione, collegare o configurare un account di fatturazione e configurare la gerarchia di risorse (cartelle e progetti), criteri IAM, networking iniziale e logging e monitoraggio centralizzati.

Quando i clienti scaricano la loro configurazione come Terraform, la console genera un file Terraform da distribuire in un secondo momento. Questo tutorial fornisce le istruzioni per il deployment della configurazione Terraform esportata in modo che funzioni con qualsiasi infrastruttura precedente.

Prerequisiti

Consulta le best practice per l'utilizzo di Terraform, che includono linee guida per uno sviluppo efficace con Terraform tra i membri del team e i flussi di lavoro.

Deployment di Terraform con Google Cloud Shell

Cloud Shell include Terraform preinstallato e pre-autenticato, così puoi iniziare rapidamente.

  1. Nella guida alla configurazione nella console, fai clic su Scarica come Terraform e salva la configurazione.
  2. Apri Cloud Shell.
  3. In Cloud Shell, crea una directory e vai a questa:
    mkdir cloud-foundation-example && cd cloud-foundation-example
    
  4. Carica la configurazione Terraform che hai scaricato nel passaggio 1.
    1. Nel menu con tre puntini Altro di Cloud Shell, seleziona Carica e fai clic su Scegli file per selezionare la configurazione di Terraform. Imposta la directory di destinazione sulla cartella che hai creato nel passaggio 2, quindi fai clic su Carica.
  5. Assicurati di essere nella directory "cloud-foundation-example".
  6. Crea un bucket dell'interfaccia a riga di comando di Google Cloud per archiviare lo stato Terraform Remote State. Uno stato remoto consente a Terraform di utilizzare archivi di oggetti come l'interfaccia a riga di comando gcloud per archiviare le informazioni sullo stato della tua infrastruttura gestita da Terraform. Questa configurazione offre vantaggi come la delega del team e il blocco dello stato.
    1. Per creare il bucket dell'interfaccia a riga di comando gcloud, esegui il comando seguente:
      gsutil mb gs://tf-state-$PROJECT_ID
      
  7. Definisci una configurazione del backend Terraform all'interno di un file backend.tf e sostituisci PROJECT_ID in modo che corrisponda all'ID progetto che hai utilizzato nel passaggio 6. Per maggiori dettagli, consulta la sezione sull'archiviazione dello stato di Terraform nell'interfaccia a riga di comando gcloud.
    # backend.tf
    terraform {
       backend "gcs" {
         bucket  = "tf-state-PROJECT_ID"
         prefix  = "terraform/state"
       }
    }
    
  8. Esegui terraform init. Questo processo inizializza la directory di lavoro che contiene i file di configurazione Terraform e il backend.
  9. Esegui un'esecuzione del test per vedere i risultati dell'esecuzione del piano Terraform e della convalida del codice Terraform. Output di esempio:
    ...
    Plan: 6 to add, 0 to change, 0 to destroy.
    Note: You didn't use the -out option to save this plan, so Terraform can't
    guarantee to take exactly these actions if you run "terraform apply" now.
    
  10. Applica la configurazione eseguendo terraform apply, che esegue il deployment delle tue risorse in GCP. Quando richiesto, inserisci sì.
  11. Naviga nell'interfaccia utente per verificare che le risorse siano ora implementate nel tuo account/progetto.

Gestisci l'infrastruttura come codice con Terraform, Cloud Build e AMPOps

Per istruzioni complete, ti consigliamo di seguire questo tutorial. Questa opzione è destinata agli amministratori di piattaforma e agli operatori che cercano una strategia per apportare modifiche all'infrastruttura in modo prevedibile e ripetuto. La guida presuppone che tu abbia dimestichezza con Google Cloud, Linux e GitHub. I passaggi di questa opzione sono i seguenti:

  1. Configura il tuo repository GitHub.
  2. Configurare Terraform per archiviare lo stato in un bucket Cloud Storage.
  3. Concedi le autorizzazioni all'account di servizio Cloud Build.
  4. Connetti Cloud Build al repository GitHub.
  5. Modifica la configurazione dell'ambiente in un ramo di funzionalità.
  6. Promuovere le modifiche all'ambiente di sviluppo.
  7. Promuovere le modifiche all'ambiente di produzione.