Instalación de Terraform

LinuxBeginner
Practicar Ahora

Introducción

Terraform es una herramienta de Infraestructura como Código (IaC) de código abierto creada por HashiCorp. Permite definir y aprovisionar infraestructura de centro de datos utilizando un lenguaje de configuración de alto nivel.

En este laboratorio, aprenderá a instalar Terraform en un sistema Ubuntu 22.04. Seguiremos la guía oficial de HashiCorp, que implica añadir la clave GPG de HashiCorp y el repositorio de paquetes oficial. Este método asegura que pueda instalar y actualizar Terraform fácilmente utilizando el gestor de paquetes estándar apt.

Este es un Guided Lab, que proporciona instrucciones paso a paso para ayudarte a aprender y practicar. Sigue las instrucciones cuidadosamente para completar cada paso y obtener experiencia práctica. Los datos históricos muestran que este es un laboratorio de nivel intermedio con una tasa de finalización del 60%. Ha recibido una tasa de reseñas positivas del 89% por parte de los estudiantes.

Actualizar el sistema e instalar los paquetes gnupg y software-properties-common

En este paso, actualizará la lista de paquetes de su sistema e instalará los paquetes prerrequisito necesarios. Este es un primer paso crucial para asegurar que su sistema esté actualizado y tenga las herramientas requeridas para añadir y gestionar nuevos repositorios de software.

Primero, actualice el índice de paquetes de apt. Este comando descarga la información de paquetes de todas las fuentes configuradas.

sudo apt-get update

A continuación, instale gnupg, software-properties-common y wget.

  • gnupg es necesario para verificar la firma GPG del repositorio de HashiCorp.
  • software-properties-common proporciona scripts útiles para gestionar las fuentes de software.
  • wget es una utilidad para descargar archivos de internet, que utilizaremos para obtener la clave GPG.

Ejecute el siguiente comando para instalar estos paquetes:

sudo apt-get install -y gnupg software-properties-common wget

Verá una salida mientras apt descarga e instala los paquetes y sus dependencias. Una instalación exitosa finalizará sin mensajes de error.

Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
...
Setting up gnupg ([version]) ...
Setting up software-properties-common ([version]) ...
...

Ahora que los prerrequisitos están instalados, está listo para añadir la clave GPG de HashiCorp.

Descargar e instalar la clave GPG de HashiCorp usando wget y gpg --dearmor

En este paso, descargará la clave GPG de HashiCorp y la añadirá al llavero (keyring) de su sistema. Esta clave es utilizada por apt para verificar que los paquetes que descarga del repositorio de HashiCorp son auténticos y no han sido alterados.

Utilizaremos un solo comando que encadena wget, gpg y tee para lograr esto.

  • wget -O- ... descarga la clave desde la URL y la imprime en la salida estándar (standard output).
  • gpg --dearmor procesa la clave desde la entrada estándar y la convierte al formato binario que apt espera.
  • sudo tee ... toma la clave binaria de la entrada estándar y la escribe en el archivo /usr/share/keyrings/hashicorp-archive-keyring.gpg. Usamos tee con sudo porque este directorio requiere permisos de root para escribir en él.

Instale la clave GPG de HashiCorp.

wget -O- https://apt.releases.hashicorp.com/gpg \
  | gpg --dearmor \
  | sudo tee /usr/share/keyrings/hashicorp-archive-keyring.gpg > /dev/null

Si el comando es exitoso, imprimirá el contenido binario de la clave GPG en su terminal mientras también lo escribe en el archivo especificado. Es posible que vea una secuencia de caracteres que no son legibles para humanos; esto es lo esperado.

--[timestamp]--  https://apt.releases.hashicorp.com/gpg
Resolving apt.releases.hashicorp.com (apt.releases.hashicorp.com)... [server IPs]
Connecting to apt.releases.hashicorp.com (apt.releases.hashicorp.com)|[IP]|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: [size] ([size_human]) [binary/octet-stream]
Saving to: 'STDOUT'

-                   100%[===================>]   [size]  --.-KB/s    in 0s

[timestamp] ([speed]) - written to stdout [[size]/[size]]

... (binary output from gpg) ...

La clave ahora está almacenada en su sistema, lista para ser utilizada por apt.

Verificar la huella digital (fingerprint) de la clave GPG de HashiCorp con gpg --fingerprint

En este paso, verificará la huella digital de la clave GPG que acaba de descargar. Esta es una práctica de seguridad importante para confirmar que tiene la clave oficial y correcta de HashiCorp y no una maliciosa.

