¿Qué pasa si eres camararero(a) y tienes que llenar 100 copas de agua en 5 minutos? ¿Cómo podrías solventar este problema sin que se derrame agua y que te de tiempo para rellenar estas 100 copas? La respuesta no es darse prisa, la respuesta se llama ANSIBLE.
Ansible es una plataforma que te permite automatizar y también ejecutar comandos ad-hoc (a cualquier máquina), gestionar plataformas de Virtualización como VMware Sphere, plataformas de orquestación de contenedores tipo Kubernetes, dispositivos electrónicos como routers Alcatel…etc.
Puedes hacer maravillas con él, en este post te explico cómo utilizar las cuatro cosas básicas para comenzar a trabajar.
Instalación en CentOS 7
Para instalarlo, simplemente, ejecutas:
sudo yum install ansible
Instalación en Fedora 29
Igual que en el apartado anterior pero con DNF
sudo dnf install ansible
Añadiendo servidores
Para hacer una prueba rapidita de cómo lanzar un comando ad-hoc, añade los servidores en los que estés interesado(a) ejecutar algo y ¡a correr!
Edita el archivo /etc/ansible/hosts
y añade los hostnames/IPS
Genera una llave SSH si no la tienes:
ssh-keygen -t rsa
ssh-agent bash
ssh-add ~/.ssh/id_rsa
Copia las llaves a los servidores que tengas (aquí tomo como referencia el puerto por defecto del protocolo SSH que es el 22, si lo has cambiado adáptalo):
ssh-copy-id ~/.ssh/id_rsa USUARIO@HOST
ssh-copy-id ~/.ssh/id_rsa USUARIO@HOST
ssh-copy-id ~/.ssh/id_rsa USUARIO@HOST
¡A probar!
¡Probamos con un ping!
ansibe all -m ping
EXAMPLE.COM.ES | SUCCESS => {
"changed": false,
"ping": "pong"
}
EXAMPLE.COM | SUCCESS => {
"changed": false,
"ping": "pong"
}
EXAMPLE.ES | SUCCESS => {
"changed": false,
"ping": "pong"
}
¡Perfecto ya lo tienes!
Ahora puedes hacer volar tu imaginación tanto como quieras. ¿Te imaginas actualizar 20 máquinas a la vez sin tener que repetir esos 2-3 comandos? ¡Te ahorras hasta la ejecución de 60 comandos, más el tiempo de acceso a todas esas máquinas!
Referencias
- Ansible - documentationtting_started.html?target=_blank)