Configuración de laboratorio de ansible
Como ya hemos visto, Ansible es una herramienta fantástica si te interesa DevOps o si estás comenzando en la automatización de infraestructuras.
Vamos a ver como configurar un laboratorio casero con Ansible utilizando Vagrant, una herramienta que simplifica mucho el proceso con el objetivo de poder desplegar máquinas virtuales fácilmente para practicar y aprender Ansible:
Requisitos Previos
Antes de comenzar, asegúrate de contar con las siguientes herramientas:
Computadora con Windows: La mayoría de nosotros usamos Windows, así que será nuestro sistema base. Si usas otro sistema operativo, el proceso es similar.
VirtualBox: Usaremos este software de virtualización para crear nuestras máquinas virtuales. Puedes descargarlo desde su sitio web oficial, es gratuito.
Vagrant: Vagrant nos permitirá gestionar entornos de máquinas virtuales, facilitando la creación y configuración de las mismas. Descárgalo desde su sitio oficial.
Editor de código: Necesitarás un editor para escribir los archivos de Vagrant y los playbooks de Ansible. Visual Studio Code es una buena opción, pero cualquier editor con soporte para sintaxis YAML servirá.
Aprovisionando el Laboratorio
Una vez instaladas las herramientas necesarias, vamos a crear nuestro laboratorio con Vagrant. Este es el diseño del entorno:
Ya he creado los archivos y scripts necesarios. Puedes clonarlos desde mi repositorio de GitHub con el siguiente comando:
El repositorio contiene un archivo Vagrantfile
con la siguiente configuración:
Este archivo configura un entorno con cuatro máquinas virtuales:
Nodos base: Master y base de datos con "geerlingguy/rockylinux8", aplicaciones con "ubuntu/jammy64".
Memoria asignada: 2 GB para el nodo maestro, 512 MB para los demás.
IPs privadas y nombres de host definidos para cada nodo.
Script de provisión para habilitar autenticación por contraseña SSH en los nodos de aplicación.
Instalación de Ansible en el Nodo Maestro
Con el entorno en marcha, es hora de instalar Ansible en el nodo maestro. Puedes hacerlo de dos formas:
Método 1: Desde el repositorio EPEL
Accede por SSH al nodo maestro:
Habilita el repositorio EPEL:
Actualiza los paquetes:
Instala Ansible:
Verifica la instalación:
Método 2: Usando PIP
Instala pip y Ansible:
Configuración de Autenticación SSH con Llaves
Genera un par de llaves SSH en el nodo maestro:
Copia la clave pública a cada nodo gestionado:
Contraseña por defecto: vagrant
.
Crear el Archivo de Configuración de Ansible
Crea un directorio para tus archivos:
Crea el archivo
ansible.cfg
:
Este archivo configura Ansible para:
No verificar la clave del host (por simplicidad).
Usar la llave privada generada.
Ejecutar tareas con privilegios elevados por defecto.
Crear el Archivo de Inventario
Crea el archivo
hosts
dentro de~/ansible-lab
:
Puedes probar la conectividad con:
Si los nombres de usuario difieren entre el nodo maestro y los gestionados, usa la opción -u
:
Resumen
Ya tienes listo tu entorno para comenzar a escribir y ejecutar playbooks de Ansible. En el próximo artículo se explorarán los comandos ad-hoc, que permiten realizar tareas rápidas sin necesidad de crear un playbook completo.
Última actualización