Ansible es una impresionante herramienta de automatización para administradores de sistemas Linux. Es una herramienta de configuración de código abierto que permite a los administradores de sistemas administrar cientos de servidores desde un nodo centralizado, es decir Servidor Ansible. Ansible es la herramienta de configuración preferida cuando se compara con herramientas similares como Marioneta, Cocinero y Sal porque no necesita ningún agente y funciona en SSH y python.
En este tutorial aprenderemos cómo instalar y usar Ansible en el sistema CentOS 8 y RHEL 8
Detalles del laboratorio de Ansible:
- Servidor CentOS 8 / RHEL 8 mínimo (192.168.1.10) con conectividad a Internet
- Dos nodos Ansible: Ubuntu 18.04 LTS (192.168.1.20) y CentOS 7 (192.168.1.30)
Pasos de instalación de Ansible en CentOS 8
El paquete Ansible no está disponible en el repositorio de paquetes predeterminado de CentOS 8. entonces necesitamos habilitar el Repositorio EPEL ejecutando el siguiente comando,
[[email protected] ~]$ sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm -y
Una vez que el repositorio de epel esté habilitado, ejecute el siguiente comando dnf para instalar Ansible
[[email protected] ~]$ sudo dnf install ansible
Salida del comando anterior:
Una vez que ansible se haya instalado correctamente, verifique su versión ejecutando el siguiente comando
[[email protected] ~]$ sudo ansible --version
El resultado anterior confirma que la instalación se completó con éxito en CentOS 8.
Pasemos al sistema RHEL 8
Pasos de instalación de Ansible en RHEL 8
Si tiene una suscripción RHEL 8 válida, use el siguiente comando de administrador de suscripción para habilitar Ansible Repo,
[[email protected] ~]$ sudo subscription-manager repos --enable ansible-2.8-for-rhel-8-x86_64-rpms
Una vez que el repositorio esté habilitado, ejecute el siguiente comando dnf para instalar Ansible,
[[email protected] ~]$ sudo dnf install ansible -y
Una vez que ansible y sus paquetes dependientes estén instalados, verifique la versión de ansible ejecutando el siguiente comando:
[[email protected] ~]$ sudo ansible --version
Forma alternativa de instalar Ansible a través de pip3 en CentOS 8/RHEL 8
Si desea instalar Ansible usando pepita (administrador de paquetes de python) luego primero instale los paquetes pyhton3 y python3-pip usando el siguiente comando,
[[email protected] ~]$ sudo dnf install python3 python3-pip -y
Después de la instalación de pyhthon3, verifique su versión ejecutando
[[email protected] ~]$ python3 -V Python 3.6.8 [[email protected] ~]$
Ahora ejecute debajo del comando pip3 para instalar Ansible,
[[email protected] ~]$ pip3 install ansible --user
Producción,
El resultado anterior confirma que Ansible se ha instalado correctamente mediante pip3. Veamos cómo podemos usar Ansible
¿Cómo usar la herramienta de automatización Ansible?
Cuando instalamos Ansible usando el comando yum o dnf, su archivo de configuración, archivo de inventario y directorio de funciones se crean automáticamente en la carpeta /etc/ansible.
Entonces, agreguemos un grupo con el nombre «servidores de laboratorio” y en este grupo agregue ubuntu 18.04 y la dirección IP del sistema CentOS 7 en /etc/ansible/hosts Archivo
[[email protected] ~]$ sudo vi /etc/ansible/hosts … [labservers] 192.168.1.20 192.168.1.30 …
Guardar y salir del archivo.
Una vez que se actualice el archivo de inventario (/etc/ansible/hosts), intercambie las claves públicas ssh de su usuario con sistemas remotos que formen parte del grupo de «servidores de laboratorio».
Primero generemos la clave pública y privada de su usuario local usando el comando ssh-keygen,
[[email protected] ~]$ ssh-keygen
Ahora intercambie la clave pública entre el servidor ansible y sus clientes usando el siguiente comando,
[[email protected] ~]$ ssh-copy-id [email protected] [[email protected] ~]$ ssh-copy-id [email protected]
Ahora probemos un par de comandos de Ansible, primero verifique la conectividad del servidor Ansible a sus clientes usando el módulo ping,
[[email protected] ~]$ ansible -m ping "labservers"
Nota: Si no especificamos el archivo de inventario en el comando anterior, se referirá al archivo de hosts predeterminado (es decir, /etc/ansible/hosts)
Producción,
Verifiquemos la versión del kernel de cada cliente usando el comando de shell de Ansible,
[[email protected] ~]$ ansible -m command -a "uname -r" "labservers" 192.168.1.30 | CHANGED | rc=0 >> 4.15.0-20-generic 192.168.1.20 | CHANGED | rc=0 >> 3.10.0-327.el7.x86_64 [[email protected] ~]$
Utilice el siguiente comando ansible para enumerar todos los hosts del archivo de inventario,
[[email protected] ~]$ ansible all -i /etc/ansible/hosts --list-hosts hosts (4): 192.168.100.1 192.168.100.10 192.168.1.20 192.168.1.30 [[email protected] ~]$
Use el siguiente comando ansible para enumerar solo los hosts del grupo «servidores de laboratorio»
[email protected] ~]$ ansible labservers -i /etc/ansible/hosts --list-hosts hosts (2): 192.168.1.20 192.168.1.30 [[email protected] ~]$
Eso es todo de este artículo, hemos demostrado con éxito cómo instalar y usar Ansible en CentOS 8 y RHEL 8 System. Por favor, comparte tus comentarios y opiniones.
Leer también : Cómo instalar Ansible AWX con Docker-Compose en CentOS 8
Leer también : Cómo administrar el host remoto de Windows usando Ansible