HashiCorp Terraform es una herramienta de infraestructura como código (IaC) que te permite aprovisionar y administrar la infraestructura de nube. Terraform proporciona complementos llamados proveedores que te permiten interactuar con proveedores de servicios en la nube y otras APIs. Puedes usa el proveedor de Terraform para Google Cloud para aprovisionar y administrar Recursos de Google Cloud, incluido Artifact Registry.
Cómo funciona Terraform
Terraform tiene una sintaxis declarativa y orientada a la configuración que puedes usar para describir la infraestructura que deseas aprovisionar en tu proyecto de Google Cloud. Después de crear esta configuración en uno o más archivos de configuración de Terraform, puedes usar la CLI de Terraform para aplicar esto configuración a tus recursos de Artifact Registry.
En los siguientes pasos, se explica cómo funciona Terraform:
- Describes la infraestructura que deseas aprovisionar en un archivo de configuración de Terraform. No es necesario que escribas código que describa cómo aprovisionar la infraestructura. Terraform aprovisiona la infraestructura por ti.
- Ejecuta el comando
terraform plan
, que evalúa tu configuración y genera un plan de ejecución. Puedes revisar el plan y realizar cambios según sea necesario. -
Luego, ejecuta el comando
terraform apply
, que realiza las siguientes acciones:- Aprovisiona tu infraestructura según tu plan de ejecución mediante la invocación de las APIs de Artifact Registry correspondientes en segundo plano.
- Crea un archivo de estado de Terraform, que es un archivo JSON que asigna los recursos del archivo de configuración a los recursos de la infraestructura del mundo real. Terraform usa este archivo para mantener un registro del estado más reciente de tu infraestructura y determinar cuándo crear, actualizar y destruir recursos.
-
Luego, cuando ejecutes
terraform apply
, Terraform usa la asignación en el archivo de estado para comparar la infraestructura existente con el código y realizar actualizaciones según sea necesario:- Si un objeto de recurso se define en el archivo de configuración, pero no existe en el archivo de estado, Terraform lo crea.
- Si existe un objeto de recurso en el archivo de estado, pero tiene una configuración diferente de tu archivo de configuración, Terraform actualiza el recurso para que coincida con tu archivo de configuración.
- Si un objeto de recurso en el archivo de estado coincide con tu archivo de configuración, Terraform deja el recurso sin cambios.
Guías basadas en Terraform para Artifact Registry
En la siguiente tabla, se enumeran todas las guías prácticas y los instructivos basados en Terraform para Artifact Registry:
Guía | Detalles |
---|---|
Crea un repositorio estándar con Terraform | En esta guía, se describe cómo crear un repositorio de modo estándar con Terraform. |
Crea un repositorio remoto con Terraform | En esta guía, se describe cómo crear un repositorio de modo remoto con Terraform. |
Crea un repositorio de modo virtual con Terraform | En esta guía, se describe cómo crear un repositorio de modo virtual con Terraform. |
Módulos y planos de Terraform para Artifact Registry
Los módulos y planos ayudan a automatizar el aprovisionamiento y la administración de recursos de Google Cloud a gran escala. Un módulo es un conjunto reutilizable de archivos de configuración de Terraform que crea una abstracción lógica de los recursos de Terraform. Un plano es un paquete de elementos implementables y reutilizables módulos y una política que implementa y documenta una solución específica.
En la siguiente tabla, se enumeran todos los módulos y planos relacionados con Artifact Registry:
Módulo o plano | Detalles |
---|---|
artifact-registry | Crea y administra repositorios de Artifact Registry |
secure-cicd | Compila una canalización de CI/CD segura en Google Cloud |
gcloud | Ejecuta los comandos de Google Cloud CLI en Terraform |
Recursos de Terraform para Artifact Registry
Los recursos son los elementos fundamentales del lenguaje de Terraform. Cada el bloque de recursos describe uno o más objetos de infraestructura, como redes o instancias de procesamiento.
En la siguiente tabla, se enumeran los recursos de Terraform disponibles para Artifact Registry:
Servicio | Recursos de Terraform | Fuentes de datos |
---|---|---|
Artifact Registry |
|
¿Qué sigue?
- Muestras de código de Terraform para Artifact Registry
- Documentación de Terraform en Google Cloud
- Documentación del proveedor de Google Cloud en HashiCorp
- Infraestructura como código para Google Cloud