Terraform 1.0 acerca DevOps a Multicloud

La introducción a DevOps revolucionó la forma en que se administran los servidores y Terraform de HashiCorp, promete hacer lo mismo para las instalaciones multinube.

¿Recuerdas cómo se solían ejecutar los servidores? ¿Ajustabas la configuración a mano, escribias scripts de shell?

Luego llegaron los programas para DevOps como Ansible, Chef o Puppet, y la vida del administrador de sistemas se volvió mucho más sencilla.

Más recientemente, se comenzó a utilizar no solamente una única nube pública, sino varias nubes (lo que se denomina multicloud).

Aunque administrar una sola nube es un gran trabajo, no es un gran problema, pero administrar un sistema basado en la multinube.. Eso es otra historia.

Ahora llega Terraform 1.0 de código abierto y que acerca el enfoque de las infraestructuras de DevOps a los sistemas multicloud.

Terraform se ha descargado decenas de millones de veces al año desde su creación. Detrás de Terraform, no solo se encuentra HashiCorp, sino un ecosistema en crecimiento de más de 100 socios tecnológicos.

Más de 1.000 proveedores han creado ya, 5.000 módulos en Terraform Registry. Estos módulos se pueden utilizar para administrar más fácilmente diversas piezas de infraestructura local y en la nube.

¿Qué es Terraform?

Terraform no es una herramienta de gestión de configuración de un servidor, si no que se centra en el control de los datos, la nube y sus servicios asociados.

Para hacer esto, Terraform utiliza el lenguaje de configuración HashiCorp: Un lenguaje declarativo que describe un objetivo previsto en lugar de los pasos para alcanzar ese objetivo.

¿Qué significa esto en la práctica?

Supongamos que estás creando una aplicación de arquitectura de dos niveles, que utiliza un grupo de servidores web como su interfaz con un nivel de base de datos.

Para hacer esto, agregarás niveles para servidores API, servidores de almacenamiento en caché, mallas de enrutamiento, etc.

Con Terraform, puedes describir cada uno de estos niveles como una colección de recursos y Terraform, se asegura de que las dependencias entre cada nivel se manejen automáticamente.

Por ejemplo, Terraform garantiza que el nivel de la base de datos esté disponible antes de que se inicien los servidores web y que los equilibradores de carga conozcan a los nodos web.

Luego, cada nivel, se puede escalar fácilmente usando Terraform y modificando un único valor de configuración.

Con la configuración de recursos codificada y automatizada, escalar la carga se convierte literalmente en una obviedad. Terraform lo ejecuta, sin la necesidad de supervisión constante.

A medida que se cambia la configuración, Terraform puede determinar qué cambió y crear planes de ejecución incrementales.

¿Qué trae de nuevo Terraform 1.0?

Aunque se trata de una versión 1.0, Terraform se ha utilizado en producción durante cinco años; y por tanto se puede utilizar con total confianza.

En esta nueva versión, HashiCorp ha mejorado la escalabilidad, la interoperabilidad y la estabilidad del ecosistema de Terraform. Además, Terraform Cloud agrega mejoras al flujo de trabajo.

Estos incluyen la capacidad de publicar módulos seleccionados en un registro privado, mejoras en la administración del espacio de trabajo y una la capacidad de verificar con herramientas de terceros.

Las nuevas características de Terraform 1.0

Entre sus nuevas funciones se incluyen.

Flujo de trabajo de registro público a editor de registro privado

Terraform Cloud y Enterprise ofrecen capacidades para componer, colaborar y reutilizar la infraestructura como código utilizando módulos y las opciones de registro público y privado.

El registro público tiene más de 5.000 módulos comunitarios y Terraform Cloud ahora ofrece un flujo de trabajo nativo para publicar módulos directamente en el registro privado de una organización.

Gestión del espacio de trabajo, descripción general e información

La estandarización y la inspección es un objetivo principal para los equipos de operaciones de TI mientras supervisan un modelo de aprovisionamiento de autoservicio en sus organizaciones.

Con Terraform Cloud, los usuarios pueden visualizar más fácilmente los espacios de trabajo, los recursos administrados, las salidas y los detalles de las ejecuciones con la nueva descripción general del espacio de trabajo y los detalles mejorados de las ejecuciones.

Comprobaciones de ejecución de Terraform para integraciones de terceros

Terraform Cloud ahora tiene la capacidad para que los socios se integren en el flujo de trabajo de Terraform durante una ejecución y brinden un contexto adicional para comparar con el plan de Terraform.

Hoy, Terraform Cloud ha ejecutado 1.6 millones de controles de políticas Sentinel, el marco de políticas como código de HashiCorp.

Esta capacidad ofrecerá muchas más opciones para Terraform Cloud Orgs para hacer cumplir las mejores prácticas de seguridad, cumplimiento y administración de costos.

Estará disponible en versión beta pública durante el verano de 2021.

¿Compatibilidad de Terraform?

Puedes utilizar Terraform para más de 125 integraciones de más de 100 socios tecnológicos.

entre los que se incluyen Cisco, Splunk, Datadog, PagerDuty, ServiceNow, CircleCI, GitHub, Cloudflare, NewRelic, Grafana Labs, GitLab, Okta, Racher y MongoDB.

Terraform también está disponible en la mayoría de las principales nubes públicas: AWS, Azure, GCP, Oracle, Alibaba Cloud y VMware.

En otras palabras, Terraform funcionará mano a mano con muchos de los programas que ya usa y en los servicios de nube, más importantes.

Resumen final

Esta versión histórica de Terraform incluye importantes mejoras centradas en muchos frentes, que ofrecerán estabilidad, garantías de escalabilidad e interoperabilidad para los usuarios de Terraform.

La versión comercial de Terraform Enterprise por más de 1.200 empresas y más de 120.000 personas que utilizan Terraform Cloud cada día, muestra todo el gran potencial y utilidad real del proyecto.

Entre los usuarios de Terraform, se incluyen a las principales empresas del mundo empresarial, como: Comcast, GitHub, H&R Block, KPMG, PayPal, Pinterest o Samsung.

En resumen, Terraform ha demostrado ser capaz y estar preparado para la empresa y también parece ser justamente lo que una empresa necesita.

Relacionados