CloudFormation o Terraform ¿Cual usar?

Vamos a señalaros algunas diferencias básicas entre CloudFormation y Terraform, y algunas ideas para que podais tomar una decisión a la hora de elegir la herramienta adecuada para tu proyecto.

Publicado el 23 de Agosto de 2018
Compartir

Vamos a señalaros algunas diferencias básicas entre CloudFormation y Terraform, y algunas ideas para que puedas tomar una decisión a la hora de elegir la herramienta adecuada para tu proyecto.

Cloudformation

  • CloudFormation es la solución oficial de Amazon Web Services (AWS) para manejar infraestructura como código.
  • Soporta casi todos los tipos de recursos que define Amazon.
  • Se escribe en JSON o YAML.
  • Además de funcionar en Amazon Web Services funciona también en OpenStack, a través del servicio Heat, aunque con algunas limitaciones.
  • Resulta muy sencillo de usar a la hora de romper infraestructuras monolíticas creando Substacks.

Terraform

  • Terraform es la solución de HashiCorp para la infraestructura como código.
  • Es una solución independiente del sistema de nube que queramos usar, se puede usar con AWS, con OpenStack y muchos otros proveedores.
  • Cada proveedor puede ofrecer mayor o menor soporte a la nube que va a usar por detrás.
  • Soporta el refresco de recursos desde la nube, es decir, si algún recurso se borra, podemos notificárselo a Terraform.
  • Usa un lenguaje propio: HCL (HashiCorp Configuration Language).

CloudFormation o Terraform ¿Qué usar?

Sí tenemos que decidir entre usar CloudFormation o Terraform, tenemos que tener en cuenta varios aspectos importantes.

CloudFormation nos puede interesar si...

  • No necesitamos soporte para otros proveedores de nube.
  • Solo estamos usando Amazon Web Services.
  • Si necesitamos acceso a casi todos los tipos de recurso de AWS que CloudFormation puede proveer.
  • Si queremos soporte oficial de AWS, ya que de lo contrario no nos lo podrán dar.

En el caso de Terraform puede ser interesante si...

  • Tenemos que soportar varios proveedores de nubes.
  • Siempre que todos los recursos que necesitemos estén soportados por nuestro proveedor de Terraform.
  • Si no estamos pagando soporte AWS, ya que podemos usar Terraform de forma gratuita o elegir tener soporte con HashiCorp.
  • Por otro lado, HCL se considera normalmente un lenguaje algo más asequible que JSON o YAML.

Compartir este post

También te puede interesar...

Tecnología

Datasets: Qué son y cómo acceder a ellos

01 Mayo 2023 Diego Caceres Solis
Tecnología

Comparativa Arduino vs Particle vs Raspberry Pi

11 Mayo 2023 Diego Caceres Solis

Las cookies nos permiten ofrecer nuestros servicios. Al utilizar nuestros servicios, aceptas el uso que hacemos de las cookies. Más Información.