GNU/Linux >> Tutoriales Linux >  >> Rocky Linux

Cómo instalar Ansible (herramienta de automatización) en Rocky Linux 8

Ansible es una herramienta de automatización gratuita y de código abierto patrocinada por Red Hat. Usando ansible podemos administrar y configurar el sistema Linux y Windows sin la instalación de ningún agente en ellos. Básicamente funciona con el protocolo ssh y puede configurar más de cien servidores a la vez. En la terminología de ansible, el sistema en el que está instalado Ansible se denomina host/nodo de control y los sistemas administrados por ansible se denominan hosts administrados.

En esta publicación, analizaremos cómo instalar la última versión de Ansible en Rocky Linux 8.  A continuación se encuentran los detalles de configuración de mi laboratorio Ansible:

  • Nodo de control:192.168.1.170:Minimal Rocky Linux 8
  • Host administrado 1:192.168.1.121:Ubuntu 20.04 LTS
  • Host administrado 2:192.168.1.122:Rocky Linux 8
  • usuario sysops con derechos de administrador

Instalar Ansible a través del comando dnf

1) Actualizar el sistema

Para actualizar Rocky Linux 8, ejecuta el comando dnf.

$ sudo dnf update -y

Una vez que todas las actualizaciones estén instaladas, reinicie su sistema una vez.

$ sudo reboot

2) Configurar repositorio EPEL

El paquete Ansible y sus dependencias no están disponibles en los repositorios de paquetes predeterminados de Rocky Linux 8. Entonces, para instalar ansible a través de dnf, primero debemos configurar el repositorio EPEL.

Ejecute los siguientes comandos,

$ sudo dnf install -y epel-release

3) Instale Ansible con el comando dnf

Ahora estamos listos para instalar ansible con el comando dnf, ejecutar

$ sudo dnf install ansible -y

Una vez que ansible y sus dependencias se hayan instalado correctamente. Verifique su versión ejecutando el siguiente comando,

$ ansible --version

Instalación de Ansible con pip

Si está buscando la última versión de Ansible, instale ansible con pip. Consulte los siguientes pasos.

Nota:Al momento de escribir esta publicación, ansible 4.3.0 está disponible

1) Instalar todas las actualizaciones

Instale todas las actualizaciones disponibles usando el siguiente comando,

$ sudo dnf update -y

Reinicie el sistema una vez después de instalar las actualizaciones,

$ reboot

2) Instale Python 3.8 y otras dependencias

Ejecute los siguientes comandos para instalar Python 3.8 y otras dependencias

$ sudo  dnf module -y install python38
$ sudo alternatives --config python

Escriba 3 y presione enter

3) Instale la última versión de Ansible con pip

Ejecute los siguientes comandos uno tras otro para instalar ansible,

$ sudo pip3 install setuptools-rust wheel
$ sudo pip3 install --upgrade pip
$ sudo python -m pip install ansible

La salida del comando de python anterior sería la siguiente:

El resultado anterior confirma que Ansible se ha instalado correctamente. Verifiquemos la versión de Ansible usando el siguiente comando ansible,

$ ansible --version

Verificar la instalación de Ansible

Cada vez que Ansible se instala con el comando dnf o yum, su archivo de configuración predeterminado 'ansible.cfg' se crea automáticamente en la carpeta '/etc/ansible'. Pero cuando lo instalamos con pip, tenemos que crear su archivo de configuración manualmente.

Se recomienda crear ansible.cfg para cada proyecto. Para fines de demostración, estoy creando un proyecto de automatización. Ejecute el siguiente comando mkdir,

$ mkdir automation
$ cd automation

Cree el archivo ansible.cfg con el siguiente contenido,

$ vi ansible.cfg
[defaults]
inventory      = /home/sysops/auotmation/inventory
remote_user = sysops
host_key_checking = False

[privilege_escalation]
become=True
become_method=sudo
become_user=root
become_ask_pass=False

Guarde y salga del archivo.

Ahora cree un archivo de inventario en el proyecto de automatización (carpeta) con el siguiente contenido.

$ vi inventory
[prod]
192.168.1.121

[test]
192.168.1.122

Guarde y cierre el archivo.

Si notó cuidadosamente el archivo ansible.cfg, he usado remote_user como 'sysops'. Entonces, creemos claves ssh para el usuario sysops y compártalas entre los hosts administrados.

$ ssh-keygen

Comparta las claves SSH usando el comando ssh-copy-id,

$ ssh-copy-id [email protected]
$ ssh-copy-id [email protected]

Nota:Ejecute el siguiente comando en cada host administrado para ejecutar todos los comandos sin solicitar la contraseña,

# echo "sysops ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/sysops

Verifique la conectividad desde el nodo de control hasta los hosts administrados mediante el módulo de ping,

$ cd automation/
$ ansible -i inventory all -m ping

Vamos a crear un libro de jugadas de muestra (web.yaml) para instalar nginx y php en hosts administrados,

$ vi web.yaml
---
- name: Play to Packages
  hosts:
    - test
    - prod
  tasks:
  - name: Install php and nginx
    package:
      name:
        - php
        - nginx
      state: present

Guarde y cierre el archivo.

Ejecute el libro de jugadas usando el comando ansible-playbook,

$ ansible-playbook -i inventory web.yaml

La salida del comando anterior le gustaría a continuación

Genial, el resultado anterior confirma que el libro de jugadas se ha ejecutado correctamente y también confirma que Ansible está instalado correctamente.

Eso es todo de esta publicación. Creo que esta publicación lo ayuda a instalar y usar Ansible en Rocky Linux 8. Comparta sus comentarios y consultas en la sección de comentarios a continuación.

Lectura recomendada:  Cómo usar controladores en Ansible Playbook


Rocky Linux
  1. Cómo instalar Python 3.9 en Rocky Linux 8

  2. Cómo instalar la herramienta de monitoreo de Centreon en Rocky Linux 8

  3. Cómo instalar Rocky Linux 8.4

  4. Cómo instalar Docker CE en Rocky Linux 8

  5. Cómo instalar Redis en Rocky Linux 8

Cómo instalar Python 3.9 en Rocky Linux

Cómo instalar PHP 8 en Rocky Linux 8

Cómo instalar Nginx en Rocky Linux 8

Cómo instalar Node.js en Rocky Linux 8

Cómo instalar Rust en Rocky Linux 8

Cómo instalar AngularJS en Rocky Linux 8