Siempre que hablamos de herramientas de gestión de configuración, el nombre que escuchamos con más frecuencia es Ansible. Es una herramienta multiplataforma que está diseñada para manejar las configuraciones del sistema mientras se trabaja con los sistemas operativos Linux, macOS y Windows. Hoy intentaremos arrojar luz sobre el procedimiento de instalación de Ansible en Debian 10.
Instalación de Ansible en Debian 10
Para instalar Ansible en Debian 10, debe realizar los siguientes tres sencillos pasos:
Paso n.º 1:actualice su sistema Debian 10:
Antes de instalar Ansible en Debian 10, debe actualizarlo con el comando que se muestra a continuación:
sudo apt update
Después de actualizar su sistema Debian 10, verá algo como lo que se muestra en la siguiente imagen en su terminal:
Paso n.° 2:Instale Ansible en su sistema Debian 10:
Una vez finalizada la actualización del sistema, puede instalar Ansible en Debian 10 con el comando que se muestra a continuación:
sudo apt install ansible
Durante el tiempo que se ejecutará este comando, verá un mensaje que le preguntará si desea continuar con la instalación o no en su terminal. Tienes que escribir "Y" para que el proceso de instalación siga funcionando sin problemas como se destaca en la siguiente imagen:
Cuando Ansible se haya instalado correctamente en su sistema Debian 10, la terminal generará algunos mensajes similares a los que se muestran en la imagen a continuación:
Paso n.° 3:Confirme la instalación de Ansible en su sistema Debian 10:
La instalación de Ansible en un sistema Debian 10 es tan simple que se completará en los dos pasos anteriores. Sin embargo, aún puede verificar si se ha instalado correctamente en su sistema Debian 10 o no. Esto se puede hacer comprobando su versión con el siguiente comando:
ansible --version
La versión de Ansible que está instalada en nuestro sistema Debian 10 es 2.7.7, que también se destaca en la imagen que se muestra a continuación:
Edite el archivo de hosts de Ansible /etc/ansible/hosts para agregar el sistema que queremos administrar con Ansible.
sudo nano /etc/ansible/hosts
Agrega lo siguiente:
[TestClient] node1 ansible_ssh_host=192.168.0.12
And save the file.
Uso de Ansible
Primero, tenemos que configurar una clave SSH para el nodo cliente, ya que Ansible usa el protocolo SSH para transferir comandos al sistema cliente.
Utilice este comando para generar una clave SSH para la autenticación basada en claves:
ssh-keygen
Salida:
Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): 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:gTHiTCK....................... [email protected] The key's randomart image is: +---[RSA 2048]----+ | . . . | +----[SHA256]-----+
El siguiente paso es copiar la clave recién generada al otro sistema. Ejecute este comando:
ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]
La IP 192.168.0.2 del comando anterior debe reemplazarse con la dirección IP del sistema que desea administrar con Ansible.
Salida:
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub" /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys [email protected]'s password: Number of key(s) added: 1
Ahora es el momento de una primera prueba, inicie sesión en la otra máquina usando este comando SSH:
ssh [email protected]
El inicio de sesión debería funcionar sin requerir una contraseña ahora.
Prueba Ansible
La parte de instalación está terminada, ahora podemos comenzar a probar Ansible
Ejecute este comando para probar la conexión:
ansible -m ping TestClient
Salida:
node1 | SUCCESS => { "changed": false, "ping": "pong" }
En caso de que haya definido más de un cliente, puede probar todas las conexiones con el siguiente comando:
ansible -m ping all
Ahora es el momento de ejecutar un comando en el sistema remoto y obtener el resultado. Para este ejemplo, usaré el comando df.
ansible -m shell -a 'df -h' TestClient
Salida:
node1 | CHANGED | rc=0 >> Filesystem Size Used Avail Use% Mounted on udev 957M 0 957M 0% /dev tmpfs 195M 21M 175M 11% /run /dev/sda1 38G 11G 25G 31% / tmpfs 974M 0 974M 0% /dev/shm tmpfs 5.0M 0 5.0M 0% /run/lock tmpfs 974M 0 974M 0% /sys/fs/cgroup /dev/sda15 121M 130K 120M 1% /boot/efi tmpfs 195M 0 195M 0% /run/user/0
El resultado muestra el uso del disco duro en el sistema remoto. Puede ejecutar cualquier comando de shell de Linux como este usando ansible y también crear scripts completos para configurar y mantener servidores.
Eliminación de Ansible
Para eliminar Ansible de su sistema Debian 10, primero debe desinstalarlo y también sus archivos de configuración con el siguiente comando:
sudo apt-get purge ansible
Después de ejecutar este comando con éxito, también puede deshacerse de todos los paquetes y dependencias irrelevantes ejecutando el comando que se muestra a continuación:
sudo apt-get autoremove
Conclusión
Este artículo muestra cómo instalar Ansible en un sistema Debian 10 y cómo puede usarlo para administrar sistemas de forma remota a través de una conexión SSH segura.