Administre las canalizaciones de ELT como código con Terraform y Airbyte en Teradata Vantage
Información general
En este inicio rápido se explica cómo usar Terraform para administrar las canalizaciones de Airbyte como código. En lugar de realizar configuraciones manuales a través de la interfaz de usuario web, usaremos código para crear y administrar los recursos de Airbyte. El ejemplo proporcionado ilustra un flujo de datos de ELT básico desde Google Sheets a Teradata Vantage mediante el proveedor Terraform de Airbyte.
El proveedor Terraform de Airbyte está disponible para usuarios de Airbyte Cloud, OSS y Self-Managed Enterprise.
Vea esta explicación concisa sobre cómo funciona esta integración:
Introducción
Terraformar es una herramienta de código abierto líder en el espacio de la infraestructura como código (IaC). Permite el aprovisionamiento y la gestión automatizados de infraestructura, plataformas en la nube y servicios a través de archivos de configuración, en lugar de una configuración manual. Terraform utiliza complementos, conocidos como proveedores de Terraform, para comunicarse con hosts de infraestructura, proveedores de nube, API y plataformas SaaS.
Airbyte, la plataforma de integración de datos, tiene un proveedor de Terraform que se comunica directamente con API de Airbyte. Esto permite a los ingenieros de datos administrar las configuraciones de Airbyte y aplicar control de versiones y buenas prácticas de ingeniería de datos dentro de sus procesos de ELT.
Prerrequisitos
- Cuenta de Airbyte Cloud. Comience con una prueba gratuita de 14 días que se inicia después de la primera sincronización exitosa.
- Genere una clave de API de Airbyte iniciando sesión en el portal para desarrolladores.
- Instancia de Teradata Vantage. Necesitará una base de datos
Host
,Username
yPassword
para la configuración de Terraform de Airbyte.
-
Datos de origen. Para fines de demostración, utilizaremos una muestra de Google Sheets. Haga una copia de este en un espacio de trabajo personal de Google.
-
API de Google Cloud Platform habilitada para su cuenta personal o de organización. Deberá autenticar su cuenta de Google a través de OAuth o mediante el Autenticador de claves de cuenta de servicio. En este ejemplo, usamos Autenticador de claves de cuenta de servicio.
Instalar Terraform
- Aplique los comandos correspondientes para instalar Terraform en su sistema operativo. Encontrará opciones adicionales en el sitio de Terraform.
- MacOS
- Windows
- Linux
Primero, instale el "tap" de HashiCorp, un repositorio de todos los paquetes [Homebrew] (https://brew.sh).
A continuación, instale Terraform con hashicorp/tap/terraform.
Chocolatey es un sistema de gestión de paquetes gratuito y de código abierto para Windows. Instale el paquete Terraform desde la línea de comandos.
Preparación del entorno
Prepare el entorno creando un directorio para la configuración de Terraform e inicialice dos archivos: main.tf
y variables.tf
.
Definir una canalización de datos
Defina la fuente de datos, el destino y la conexión dentro del archivo main.tf
. Abra el archivo main.tf
recién creado en Visual Studio Code o en cualquier otro editor de código que elija.
- Si utiliza Visual Studio Code, instale Extensiones de Terraform de HashiCorp para agregar funciones de autocompletado y resaltado de sintaxis. También puede agregar Terraform de Anton Kuliko para obtener compatibilidad con el lenguaje de configuración.
Complete el archivo main.tf con la plantilla proporcionada.
Tenga en cuenta que este ejemplo utiliza una expresión cron para programar la transferencia de datos para que se ejecute cada 15 minutos después de la hora.
En nuestro archivo main.tf
hacemos referencia a las variables que se encuentran en el archivo variables.tf
, incluidas la clave API, el ID del espacio de trabajo, el ID de Google Sheets, la clave privada de Google y las credenciales de Teradata Vantage. Copie la siguiente plantilla en el archivo variables.tf
y complétela con los valores de configuración adecuados en el atributo default
.
Configuración del archivo variables.tf
Comandos de ejecución
Ejecute el complemento del proveedor desplegable terraform init
desde la página del proveedor de Terraform e inicialice un directorio de Terraform que funcione.
Este comando solo debe ejecutarse después de escribir una nueva configuración de Terraform o clonar una existente desde el control de versiones.
Ejecute terraform plan
para mostrar el plan de ejecución que Terraform utilizará para crear recursos y realizar modificaciones en la infraestructura.
Para este ejemplo se crea un plan para 3 nuevos recursos:
Conexión: # Se creará airbyte_connection.googlesheets_teradata
Destino: # Se creará airbyte_connection.googlesheets_teradata
Fuente: # Se creará airbyte_source_google_sheets.my_source_gsheets
Ejecute terraform apply
y yes
para generar un plan y llevarlo a cabo.
El archivo terraform.tfstate
se crea después de ejecutar terraform apply
por primera vez. Este archivo rastrea el estado de todas las fuentes, destinos y conexiones administradas por Terraform. Para ejecuciones posteriores de Terraform apply
, Terraform compara el código del archivo main.tf
con el código almacenado en el archivo tfstate
. Si se agregan o eliminan recursos en main.tf
, Terraform actualiza automáticamente tanto la implementación como el archivo .tfstate
según el momento específico de la implementación. No modifique este archivo manualmente.
Ahora dispone de una fuente, un destino y una conexión en Airbyte Cloud creados y administrados a través de Terraform.