En tiempos anteriores, el proceso de aprovisionar la infraestructura de TI fue un manual y muy agotador. Los administradores/gerentes del servidor deben configurar los servidores físicamente. Además, este enfoque fue costoso y propenso a numerosos errores, especialmente errores de fabricación humana. Además, había una falta de agilidad. Con el tamaño en evolución de la infraestructura de TI, se consideró desarrollar un nuevo enfoque para administrar esta condición. Esto dio a luz a la llamada Infraestructura como técnica de código (IAC).
La infraestructura como código (IAC) es una técnica en la que los componentes de una red, como las instancias de cómputo, las redes, las máquinas virtuales, etc., se administran automáticamente en lugar de hacer el mismo proceso manualmente. Terraform es un producto de técnicas basadas en IAC. El objetivo principal de Terraform es orquestar la implementación de recursos o servicios en varias plataformas de infraestructura. Estas plataformas pueden ser proveedores de servicios basados en la nube, máquinas virtuales, etc.
Lo que exploraremos aquí
Después de una pequeña introducción a IAC y Terraform, continuaremos con la instalación de Terraform y cómo funciona. Proceda con la instalación de Terraform en Ubuntu 20.04.
Cómo instalar Terraform
Un paquete oficial de Terraform para Ubuntu/Debian, Centos/Rhel, Fedora y Amazon Linux es distribuido por los administradores de paquetes de estas distribuciones. Los binarios precompilados también están disponibles para descargar desde el sitio web de Terraform. Guarde este archivo binario en su sistema, extravelo y ejecutarlo. Asegúrese de que la ruta esté configurada correctamente. Alternativamente, podemos compilarlo utilizando el código fuente.
Paso 1. Comience por instalar los paquetes Gnupg, Software-Properties-Common y Curl. Este paso es para validar la firma GPG proporcionada por Hashicorp. Para lograr esta tarea, abra un terminal (haga clic simultáneamente en las teclas Ctrl+Alt+T) y ejecute el siguiente comando:
$ sudo apt-get actualización && sudo apt-get install -y gnupg software-properties-common curl
Paso 2. Para agregar la tecla Hashicorp GPG, ejecute el siguiente comando:
$ curl -fssl https: // apt.lanzamientos.Hashicorp.com/gpg | sudo apt-key agregar -
Paso 3. Ahora, proceda a agregar repositorio ejecutando el siguiente comando:
$ sudo apt-add-repository "Deb [arch = amd64] https: // apt.lanzamientos.Hashicorp.com $ (lsb_release -cs) principal "
Etapa 4. Después de agregar el repositorio, estamos configurados para agregar el repositorio para instalar Terraform. Use el siguiente comando:
$ sudo apt-get actualización && sudo apt-get install terraform
Paso 5. Finalmente, verifique si Terraform se instala en su sistema utilizando el siguiente comando:
$ Terraform -version
Funcionamiento de Terraform
Terraform utiliza sus API para proporcionar y administrar recursos en diferentes plataformas y servicios basados en la nube. Terraform ha desarrollado proveedores para trabajar con cualquier plataforma o servicio utilizando una API. Hay más de 1700 proveedores para administrar muchos recursos y servicios. El registro de Terraform contiene proveedores que están disponibles públicamente. Por ejemplo, tiene Amazon AWS, Microsoft Azure, Google, GCP, etc.
Hay principalmente tres etapas en un flujo de trabajo de Terraform:
Terraform usa archivos de configuración para definir cómo debería ser una infraestructura. Es más importante para aprovisionar una infraestructura que crece con el tiempo. Por ejemplo, agregamos una VM dentro de un VPC a una infraestructura. Luego, otro día, agregamos más máquinas virtuales, un equilibrador de carga, etc. Esto aumenta la complejidad general de la infraestructura.
Veamos cómo Terraform Workflow maneja esta complejidad:
De esta manera, Terraform funciona para el despliegue del primer día, generando algo de la nada. Si queremos agregar nuevos recursos a la configuración, debemos declararlos en el archivo de configuración. El Terraform verificará el estado inicial con el estado deseado y creará el estado deseado. Terraform solo realiza esos cambios que son necesarios para llegar al estado deseado.
Obteniendo ayuda
Para enumerar todos los comandos disponibles con Terraform, use el siguiente comando "Ayuda":
$ Terraform -Help
Para explorar un comando en particular, por ejemplo, "plan", use el siguiente comando:
$ Terraform -Help Plan
Conclusión
En esta publicación, hemos visto una vista de alto nivel de Terraform. Terraform es un tema muy interesante para aprender y simplificar la complejidad de la infraestructura. Revise los artículos de Linuxhint para obtener tutoriales más interesantes.