Questa pagina descrive come utilizzare Infrastructure Manager per aggiornare un deployment. Ecco alcuni casi in cui potresti aggiornare un deployment:
Per riportare l'infrastruttura a uno stato scelto.
Quando crei un deployment, dopo un po' di tempo le risorse potrebbero essere cambiate. Ad esempio, alcune risorse potrebbero essere state modificate da qualcuno che lavora nella console. Puoi aggiornare il deployment utilizzando la configurazione Terraform originale per riportarlo allo stato scelto.
Per implementare le modifiche all'infrastruttura.
Dopo aver creato un deployment, potresti voler modificare l'infrastruttura. Ad esempio, aggiungendo nuove risorse o modificando alcune configurazioni. Puoi aggiornare il deployment utilizzando una configurazione Terraform che descrive la nuova infrastruttura.
Questa pagina presuppone che tu abbia familiarità con Terraform. Per i dettagli, vedi Terraform e Infra Manager.
Prima di iniziare
- Assicurati che Infra Manager sia abilitato.
- Assicurati di disporre delle autorizzazioni IAM necessarie per creare i deployment:
roles/config.admin - Assicurati di avere un account di servizio con le autorizzazioni necessarie. Per i dettagli, vedi Configurare il service account.
- Identifica il deployment di Infra Manager da aggiornare.
Identifica la configurazione Terraform di cui eseguire il deployment per l'aggiornamento. È possibile utilizzare qualsiasi configurazione per una revisione. Questa configurazione è spesso una versione identica o aggiornata della configurazione già di cui è stato eseguito il deployment.
Assicurati che questa configurazione Terraform sia conforme ai vincoli, incluso il fatto che la configurazione non contenga dati sensibili.
Verifica la quota della tua organizzazione per i prodotti associati all'infrastruttura prevista. Potresti riscontrare errori di deployment se l'infrastruttura prevista supera la quota della tua organizzazione per i prodotti utilizzati dal deployment. Per ulteriori informazioni, consulta Quote e limiti.
Adotta le misure necessarie per la migrazione dei dati o la continuità del servizio per le risorse che stai modificando.
Se vuoi visualizzare l'anteprima dell'aggiornamento prima di configurare le risorse, consulta Visualizzare l'anteprima di un aggiornamento di un deployment.
Concedere autorizzazioni specifiche per la configurazione
Per eseguire il deployment delle risorse specificate nella configurazione Terraform, il account di servizio che utilizzi per chiamare Infra Manager deve disporre di autorizzazioni specifiche per: Google Cloud
Google Cloud Risorse definite nella configurazione che stai utilizzando per la revisione.
Se la configurazione che stai utilizzando per la revisione definisce risorse diverse rispetto alla configurazione utilizzata per il deployment, devi disporre delle autorizzazioni per le risorse definite in entrambe le configurazioni.
Le autorizzazioni specifiche per le risorse definite nella configurazione si aggiungono alle autorizzazioni di cui il account di servizio ha bisogno per utilizzare il servizio Infra Manager.
Per informazioni dettagliate sulla concessione delle autorizzazioni per le Google Cloud risorse e per assicurarti di avere accesso ai progetti necessari, consulta Configurare il service account.
Connetti il repository Git privato e l'host a Cloud Build
Se stai eseguendo il deployment di una configurazione Terraform da un repository Git privato, devi connettere l'host Git e il repository a Cloud Build.
GitHub
GitHub Enterprise
GitLab
GitLab Enterprise
Developer Connect
Aggiornare un deployment
Per aggiornare un deployment, esegui il deployment di una configurazione utilizzando lo stesso nome del deployment e viene creata una revisione. Per ulteriori dettagli, vedi Panoramica di deployment e revisioni.
Se non hai un deployment esistente, consulta Eseguire il deployment dell'infrastruttura utilizzando Infra Manager.
Per visualizzare l'anteprima di un aggiornamento senza eseguire il provisioning delle risorse, consulta Visualizzare l'anteprima di un deployment.
Seleziona la scheda con il flusso di lavoro scelto per ulteriori informazioni su come aggiornare un deployment.
Console
Questa sezione descrive l'aggiornamento di una configurazione Terraform utilizzando Infra Manager nella Google Cloud console.
Esegui il deployment della configurazione e crea una revisione:
- Nella Google Cloud console, vai alla pagina Infra Manager.
- Nella pagina Deployment, cerca nella colonna ID e fai clic sul deployment che vuoi aggiornare.
- Nella pagina intitolata con l'ID deployment, fai clic su Modifica.
- Nella pagina Dettagli deployment, puoi modificare i campi Versione Terraform, Service account, e Origine della configurazione Terraform . Se fornisci un repository Git privato, assicurati di aver collegato l'host e il repository a Cloud Build.
Fai clic su Continua.
- Nella pagina Dettagli Terraform, puoi modificare i Valori di input per la configurazione Terraform. Fai clic su Continua.
- Nella pagina Dettagli avanzati, puoi modificare i campi Etichette e annotazioni, Pool di worker e Bucket Cloud Storage degli artefatti.
- Quando sei soddisfatto delle modifiche apportate al deployment, fai clic su Aggiorna per avviare la procedura di aggiornamento.
Per ulteriori informazioni sui parametri di deployment e sui relativi formati, consulta la documentazione Eseguire il deployment delle risorse.
gcloud CLI
Questa sezione descrive il deployment di una configurazione Terraform archiviata in un bucket Cloud Storage. Un bucket di archiviazione ti consente di controllare l'accesso alla configurazione.
- Assicurati che la configurazione Terraform si trovi in un bucket Cloud Storage. Per ulteriori dettagli, consulta Caricare una configurazione in un bucket di archiviazione.
Se il bucket di archiviazione si trova in un progetto diverso da quello in cui esegui Infra Manager, devi assicurarti che il account di servizio di Infra Manager disponga dell'autorizzazione di lettura per il bucket. Per ulteriori dettagli, consulta Configurare il service account.
Se il bucket di archiviazione si trova nello stesso progetto di Infra Manager, l'autorizzazione di lettura per il bucket è già abilitata.
Esegui il deployment della configurazione e crea una revisione:
gcloud infra-manager deployments apply projects/PROJECT_ID/locations/LOCATION/deployments/DEPLOYMENT_ID \ --service-account projects/SERVICE_ACCOUNT_PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT \ --gcs-source gs://BUCKET_NAME/OBJECT_NAME \ --quota-validation=QUOTA_VALIDATION \ --input-values=INPUT_1_NAME=VALUE,INPUT_2_NAME=VALUE \ --tf-version-constraint=TERRAFORM_VERSION \ --annotations="ANNOTATION_KEY=ANNOTATION_VALUE" \ --provider-source=SERVICE_MAINTAINED
- PROJECT_ID: l'ID progetto in cui viene eseguito Infra Manager.
- LOCATION: la località in cui viene eseguito Infra Manager. Per l'elenco delle località valide, consulta Località di Infra Manager.
- DEPLOYMENT_ID: l'identificatore del deployment che specifichi. Per informazioni dettagliate sui vincoli relativi all'identificatore del deployment, consulta Nome del deployment.
- SERVICE_ACCOUNT_PROJECT_ID è l'ID progetto del account di servizio. In genere, si tratta dello stesso progetto in cui viene eseguito Infra Manager.
- SERVICE_ACCOUNT: il nome del account di servizio che utilizzi per chiamare Infra Manager.
- BUCKET_NAME: il nome del bucket di archiviazione in cui è memorizzata la configurazione.
- OBJECT_NAME: il nome dell'oggetto del file di configurazione. Questo oggetto può essere una directory o un file ZIP, ma non un file Terraform. Se utilizzi il controllo delle versioni degli oggetti, puoi anche specificare il numero di generazione dell'oggetto. Per ulteriori dettagli, consulta Utilizzare oggetti con controllo delle versioni.
Se il bucket di archiviazione è il percorso principale della configurazione Terraform, OBJECT_NAME è facoltativo.
- (Facoltativo) QUOTA_VALIDATION: il valore che determina se la convalida della quota per le risorse nei file di configurazione Terraform è abilitata o applicata quando crei un deployment. I valori possibili includono:
ENABLED: abilita la convalida della quota di computing per le risorse nei file di configurazione Terraform. Fornisce visibilità sulle risorse con quote insufficienti.