Terraform e Infrastructure Manager

Para trabajar con Infrastructure Manager (Infra Manager), debes tener experiencia con Terraform. Para obtener más información sobre Terraform, consulta el artículo ¿Qué es Terraform?

Infra Manager implementa recursos y configuraciones de infraestructura definidos en una configuración de Terraform. Estas configuraciones pueden constar de varios archivos y directorios, pero su punto de entrada debe ser un módulo raíz de Terraform.

Infra Manager usa el término blueprint para referirse a una configuración de Terraform.

Para obtener más información sobre Terraform con Google Cloud, consulta Terraform en Google Cloud.

Módulos de Terraform para Google Cloud

Para ver un conjunto de módulos para aprovisionar recursos, consulta Planos y módulos de Terraform para Google Cloud. Google Cloud

También puedes crear tus propios módulos de Terraform para Google Cloud. Para obtener más información, consulta el artículo sobre cómo crear módulos.

Versiones de Terraform compatibles

Infra Manager admite las siguientes versiones de Terraform:

  • Versión 1.2.3 de Terraform
  • Versión 1.3.10 de Terraform
  • Versión 1.4.7 de Terraform
  • Versión 1.5.7 de Terraform

Puedes usar la marca --tf-version-constraint para especificar la versión de Terraform que usa Infra Manager para crear una implementación.

Si no especificas una versión de Terraform, se usará de forma predeterminada la versión compatible más reciente.

Al actualizar una implementación, puedes cambiar la versión de Terraform a una versión posterior. No puedes cambiar a una versión anterior compatible de Terraform.

Para ver la versión de Terraform que se usó para crear una implementación o una revisión específicas, consulta Ver los detalles de una implementación y Ver los detalles de una revisión.

Restricciones en las configuraciones de Terraform

Para usar Infrastructure Manager con el fin de desplegar una configuración de Terraform, esta debe cumplir las siguientes restricciones.

Valores de configuración de Terraform y datos sensibles

No incluyas información personal ni sensible en los valores de configuración de Terraform.

La documentación del Google Cloud proveedor indica los valores de configuración que pueden incluir información sensible.

Por ejemplo, el recurso google_storage_bucket_object permite crear un objeto de Cloud Storage con el argumento content. Este argumento se ha marcado como sensible en la página google_storage_bucket_object de la documentación de Google Cloud Provider.

Puedes usar estas etiquetas para guiarte al crear configuraciones de Terraform o al revisar una configuración de Terraform antes de usarla.

Consulta el Google Cloud Aviso de Privacidad para obtener información sobre cómo Google Cloud trata la información personal que recoge o genera durante el aprovisionamiento y la administración de los Servicios de Cloud.

Usar el proveedor de Terraform para Google Cloud

Puedes configurar los despliegues y las vistas previas para que usen proveedores de Terraform mantenidos por Infra Manager para Google Cloud.

Este campo opcional te permite especificar el uso de los proveedores de Terraform mantenidos por Infra Manager para crear o actualizar una implementación o una vista previa de una implementación. Puedes especificar un proveedor de Terraform con la CLI de gcloud.

Infra Manager admite proveedores de Terraform para Google Cloud:

  • google
  • google-beta

Omite este campo para usar el proveedor de Terraform mantenido por HashiCorp para Google Cloud.

Para saber cómo especificar el uso de un proveedor de Terraform mantenido por Infra Manager, consulta Desplegar infraestructura con Infrastructure Manager, Actualizar un despliegue o Previsualizar un despliegue.

Comprobar las versiones admitidas del proveedor

Para consultar las versiones de un proveedor de Terraform que admite Infra Manager, debes ver el manifest.jsondel bucket de Cloud Storage que mantiene Infra Manager y que está asociado a la región de tu implementación con el siguiente formato: Google Cloud

https://storage.googleapis.com/LOCATION-im-providers/hashicorp/PROVIDER_VERSION/manifest.json

Puedes consultar la lista completa de versiones admitidas en el campo versions del archivo manifest.json.

Por ejemplo, si tu implementación se encuentra en la región africa-south1 y usas el proveedor google-beta, ve a https://storage.googleapis.com/africa-south1-im-providers/hashicorp/google-beta/manifest.json para ver las regiones disponibles.

Siguientes pasos