Instalar Ansible en Ubuntu 24.04

Guía completa de instalación y configuración básica de Ansible.

file

Ansible es una herramienta de automatización open source que te permite gestionar servidores, desplegar aplicaciones, configurar sistemas y ejecutar comandos en decenas o cientos de máquinas — todo desde un único nodo de control, usando únicamente SSH. No se necesitan agentes en los hosts remotos.

Es especialmente útil para automatizar tareas rutinarias en VPS o servidores dedicados.

Instalación

Ubuntu 24.04 incluye una versión reciente de Ansible directamente en los repositorios oficiales — es la forma más sencilla y recomendada.

  1. Actualiza el índice de paquetes y actualiza los paquetes existentes:
   sudo apt update
   sudo apt upgrade -y
  1. Instala Ansible:
sudo apt install ansible -y
  1. Verifica la instalación:
ansible --version

Ejemplo de salida:

ansible [core 2.16.10]
config file = /etc/ansible/ansible.cfg
configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python3/dist-packages/ansible
ansible collection location = /root/.ansible/collections:/usr/share/ansible/collections
executable location = /usr/bin/ansible
python version = 3.12.3 (main, Nov  6 2024, 20:26:53) [GCC 13.2.0]
jinja version = 3.1.2
libyaml = True

Configurar el acceso SSH a los hosts gestionados

Ansible se conecta mediante SSH, por lo que necesitas acceso sin contraseña desde el nodo de control a cada host de destino.

  1. Genera un par de claves SSH (si aún no tienes uno):
ssh-keygen -t ed25519 -C "ansible@your-control-node"

Pulsa Enter en todas las preguntas (sin frase de contraseña para la automatización).
O usa RSA si ed25519 no está soportado:

ssh-keygen -t rsa -b 4096 -C "ansible@your-control-node"
  1. Copia la clave pública a cada host gestionado:
ssh-copy-id root@TARGET_IP

O para un usuario no root:

ssh-copy-id user@TARGET_IP

Introduce la contraseña del host de destino una sola vez — después no será necesaria.

  1. Crea o edita el archivo de inventario (lista de hosts):
sudo mkdir -p /etc/ansible
sudo nano /etc/ansible/hosts

Ejemplo de inventario:

[webservers]
web1 ansible_host=192.168.1.10 ansible_user=root
web2 ansible_host=192.168.1.11 ansible_user=root

[dbservers]
db1 ansible_host=192.168.1.20 ansible_user=root

[all:vars]
ansible_python_interpreter=/usr/bin/python3
  • Los grupos como [webservers] organizan los hosts
  • ansible_host = dirección IP
  • ansible_user = usuario de inicio de sesión SSH
  • ansible_python_interpreter garantiza el uso de Python 3 (importante en Ubuntu 24.04)

Nuestros servicios y productos

HostingFunciona en discos NVMe ultrarrápidos. Apto para sitios web de cualquier complejidad.
Pedir
VPSParámetros ajustables y configuración flexible del SO. Administración gratuita incluida.
Pedir
Servidores dedicadosDisponibles diversas configuraciones Supermicro con procesadores Intel y AMD.
Pedir
  1. Comprueba la conectividad:
ansible all -m ping

Salida en caso de éxito:

web1 | SUCCESS => {
    "changed": false,
    "ping": "pong"
}
web2 | SUCCESS => {
    "changed": false,
    "ping": "pong"
}

file El módulo ping de Ansible confirma la conectividad

Consejos y buenas prácticas

  • Ansible solo necesita SSH y Python en los hosts remotos — ambos ya están presentes en Ubuntu 24.04.
  • Usa siempre claves SSH (sin contraseña) para la automatización — es más seguro y fiable.
  • Guarda el inventario y los playbooks en Git — las configuraciones de Ansible son archivos YAML/texto plano.
  • Empieza con playbooks pequeños y usa el modo --check para probar sin aplicar cambios.

Ayuda

¿Tienes dudas o necesitas ayuda? Escríbenos a través del sistema de tickets — siempre estamos aquí para ayudarte!

¿Necesitas ayuda?Nuestros ingenieros te ayudarán gratuitamente con cualquier pregunta en minutosContáctanos