- Ahora es una época en la que puedes desplegar servidores con unos cuantos clics en la consola de AWS y construir distintas infraestructuras con una sola línea de comando
- IaC
- Gestionar y aprovisionar infraestructura mediante código
- Guardar y administrar como código todo lo que queremos: redes, servidores, almacenamiento, etc.
- Así se puede compartir, probar y reutilizar el código para administrar la infraestructura con mayor productividad
- Terraform
- Terraform es la herramienta más conocida dentro de IaC
- Administra no solo nubes como AWS, GCP y Azure, sino también soluciones internas de la empresa
- Usa un enfoque declarativo en el que se define el resultado final deseado, por lo que es fácil predecir el resultado
- Incluso al reutilizar código, garantiza el mismo resultado
- Con
terraform plan se elabora un plan detallado de cómo se creará en AWS
- Con
terraform apply se aplica de verdad
- La información de los recursos creados con Terraform se administra en un archivo JSON llamado
tfstate
- Forma de uso de Terraform
- Ofrece funciones para recibir entradas del usuario mediante varias palabras clave, crear recursos y mostrar el resultado de la ejecución en la CLI
- Provider
- Plugin que implementa tipos de recursos
- Se busca el provider del servicio o plataforma en la nube que se use, como AWS o GCP, se agrega a la configuración y con esos recursos se aprovisiona la infraestructura
- Module
- Configuración pequeña y reutilizable de Terraform que administra un grupo de recursos relacionados como si fuera un solo recurso
- También se pueden aprovechar libremente módulos creados por otras personas para gestionar muchos recursos de forma eficiente con poco código
- Se puede invocar el mismo módulo varias veces con configuraciones diferentes
- Resource
- Palabra clave que describe uno o más objetos de infraestructura, como componentes de alto nivel tales como redes virtuales, instancias de cómputo o registros DNS
- Variable
- Las variables de entrada permiten especificar atributos de los recursos sin modificar el código fuente del módulo
- Son parecidas a los parámetros de función en los lenguajes de programación
- A través de las variables de entrada, los módulos se pueden compartir y reutilizar con mayor flexibilidad
- Output
- Los valores de salida pueden generar información de infraestructura para usar en la línea de comandos y exponer información a otras configuraciones de Terraform
- Son parecidos a los valores de retorno en los lenguajes de programación
Aún no hay comentarios.