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 usar el proveedor de Terraform para Google Cloud para aprovisionar y administrar recursos de Google Cloud , incluido el Servicio administrado para Apache Kafka.
En esta página, se presenta el uso de Terraform con Managed Service para Apache Kafka, incluida una introducción a cómo funciona Terraform y algunos recursos para ayudarte a comenzar a usar Terraform con Google Cloud. También encontrarás vínculos a la documentación de referencia de Terraform para Managed Service for Apache Kafka, ejemplos de código y guías para usar Terraform para aprovisionar recursos de Managed Service for Apache Kafka.
Para obtener instrucciones sobre cómo comenzar a usar Terraform para Google Cloud, consulta Instala y configura 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 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 aplicarla a tus recursos de Managed Service for Apache Kafka.
En los siguientes pasos, se explica cómo funciona Terraform:
- Describe 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 invocando las APIs de Managed Service para Apache Kafka correspondientes en segundo plano.
- Crea un archivo de estado de Terraform, que es un archivo JSON que asigna los recursos de tu 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 se define un objeto de recurso 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.
Recursos de Terraform para Managed Service para Apache Kafka
Los recursos son los elementos fundamentales del lenguaje de Terraform. Cada bloque de recursos describe uno o más objetos de infraestructura, como redes virtuales o instancias de procesamiento.
En la siguiente tabla, se enumeran los recursos de Terraform disponibles para Managed Service para Apache Kafka:
| Servicio | Recursos de Terraform |
|---|---|
| Kafka administrado |
Guías basadas en Terraform para Managed Service para Apache Kafka
En la siguiente tabla, se enumeran todas las guías prácticas y los instructivos basados en Terraform para Managed Service para Apache Kafka:
| Guía | Detalles |
|---|---|
| Crea un clúster de Google Cloud Managed Service para Apache Kafka | Muestra cómo crear un clúster de Managed Service para Apache Kafka con Terraform. |
| Crea un tema de Managed Service para Apache Kafka | Muestra cómo crear un tema con Terraform. |
| Crea un clúster de Connect | Muestra cómo crear un clúster de Connect con Terraform. (Vista previa) |
| Crea un conector de receptor de BigQuery | Muestra cómo crear un conector de receptor de BigQuery con Terraform. (Vista previa) |
| Crea un conector de receptor de Cloud Storage | Muestra cómo crear un conector de receptor de Cloud Storage con Terraform. (Vista previa) |
| Crea un conector de fuente de MirrorMaker 2.0 | Muestra cómo crear un conector de origen de MirrorMaker 2.0 con Terraform. (Vista previa) |
| Crea un conector de receptor de Pub/Sub | Muestra cómo crear un conector de receptor de Pub/Sub con Terraform. (Vista previa) |
| Crea un conector de fuente de Pub/Sub | Muestra cómo crear un conector de fuente de Pub/Sub con Terraform. (Vista previa) |
¿Qué sigue?
- Ejemplos de código de Terraform para Managed Service for Apache Kafka
- Documentación de Google Cloud Terraform
- Documentación del proveedor deGoogle Cloud en HashiCorp
- Infraestructura como código para Google Cloud