Ansible

Es una herramienta de orquestación que automatiza la gestión de configuraciones y el despliegue de aplicaciones. Nos permitirá gestionar nuestros servidores sin necesidad de agente de forma sencilla y funcionando en paralelo.

Para poder usar ansible sólo se necesita un equipo controlador con ansible instalado y conexión ssh con los equipos a gestionar , y en los nodos remotos tener instalado python .

Utiliza YAML para describir las acciones a realizar en los diferentes nodos remotos.

Instalación en Centos

Instalación en Centos

Para comprobar si todo está correcto ejecutamos

Conceptos básicos

Inventario . Archivo donde agrupamos una lista de servidores. Por defecto en /etc/ansible/hosts

Playbooks. Es un archivo donde listamos las tareas que de deben ejecutar. Se escribe en formato YAML

Task. Un bloque dentro del Playbook , en el que definimos una acción concreta a realizar.

Includes

Roles

Comandos básicos

Configurar el acceso a los clientes

Verificar que tenemos acceso a los clientes

Generamos nuestras llaves ssh

[root@localhost ~]# ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:LXpEhlOQ04nsA3CF/nKfPB3GgDJv0JBw2TZNwgGF1kI root@localhost.localdomain
The key's randomart image is:
+---[RSA 2048]----+
| o+E&*Oo. |
| oX @++ |
| o Bo+o |
| = =+.. |
| * .So. |
| . =o .+ |
| +.o.+ . |
| .= . |
| . |
+----[SHA256]-----+
[root@localhost ~]#

Una vez finalizado el proceso de generación disponemos de 2 ficheros: ~/.ssh/id_rsa y ~/.ssh/id_rsa.pub

El siguiente paso sería copiar nuestro fichero de llave pública al cliente

Referencias

Ejemplos

https://www.ssh.com/ssh/copy-id