Terraform como IAC en Google Cloud platform
Tags: iac, cloud, gcp, datapathformation
Published: 2023-10-23 16:35:38

Queremos acelerar el talento en data y analytics en LATAM. Si te gusta el artículo recuerda que todos los meses tenemos inicios de nuestros programas especializados de Data Engineering, Data Analyst, Cloud y Machine Learning Engineer. Puedes conocer más [aquí](https://wa.me/51946561058?text=Hola,%20vengo%20de%20la%20comunidad%20Dev.to,%20quiero%20conocer%20los%20pr%C3%B3ximos%20inicios).


Terraform es una herramienta de código abierto para la administración de infraestructura como código (IAC). Le
permite administrar recursos de infraestructura en la nube y en las instalaciones, como servidores, redes, almacenamiento y bases de datos. Terraform utiliza un lenguaje de configuración declarativo para describir su infraestructura deseada y luego aplica los cambios a la infraestructura real.

**Terraform: Infraestructura como Código**

“Terraform es una de las herramientas más populares para el aprovisionamiento de infraestructura” Usar Terraform para un proyecto de negocio en Google Cloud Platform (GCP) ofrece una
serie de ventajas que pueden mejorar significativamente la gestión de la infraestructura y el despliegue de recursos.
Algunas de las principales razones para utilizar Terraform son las siguientes:

**1. Infraestructura como código (IaC):**
Terraform permite describir la infraestructura de GCP como código en lugar de configurarla manualmente. Esto implica que toda la infraestructura se gestiona mediante archivos de código, lo que facilita el seguimiento de cambios, la colaboración entre equipos y la reproducción de la infraestructura en diferentes entornos.

**2. Automatización del aprovisionamiento:**
Terraform automatiza el proceso de creación y gestión de recursos en GCP. Esto permite que la infraestructura pueda ser creada, modificada y eliminada de manera programática, lo que ahorra tiempo y reduce la posibilidad de errores humanos.

**3. Control de versiones y despliegue seguro:**
Al utilizar Terraform como IaC, se puede aprovechar el control de versiones con herramientas como Git. Esto garantiza que los cambios en la infraestructura sean rastreables, reversibles y se puedan revisar antes de implementarlos en producción.

**4. Multiplataforma y multi-nube:**
Terraform es compatible con múltiples proveedores de nube, incluyendo GCP, AWS, Azure, entre otros. Esto facilita la adopción de un enfoque de infraestructura agnóstico y permite la portabilidad de la infraestructura en diferentes entornos en la nube.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3y5zk4surdq4qhw86f3s.png)Imagen 1: tomada del sitio web; https://www.google.com/url?sa=i&url=https%3A%2F%2Fdecidesoluciones.es%2Fterraform-automatizacion-de-infraestructuras%2F&psig=AOvVaw0bRlxc-aMwCdfeJkMKCBRS&ust=1696362373100000&source=images&cd=vfe&opi=89978449&ved=0CBEQjRxqFwoTCKD1jLmQ2IEDFQAAAAAdAAAAABAD

**5. Estado de la infraestructura:**
Terraform mantiene un archivo de estado que representa la infraestructura actual en GCP.   Este   archivo   permite   a   Terraform realizar cambios incrementales en la infraestructura para que solo se modifiquen los recursos necesarios, lo que reduce el riesgo de realizar cambios inadvertidos en la infraestructura existente.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/r37asdblss5wmouoapea.png)Imagen 2: Tomada del sitio web; https://www.google.com/url?sa=i&url=https%3A%2F%2Fdareplanet.tech%2Finsights%2Finfraestructura-como-codigo-con-terraform%2F&psig=AOvVaw3KV9N5n-Hhu6Ja1vMQG4sq&ust=1696362533944000&source=images&cd=vfe&opi=89978449&ved=0CBEQjRxqFwoTCMCUo4WR2IEDFQAAAAAdAAAAABAD

**6. Reutilización de código:**
Terraform permite definir módulos reutilizables, lo que facilita la estandarización y evita la duplicación de código. Esto es especialmente útil cuando se gestionan múltiples proyectos o ambientes.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ues6lw9twcajlwr4l34b.png)Imagen 3: Tomada del sitio web; https://www.google.com/url?sa=i&url=https%3A%2F%2Fifgeekthen.nttdata.com%2Fes%2Finfraestructura-como-codigo&psig=AOvVaw1v5g5a6kOETuSd2mZU8O3Z&ust=1696362657063000&source=images&cd=vfe&opi=89978449&ved=0CBEQjRxqFwoTCPCW18WR2IEDFQAAAAAdAAAAABAD

**7. Auditoría y cumplimiento:**
La capacidad de describir la infraestructura como código proporciona una forma clara y transparente de documentar la configuración de la infraestructura y los cambios realizados en ella. Esto es valioso para fines de auditoría y cumplimiento de normativas.

**8.	Ecosistema y comunidad activa:**
Terraform cuenta con una comunidad activa que desarrolla y comparte módulos y plugins para facilitar la gestión de diferentes recursos y servicios en la nube.

Coordinador Académico Datapath
Giomar Antaurco, 2023

**Conoce nuestros programas**

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vooftutqk79kjilj6bq4.png)

✔Descubre cómo acelerar tu talento en Data, Analytics y Cloud: 
 - Tenemos inicios todo los meses, conoce más [aquí](https://datapath.ai).