Cómo instalar la herramienta de automatización Ansible en CentOS/RHEL 8


Ansible es una herramienta de automatización gratuita y de código abierto que permite a los administradores del sistema configurar y controlar cientos de nodos desde un servidor central sin la necesidad de instalar ningún agente en los nodos.

Se basa en el protocolo SSH para comunicarse con los nodos remotos. En comparación con otras herramientas de administración como Puppet y Chef, Ansible resulta ser el favorito debido a su facilidad de uso e instalación.

En este tutorial, aprenderá a instalar y configurar la herramienta de automatización Ansible en la distribución RHEL/CentOS 8 Linux.

IMPORTANTE: Para CentOS 8, ansible se distribuía tradicionalmente a través del repositorio EPEL, pero aún no hay un paquete oficial, pero se está trabajando en él. Por lo tanto, estamos usando PIP estándar (el administrador de paquetes de Python) para instalar Ansible en CentOS 8.

En RHEL 8, habilite el repositorio oficial de Red Hat para la versión de Ansible correspondiente que desee instalar, como se muestra en este artículo. ¡NO USE PIP EN RHEL 8 !.

Paso 1: Instalar Python3

Por lo general, RHEL 8 y CentOS 8 vendrán con Python3 ya instalado de forma predeterminada. Sin embargo, si por alguna razón Python3 no está instalado, instálelo usando el siguiente usuario normal con privilegios de Sudo.

# su - ravisaive
$ sudo dnf update
$ sudo dnf install python3

Para verificar que efectivamente tiene python3 instalado, ejecute el comando.

$ python3 -V

Paso 2: Instalación de PIP: el instalador de paquetes de Python

Pip es un administrador de paquetes de Python, que también viene preinstalado, pero nuevamente, en caso de que Pip no esté en su sistema, instálelo usando el comando.

$ sudo dnf install python3-pip

Paso 3: Instalación de la herramienta de automatización Ansible

Una vez cumplidos todos los requisitos previos, instale ansible ejecutando el comando en CentOS 8.

# pip3 install ansible --user

En RHEL 8, habilite el repositorio de Ansible Engine para instalar la versión de Ansible correspondiente como se muestra,

# subscription-manager repos --enable ansible-2.8-for-rhel-8-x86_64-rpms
# dnf -y install ansible

Para comprobar la versión de Ansible, ejecute.

# ansible --version

¡Perfecto! Como puede ver, la versión de Ansible instalada es Ansible 2.8.5.

Paso 4: Probar la herramienta de automatización de Ansible

Para probar ansible, primero asegúrese de que ssh esté funcionando.

$ sudo systemctl status sshd

A continuación, necesitamos crear el archivo hosts en el directorio/etc/ansible para definir las máquinas host.

$ sudo mkdir /etc/ansible  
$ cd /etc/ansible
$ sudo touch hosts

El aloja el archivo será el inventario donde tendrás todos tus nodos remotos.

Ahora abra el archivo hosts con su editor favorito y defina el nodo remoto como se muestra.

[web]
192.168.0.104

A continuación, genera claves SSH desde las cuales copiaremos la clave pública al nodo remoto.

$ ssh-keygen

Para copiar la clave SSH generada al nodo remoto, ejecute el comando.

$ ssh-copy-id [email protected]

Ahora use Ansible para hacer ping al nodo remoto como se muestra.

$ ansible -i /etc/ansible/hosts web -m ping  

Hemos logrado instalar y probar Ansible con éxito en la distribución de Linux RHEL/CentOS 8. Si tiene alguna pregunta, compártala con nosotros en la sección de comentarios a continuación.