Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Uso de Terraform como herramienta de IaC para Nube de AWS
HashiCorp Terraform
Los desarrolladores utilizan un lenguaje de configuración de alto nivel denominado lenguaje Terraform
Ventajas de usar Terraform:
-
Terraform es independiente de la plataforma. Puede usarlo con cualquier proveedor de servicios en la nube. Puede configurar, probar e implementar la infraestructura en AWS muchos otros proveedores de nube. Si su organización utiliza varios proveedores de nube, Terraform puede ser una solución única, unificada y coherente para administrar la infraestructura de la nube. Para obtener más información sobre la compatibilidad con múltiples nubes, consulte el aprovisionamiento de nubes múltiples
en el sitio web de Terraform. -
Terraform no tiene agentes. No requiere la instalación de ningún software en la infraestructura gestionada.
-
Los módulos Terraform son una forma eficaz de reutilizar el código y cumplir con el principio de no repetirlo (DRY). Por ejemplo, puede tener una configuración específica para una aplicación que contenga una instancia de Amazon Elastic Compute Cloud (Amazon EC2), volúmenes de Amazon Elastic Block Store (Amazon EBS) y otros recursos agrupados de forma lógica. Si necesita crear varias copias de esta configuración o aplicación, puede empaquetar los recursos en un módulo de Terraform y crear varias instancias del módulo en lugar de copiar todo el código varias veces. Estos módulos pueden ayudarlo a organizar, encapsular y reutilizar las configuraciones. También proporcionan coherencia y garantizan las mejores prácticas.
-
Terraform puede detectar y gestionar la desviación
(entrada del blog de Terraform) en su infraestructura. Por ejemplo, si los recursos gestionados por Terraform se modifican fuera de Terraform, puede detectar la desviación y restaurarlos al estado deseado mediante la CLI de Terraform.
Desventajas de usar Terraform:
-
Es posible que no esté disponible el soporte para nuevas funciones o nuevos recursos relacionados con cualquier proveedor de nube.
-
Terraform no administra automáticamente su estado de la misma manera AWS CloudFormation. Se almacena de forma predeterminada en un archivo local, pero también puede almacenarlo de forma remota en un bucket de Amazon S3
o a través de Terraform Enterprise . -
El estado de Terraform puede contener datos confidenciales, como contraseñas de bases de datos, lo que puede plantear problemas de seguridad. Se recomienda cifrar el archivo de estado, almacenarlo de forma remota, habilitar el control de versiones de los archivos y utilizar el mínimo de privilegios para las operaciones de lectura y escritura en él. Para obtener más información, consulte Proteger los datos confidenciales mediante Terraform AWS Secrets Manager. HashiCorp
-
En agosto de 2023, Hashicorp anunció que dejaría de tener una licencia de código abierto bajo la licencia pública de Mozilla
. En cambio, ahora está licenciado bajo la licencia Business Source .