Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
Infrastructure Manager (Infra Manager) automatizza il deployment e la gestione delle risorse dell' Google Cloud infrastruttura utilizzando Terraform.
Infra Manager ti consente di eseguire il deployment in modo programmatico su Google Cloud,
in modo da utilizzare questo servizio anziché gestire un'altra toolchain per lavorare con Terraform su Google Cloud.
Una configurazione Terraform definisce l'infrastruttura. La configurazione viene eseguita su Google Cloud da Infra Manager, consentendoti di gestire le risorse utilizzando Infrastructure as Code (IaC).
Infra Manager non gestisce il deployment delle applicazioni sulle tue risorse. Per gestire il deployment delle applicazioni, puoi utilizzare Google Cloud
prodotti come Cloud Build e
Cloud Deploy. Puoi anche utilizzare strumenti di terze parti o la tua toolchain.
Per utilizzare Infra Manager, devi conoscere Terraform.
Per saperne di più su Terraform, inizia con la sezione Che cos'è Terraform? di HashiCorp.
Infra Manager ti consente di utilizzare IaC per gestire il ciclo di vita delle
Google Cloud risorse:
Terraform è definito in modo dichiarativo in una
configurazione Terraform. Ciò significa
che la configurazione descrive lo stato finale dell'infrastruttura.
Puoi eseguire il controllo della versione della configurazione Terraform in un repository Git o in un bucket Cloud Storage.
Utilizza il controllo delle versioni degli oggetti per eseguire il controllo delle versioni delle configurazioni in un bucket di archiviazione.
Utilizza Infra Manager per aggiornare il deployment dell'infrastruttura con le revisioni. Per ogni revisione, Infra Manager memorizza quanto segue:
Log
La configurazione utilizzata per eseguire la revisione
L'elenco delle Google Cloud risorse create dalla revisione
Il file di stato creato nell'ambito di ogni deployment e revisione
Di seguito è riportata una descrizione di cosa succede in uno scenario semplice quando utilizzi Infra Manager per eseguire il deployment dell'infrastruttura.
Le risorse di infrastruttura su cui eseguire il deployment Google Cloud sono definite in una configurazione Terraform.
Puoi creare questo file autonomamente o utilizzare una configurazione già scritta per Google Cloud. Per maggiori dettagli, consulta la pagina Terraform e Infrastructure Manager.
Puoi archiviare la configurazione di Terraform in un bucket Cloud Storage, in un repository Git o sulla tua macchina locale.
Quando utilizzi Infra Manager per eseguire il deployment di risorse da una configurazione Terraform, crei un deployment. Per creare un deployment,
Infra Manager:
Convalida la richiesta. Ad esempio, garantisce che nel comando sia stata specificata la posizione della configurazione di Terraform.
Crea un job Cloud Build utilizzando un'immagine container. Questa immagine è di proprietà e gestita da Google Cloud. Per informazioni dettagliate sull'ambiente Cloud Build, consulta Ambiente di runtime. Il job Cloud Build automatizza le seguenti attività:
Scarica il modulo Terraform dal bucket di archiviazione o dal repository Git.
Inizializza Terraform (terraform init)
Convalida la configurazione di Terraform (terraform validate)
Attiva la configurazione (terraform apply o terraform destroy
se stai eliminando un deployment)
Trasmette i log di Cloud Build in un
bucket di archiviazione creato da Infra Manager.
Se il deployment non va a buon fine, Infra Manager ritenta automaticamente le operazioni terraform init o terraform apply in determinati scenari, ad esempio se non è riuscito a causa di interruzioni intermittenti della rete. Questi nuovi tentativi vengono eseguiti un numero limitato di volte.
Crea un bucket Cloud Storage e memorizza i metadati relativi al deployment. Per ulteriori informazioni sul deployment e sui metadati, consulta la Panoramica di deployment e revisione.
Al termine del deployment, le Google Cloud risorse vengono provisionate come descritto nella configurazione.
Puoi eseguire query sul deployment di Infra Manager per:
Lo stato del deployment.
L'elenco delle risorse di cui viene eseguito il deployment nell'ambito del deployment.
Dettagli sulle singole risorse che fanno parte di un deployment.
Ambiente di runtime
L'ambiente di runtime di Infra Manager è un
ambiente Cloud Build temporaneo.
Infra Manager esegue i comandi Terraform in questo ambiente Cloud Build, dopodiché l'ambiente viene eliminato.
Il sistema operativo specifico, il software disponibile e altri dettagli di configurazione dell'ambiente Cloud Build sono dettagli di implementazione interna di Infra Manager e possono cambiare in qualsiasi momento.
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Difficile da capire","hardToUnderstand","thumb-down"],["Informazioni o codice di esempio errati","incorrectInformationOrSampleCode","thumb-down"],["Mancano le informazioni o gli esempi di cui ho bisogno","missingTheInformationSamplesINeed","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2025-09-05 UTC."],[[["\u003cp\u003eInfrastructure Manager automates the deployment and management of Google Cloud resources using Terraform, eliminating the need for a separate Terraform toolchain.\u003c/p\u003e\n"],["\u003cp\u003eInfra Manager uses Infrastructure as Code (IaC) principles, where Terraform configurations define the desired infrastructure state, and these configurations can be versioned in Git or Cloud Storage.\u003c/p\u003e\n"],["\u003cp\u003eDeployments in Infra Manager create a Cloud Build job, maintained by Google, which handles Terraform operations like initialization, validation, and application, as well as logging and retries in case of failure.\u003c/p\u003e\n"],["\u003cp\u003eInfra Manager does not manage application deployments, but instead focuses on provisioning the underlying Google Cloud resources, allowing users to employ other Google Cloud or third-party tools for application management.\u003c/p\u003e\n"],["\u003cp\u003eInfra Manager uses an ephemeral Cloud Build environment to execute Terraform commands, ensuring a consistent runtime environment, with the specific details of the environment being subject to change.\u003c/p\u003e\n"]]],[],null,["# Infrastructure Manager overview\n\nInfrastructure Manager (Infra Manager) automates the deployment and\nmanagement of Google Cloud infrastructure resources using Terraform.\n\nInfra Manager allows you to deploy programmatically to Google Cloud,\nallowing you to use this service rather than maintaining a different\ntoolchain to work with Terraform on Google Cloud.\n\nA Terraform configuration defines the infrastructure. The configuration is\ndeployed onto Google Cloud by Infra Manager, enabling you to\nmanage resources using Infrastructure as Code (IaC).\n\nInfra Manager does not manage the deployment of applications onto\nyour resources. To manage application deployment, you can use Google Cloud\nproducts like [Cloud Build](/build/docs) and\n[Cloud Deploy](/deploy/docs). You can also use third-party tools or your\nown toolchain.\n\nTo work with Infra Manager, you should be familiar with Terraform.\nTo learn more about Terraform, start\nwith HashiCorp's\n[What is Terraform?](https://developer.hashicorp.com/terraform/intro).\n\nTo learn more about Terraform with Google Cloud, see\n[Terraform on Google Cloud](/docs/terraform).\n\nInfra Manager and Infrastructure as Code\n----------------------------------------\n\nInfra Manager allows you to use IaC to manage the lifecycle of\nGoogle Cloud resources:\n\n- Terraform is defined declaratively in a [Terraform configuration](/infrastructure-manager/docs/terraform). This means that the configuration describes the end state of your infrastructure.\n- You can version the Terraform configuration either in a Git repository, or in a [Cloud Storage bucket](/infrastructure-manager/docs/upload-terraform-configuration). Use [Object Versioning](/storage/docs/object-versioning) to version configurations in a storage bucket.\n- Use Infra Manager to update your infrastructure deployment with [revisions](/infrastructure-manager/docs/deployments-revisions#revisions). For each revision, Infra Manager stores the following:\n - Logs\n - The configuration used to do the revision\n - The list of Google Cloud resources created by the revision\n - The state file created as part of each deployment and revision\n\nSee [Infrastructure as Code on Google Cloud](/docs/terraform/iac-overview)\nfor more information about IaC.\n\nHow Infra Manager works\n-----------------------\n\nThe following is a description of what happens in a simple scenario when you\nuse Infra Manager to deploy infrastructure.\n\n1. The infrastructure resources to deploy onto Google Cloud are defined in a Terraform configuration.\n - You can create this file yourself, or use a configuration that is already written for Google Cloud. See [Terraform and Infrastructure Manager](/infrastructure-manager/docs/terraform) for details.\n - You can store the Terraform configuration in a Cloud Storage bucket, a Git repository, or on your local machine.\n2. When you use Infra Manager to deploy resources from a Terraform configuration, you create a deployment. To create a deployment, Infra Manager:\n 1. Validates the request. For example, it ensures that in your command you specified the location of the Terraform configuration.\n 2. Creates a Cloud Build job using a container image. This image is owned and maintained by Google Cloud. See [Runtime environment](#runtime_environment) for details about the Cloud Build environment. The Cloud Build job automates the following tasks:\n 1. Downloads the Terraform module from the storage bucket or Git repository.\n 2. Initializes Terraform (`terraform init`)\n 3. Validates the Terraform configuration (`terraform validate`)\n 4. Actuates the configuration (`terraform apply`, or `terraform destroy` if you are deleting a deployment)\n 5. Streams Cloud Build logs into a storage bucket created by Infra Manager.\n 6. If the deployment fails, Infra Manager automatically retries the `terraform init` or `terraform apply` operations in certain scenarios, such as if it failed with intermittent network outages. These retries are performed a limited number of times.\n 3. Creates a Cloud Storage bucket and stores metadata about the deployment. For more information about the deployment and metadata, see [Deployment and revision overview](/infrastructure-manager/docs/deployments-revisions).\n3. When the deployment is complete, the Google Cloud resources are\n provisioned as the configuration described them.\n\n You can query Infra Manager deployment for:\n - The status of the deployment.\n - The list of resources that are deployed as part of the deployment.\n - Details about individual resources that are part of a deployment.\n\nRuntime environment\n-------------------\n\nThe runtime environment of Infra Manager is an\n[ephemeral Cloud Build environment](/build/docs/overview#ephemeral-build-environment).\nInfra Manager executes Terraform commands in this\nCloud Build environment, and then the environment is discarded.\n\nThe specific operating system, available software, and other configuration\ndetails of the Cloud Build environment are internal implementation\ndetails of Infra Manager, and can change at any time.\n\nYou can specify which\n[supported version of Terraform](/infrastructure-manager/docs/terraform#terraform_versions)\nto use for each deployment.\n\nDon't include personal or sensitive information\n-----------------------------------------------\n\nDon't include personal or sensitive information in Terraform configuration\nvalues.\n\nFor additional information about Terraform configurations and sensitive data,\nsee\n[Terraform configuration values and sensitive data](/infrastructure-manager/docs/terraform#config-values-data).\n\nWhat's next\n-----------\n\n- Learn more about [Terraform with Google Cloud](/docs/terraform).\n- [Create a deployment](/infrastructure-manager/docs/deploy-resources).\n- [Update a deployment](/infrastructure-manager/docs/update-deployment).\n- [Automate deployments](/infrastructure-manager/docs/automate-git).\n- [Delete a deployment](/infrastructure-manager/docs/delete-deployments)."]]