HashiCorp Terraform es una herramienta de infraestructura como código (IaC) que te permite aprovisionar y gestionar la infraestructura en la nube. Terraform proporciona complementos llamados proveedores que te permiten interactuar con proveedores de servicios en la nube y otras APIs. Puedes usar el proveedor de Terraform para Google Cloud aprovisionar y gestionar Google Cloud recursos, incluido Artifact Registry.
En esta página se explica cómo usar Terraform con Artifact Registry, se incluye una introducción al funcionamiento de Terraform y se ofrecen algunos recursos para ayudarte a empezar a usar Terraform con Google Cloud. También encontrarás enlaces a la documentación de referencia de Terraform para Artifact Registry, ejemplos de código y guías para usar Terraform con el fin de aprovisionar recursos de Artifact Registry.
Para obtener instrucciones sobre cómo empezar a usar Terraform para Google Cloud, consulta Instalar y configurar Terraform o la guía de inicio rápido de Terraform para Google Cloud .
Cómo funciona Terraform
Terraform tiene una sintaxis declarativa y orientada a la configuración que puedes usar para describir la infraestructura que quieres aprovisionar en tu Google Cloud proyecto. Después de crear esta configuración en uno o varios archivos de configuración de Terraform, puedes usar la CLI de Terraform para aplicar esta configuración a tus recursos de Artifact Registry.
En los siguientes pasos se explica cómo funciona Terraform:
- Describe la infraestructura que quieres aprovisionar en un archivo de configuración de Terraform. No es necesario que escribas código para describir 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 hacer los cambios que necesites. -
Ejecutas el comando
terraform apply, que realiza las siguientes acciones:- Aprovisiona tu infraestructura en función de tu plan de ejecución invocando 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 real. Terraform usa este archivo para mantener un registro del estado más reciente de tu infraestructura y para determinar cuándo crear, actualizar y eliminar recursos.
-
Cuando ejecutas
terraform apply, Terraform usa la asignación del archivo de estado para comparar la infraestructura actual con el código y hacer las actualizaciones necesarias:- Si se define un objeto de recurso en el archivo de configuración, pero no existe en el archivo de estado, Terraform lo crea.
- Si un objeto de recurso existe en el archivo de estado, pero tiene una configuración diferente a la de tu archivo de configuración, Terraform actualiza el recurso para que coincida con tu archivo de configuración.
- Si un objeto de recurso del archivo de estado coincide con el archivo de configuración, Terraform no lo modifica.
Recursos de Terraform para Artifact Registry
Los recursos son los elementos fundamentales del lenguaje de Terraform. Cada bloque de recursos describe uno o varios objetos de infraestructura, como redes virtuales o instancias de computación.
En la siguiente tabla se indican los recursos de Terraform disponibles para Artifact Registry:
| Servicio | Recursos de Terraform | Fuentes de datos |
|---|---|---|
| Artifact Registry |
|
Guías basadas en Terraform para Artifact Registry
En la siguiente tabla se enumeran las guías y los tutoriales de Artifact Registry basados en Terraform:
| Guía | Detalles |
|---|---|
| Crear un repositorio estándar con Terraform | En esta guía se describe cómo crear un repositorio en modo estándar con Terraform. |
| Crear un repositorio remoto con Terraform | En esta guía se describe cómo crear un repositorio en modo remoto con Terraform. |
| Crear un repositorio en modo virtual con Terraform | En esta guía se describe cómo crear un repositorio en modo virtual con Terraform. |
Módulos y planos de Terraform para Artifact Registry
Los módulos y los planos te ayudan a automatizar el aprovisionamiento y la gestión de Google Cloud recursos 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 blueprint es un paquete de módulos desplegables y reutilizables, así como una política que implementa y documenta una solución específica.
En la siguiente tabla se enumeran los módulos y los planos técnicos relacionados con Artifact Registry:
| Módulo o plano | Detalles |
|---|---|
| artifact-registry | Crear y gestionar repositorios de Artifact Registry |
| secure-cicd | Crea un flujo de procesamiento de CI/CD seguro en Google Cloud |
| gcloud | Ejecuta comandos de la CLI Google Cloud en Terraform |
Siguientes pasos
- Ejemplos de código de Terraform para Artifact Registry
- Documentación de Terraform on Google Cloud
- Google Cloud Documentación del proveedor en HashiCorp
- Infraestructura como código para Google Cloud