Puede mostrar la huella digital de la clave utilizando el comando gpg, apuntándolo al archivo del llavero (keyring) que creamos en el paso anterior.

Ejecute el siguiente comando:

gpg --no-default-keyring --keyring /usr/share/keyrings/hashicorp-archive-keyring.gpg --fingerprint

El comando mostrará los detalles de la clave, incluida su huella digital.

/usr/share/keyrings/hashicorp-archive-keyring.gpg
-------------------------------------------------
pub   rsa4096 [creation_date] [SC] [expires: [expiry_date]]
      [FINGERPRINT]
uid           [ unknown] HashiCorp Security (HashiCorp Package Signing) <security+packaging@hashicorp.com>
sub   rsa4096 [creation_date] [S] [expires: [expiry_date]]

Debe verificar que la huella digital de la clave pub coincida con la publicada por HashiCorp. La huella digital debe ser una cadena hexadecimal de 40 caracteres. Dado que la salida coincide con la huella digital esperada, puede estar seguro de que tiene la clave correcta.

Añadir el repositorio de HashiCorp a las fuentes de apt y actualizar apt

En este paso, añadirá el repositorio oficial de HashiCorp a la lista de fuentes de apt de su sistema. Esto le indica al gestor de paquetes dónde buscar los paquetes de Terraform.

Añada el repositorio oficial de HashiCorp a su sistema.

echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(grep -oP '(?<=UBUNTU_CODENAME=).*' /etc/os-release || lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list

Este comando no debería producir ninguna salida. Ahora que se ha añadido el nuevo repositorio, debe actualizar la lista de paquetes de apt nuevamente para que tenga conocimiento de los paquetes disponibles desde la fuente de HashiCorp.

sudo apt update

En la salida, debería ver una línea que indica que apt está obteniendo paquetes de https://apt.releases.hashicorp.com.

Hit:1 http://[mirror]/ubuntu jammy InRelease
Hit:2 http://[mirror]/ubuntu jammy-updates InRelease
Hit:3 http://[mirror]/ubuntu jammy-backports InRelease
Hit:4 http://[mirror]/ubuntu jammy-security InRelease
Get:5 https://apt.releases.hashicorp.com jammy InRelease [[size] kB]
Get:6 https://apt.releases.hashicorp.com jammy/main amd64 Packages [[size] kB]
Fetched [total] kB in [time] ([speed] kB/s)
Reading package lists... Done

Su sistema ahora está configurado para instalar software desde el repositorio oficial de HashiCorp.

Instalar el paquete Terraform usando apt-get install terraform

En este paso final, instalará Terraform. Con la clave GPG y el repositorio configurados, ahora puede usar el comando estándar apt-get install. apt encontrará automáticamente el paquete de Terraform en el repositorio de HashiCorp, verificará su firma y lo instalará.

Ejecute el siguiente comando para instalar Terraform:

sudo apt-get install terraform

apt le mostrará los paquetes que se instalarán y le pedirá confirmación. Dado que estamos en un entorno no interactivo, la instalación procederá automáticamente.

Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following NEW packages will be installed:
  terraform
[upgrade_info]
Need to get [size] MB of archives.
After this operation, [disk_space] MB of additional disk space will be used.
Get:1 https://apt.releases.hashicorp.com jammy/main amd64 terraform amd64 [version]-1 [[size] MB]
...
Setting up terraform ([version]-1) ...

Una vez completada la instalación, puede verificar que Terraform se ha instalado correctamente comprobando su versión.

terraform -v

Este comando debería mostrar la versión de Terraform instalada.

Terraform v[version]
on linux_amd64

¡Felicidades! Ha instalado Terraform con éxito en su sistema.

Resumen

En este laboratorio, ha instalado con éxito Terraform en un sistema Ubuntu utilizando el repositorio de paquetes oficial de HashiCorp.

Usted aprendió a:

  • Actualizar su sistema e instalar paquetes prerrequisito como gnupg y wget.
  • Descargar y añadir la clave GPG oficial de HashiCorp para asegurar la autenticidad del paquete.
  • Verificar la huella digital (fingerprint) de la clave GPG como medida de seguridad.
  • Añadir el repositorio apt de HashiCorp a las fuentes de software de su sistema.
  • Instalar el paquete de Terraform usando el comando apt-get.
  • Verificar la instalación comprobando la versión de Terraform.

Al seguir estos pasos, ha configurado una instalación de Terraform limpia y manejable que puede actualizarse fácilmente en el futuro utilizando comandos estándar del sistema.