Skip to content

terraform

Linux8a edited this page Nov 10, 2022 · 2 revisions

Terraform

¿Qué es Terraform?

Terraform es un software de infraestructura como código (infrastructure as code) desarrollado por HashiCorp. Permite a los usuarios definir y configurar la infraestructura de un centro de datos en un lenguaje de alto nivel, generando un plan de ejecución para desplegar la infraestructura en OpenStack,3 por ejemplo, u otros proveedores de servicio tales como AWS, IBM Cloud (antiguamente Bluemix), Google Cloud Platform, Linode,4 5 Microsoft Azure, Oracle Cloud Infrastructure o VMware vSphere.6 7 8 9 10 La infraestructura se define utilizando la sintaxis de configuración de HashiCorp denominada HashiCorp Configuration Language (HCL) o, en su defecto, el formato JSON.11

HashiCorp también mantiene el repositorio de configuraciones Terraform Module Registry, lanzado en 2017 durante la conferencia HashiConf.

Instalación manual

Para instalar Terraform desde el binario precompilado. Baje el el archivo zip segun su SO desde el Sitio Oficial . Descompima el zip y pongalo en su path.

Ej:

mv ~/Downloads/terraform /usr/local/bin/

Verificar la instalacion terraform -help

Instalación desde paquetes de su distro Gnu\Linux

sudo apt-get update && sudo apt-get install -y gnupg software-properties-common curl
curl -fsSL https://apt.releases.hashicorp.com/gpg | sudo apt-key add -
sudo apt-add-repository "deb [arch=amd64] https://apt.releases.hashicorp.com $(lsb_release -cs) main"
sudo apt-get update && sudo apt-get install terraform

Verificar la instalación terraform -help

Estructura

Providers: Definen los elementos data y resources para plataformas y herramientas específicas.

Resources: Definen elementos de la infraestructura que pueden ser aprovisionados, junto con sus propiedades. Una vez desplegados, proporcionan salidas que pueden utilizarse como entrada de otros elementos o como salida final de la ejecución, para mostrar al usuario.

Data: Recuperan información acerca del estado actual de un recurso u otro elemento y proporcionan salidas.

Módulos: Son abstracciones para agrupar conjuntos de data y resources. Se pueden configurar entradas y salidas.

Referencia: https://learn.hashicorp.com/tutorials/terraform/install-cli

Clone this wiki locally