Infrastructure Manager (Infra Manager) automatiza el despliegue y la gestión de Google Cloud recursos de infraestructura con Terraform.
Infra Manager te permite implementar de forma programática en Google Cloud, lo que te permite usar este servicio en lugar de mantener otra cadena de herramientas para trabajar con Terraform en Google Cloud.
Una configuración de Terraform define la infraestructura. Infra Manager despliega la configuración en Google Cloud , lo que te permite gestionar recursos mediante la infraestructura como código (IaC).
Infra Manager no gestiona el despliegue de aplicaciones en tus recursos. Para gestionar el despliegue de aplicaciones, puedes usar Google Cloud productos como Cloud Build y Cloud Deploy. También puedes usar herramientas de terceros o tu propia cadena de herramientas.
Para trabajar con Infra Manager, debes tener conocimientos de Terraform. Para obtener más información sobre Terraform, consulta el artículo ¿Qué es Terraform? de HashiCorp.
Para obtener más información sobre Terraform con Google Cloud, consulta Terraform en Google Cloud.
Infra Manager e infraestructura como código
Infra Manager te permite usar IaC para gestionar el ciclo de vida de los recursos deGoogle Cloud :
- Terraform se define de forma declarativa en una configuración de Terraform. Esto significa que la configuración describe el estado final de tu infraestructura.
- Puedes controlar las versiones de la configuración de Terraform en un repositorio de Git o en un segmento de Cloud Storage. Usa la gestión de versiones de objetos para crear versiones de las configuraciones de un segmento de almacenamiento.
- Usa Infra Manager para actualizar la implementación de tu infraestructura con revisiones. En cada revisión, Infra Manager almacena lo siguiente:
- Registros
- La configuración utilizada para hacer la revisión
- Lista de Google Cloud recursos creados por la revisión
- El archivo de estado creado como parte de cada despliegue y revisión
Para obtener más información sobre IaC, consulta el artículo Infraestructura como código en Google Cloud.
Cómo funciona Infra Manager
A continuación, se describe lo que ocurre en un escenario sencillo cuando usas Infra Manager para implementar infraestructura.
- Los recursos de infraestructura que se van a implementar Google Cloud se definen en una configuración de Terraform.
- Puedes crear este archivo tú mismo o usar una configuración que ya esté escrita para Google Cloud. Consulta más información sobre Terraform e Infrastructure Manager.
- Puedes almacenar la configuración de Terraform en un segmento de Cloud Storage, en un repositorio de Git o en tu máquina local.
- Cuando usas Infra Manager para desplegar recursos a partir de una configuración de Terraform, creas un despliegue. Para crear un despliegue, sigue estos pasos en Infra Manager:
- Valida la solicitud. Por ejemplo, se asegura de que en el comando se haya especificado la ubicación de la configuración de Terraform.
- Crea un trabajo de Cloud Build mediante una imagen de contenedor. Esta imagen es propiedad de Google Cloudy la mantiene. Consulta Entorno de ejecución para obtener información sobre el entorno de Cloud Build. El trabajo de Cloud Build automatiza las siguientes tareas:
- Descarga el módulo de Terraform del segmento de almacenamiento o del repositorio de Git.
- Inicializa Terraform (
terraform init
). - Valida la configuración de Terraform (
terraform validate
). - Activa la configuración (
terraform apply
oterraform destroy
si vas a eliminar una implementación). - Transmite los registros de Cloud Build a un segmento de almacenamiento creado por Infra Manager.
- Si la implementación falla, Infra Manager vuelve a intentar automáticamente las operaciones
terraform init
oterraform apply
en determinados casos, como si se produce un fallo debido a interrupciones intermitentes de la red. Estos reintentos se realizan un número limitado de veces.
- Crea un segmento de Cloud Storage y almacena metadatos sobre la implementación. Para obtener más información sobre la implementación y los metadatos, consulta el resumen de la implementación y la revisión.
Cuando se complete la implementación, los recursos de Google Cloud se aprovisionarán según la configuración descrita.
Puedes consultar la implementación de Infra Manager para lo siguiente:
- El estado del despliegue.
- Lista de los recursos que se implementan como parte de la implementación.
- Detalles sobre los recursos individuales que forman parte de una implementación.
Entorno de ejecución
El entorno de ejecución de Infra Manager es un entorno efímero de Cloud Build. Infra Manager ejecuta comandos de Terraform en este entorno de Cloud Build y, a continuación, se descarta el entorno.
El sistema operativo específico, el software disponible y otros detalles de configuración del entorno de Cloud Build son detalles de implementación internos de Infra Manager y pueden cambiar en cualquier momento.
Puedes especificar qué versión compatible de Terraform quieres usar en cada implementación.
No incluyas información personal ni sensible
No incluyas información personal ni sensible en los valores de configuración de Terraform.
Para obtener más información sobre las configuraciones de Terraform y los datos sensibles, consulta Valores de configuración de Terraform y datos sensibles.
Siguientes pasos
- Consulta más información sobre Terraform con Google Cloud.
- Crea una implementación.
- Actualiza un despliegue.
- Automatiza los despliegues.
- Eliminar un despliegue