GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo ejecutar y programar Ansible Playbook mediante la GUI de AWX

En nuestro artículo anterior, ya habíamos demostrado los pasos de instalación de Ansible AWX en CentOS 8 y RHEL 8. Ansible AWX es una versión gratuita y de código abierto de Red Hat Ansible Tower. Proporciona una interfaz gráfica de usuario, una API Rest y un motor de tareas de Ansible.

En este artículo, veremos algunas luces sobre el uso básico de Ansible AWX GUI y cómo podemos ejecutar y programar Ansible Playbooks usando esta herramienta.

Detalles de laboratorio para AWX GUI,

  • 192.168.1.6     // Sistema Ansible AWX ya instalado (CentOS 8)
  • 192.168.1.9    // Cliente Ansible (CentOS 7)
  • 192.168.1.10   // Cliente Ansible (Ubuntu 18.04)
  • Sincronización de tiempo de todas las máquinas con servidores NTP
  • usuario de sysadm con derechos sudo

Pasemos a los pasos del uso básico de AWX y la ejecución de playbooks de Ansible a través de la GUI de AWX,

Paso 1) Configurar la autenticación basada en claves entre Ansible AWX Node y sus clientes

Como estamos usando el usuario sysadm, intercambiaremos las claves ssh de este usuario del sistema Ansbile AWX a los clientes ansible.

Supongo que el usuario sysadm ya está creado en estos sistemas y tiene los derechos de sudo. Use los comandos a continuación para generar claves SSH para el usuario sysadm desde AWX Node y comparta sus claves públicas con clientes ansible usando el comando ssh-copy-id,

[[email protected] ~]$ ssh-keygen

Ahora copie la clave pública del usuario sysadm a los clientes

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

Verifique si la autenticación basada en claves se ha configurado correctamente o no, ejecute los siguientes comandos,

[[email protected] ~]$ ssh  [email protected] "hostname;exit" 
centos7 
[[email protected] ~]$ ssh  [email protected] "hostname;exit" 
Ubuntu-18-04 
[[email protected] ~]$

Paso 2) Crear una organización en la GUI de AWX

Inicie sesión en Ansible AWX GUI y vaya a Organización Pestaña y crea una organización haciendo clic en el símbolo "+",

A continuación, se nos pedirá que ingresemos el nombre de la organización,

Haga clic en Guardar

Paso 3) Crear un proyecto y asignarle una organización

Antes de crear un proyecto, primero creemos el directorio del proyecto donde almacenaremos todos los libros de jugadas de ansible, vaya a la consola cli del nodo AWX y ejecute,

[[email protected] ~]$ sudo mkdir /var/lib/awx/projects/automation

Ahora cree un libro de jugadas de muestra para instalar paquetes bind-utils en CentOS y Ubuntu Systems,

[[email protected] ~]$ cd /var/lib/awx/projects/automation/
[[email protected] automation]$ sudo vi example.yaml
---
- hosts: all
  gather_facts: true
  become: true
  tasks:
    - yum:
        name: bind-utils
      when: ansible_os_family == "RedHat"
    - apt:
        name: dnsutils
      when: ansible_os_family == "Debian"

Guarde y salga del archivo,

Ahora vaya a AWX GUI, seleccione Proyectos Presione la pestaña y luego haga clic en el signo + para crear un nuevo Proyecto y especifique el nombre del proyecto que se adapte a su configuración y especifique otros detalles como Organizaciones como “LINUXTECHI” , Tipo SCM como “Manual” , Ruta base del proyecto como “/var/lib/proyectos” y Directorio de Playbook como “automatización

Haga clic en Guardar

Paso 4) Crear credenciales y agregar clave privada y otros detalles

Estas credenciales se utilizarán al ejecutar los playbooks en los clientes ansible de destino. Para obtener el contenido de la clave privada SSH del usuario sysadm, ejecute el siguiente comando:

[[email protected] ~]$ cat ~/.ssh/id_rsa

Ahora, seleccione Credenciales Presione la pestaña y haga clic en el signo '+' para crear credenciales y elija Tipo de credenciales como “Máquina “, Elija Organización como “LINUXTECHI “, Nombre de usuario como “sysadm ” y pegue la clave privada del usuario sysadm en “Clave privada SSH Sección ", elija 'Método de escalada de privilegios ' como 'sudo ', 'Nombre de usuario de escalada de privilegios ' como 'sysadm ' y 'Contraseña de escalada de privilegios' como {contraseña-del-usuario-sysadm}

Haga clic en GUARDAR,

Paso 5) Cree un inventario, agréguele hosts y ejecute el módulo de ping

Para crear un inventario, seleccione el Inventario Pestaña y luego haz clic en el signo + y especifica el nombre del Inventario y elige la organización como “LINUXTECHI “,

Para agregar hosts a Frontend Inventario, elija la opción GUARDAR en la ventana de arriba y luego haga clic en HOSTS y haga clic en el símbolo '+' para comenzar a agregar hosts, especifique la DIRECCIÓN IP o el nombre del host en "NOMBRE DEL HOST ” y luego haga clic en guardar.

Del mismo modo, agregue otro host "192.168.1.10".

Intentemos ejecutar el módulo de ping en uno de los hosts para verificar la conectividad y las credenciales. Elija cualquiera de los hosts del inventario y haga clic en "EJECUTAR COMANDOS

En la siguiente ventana, elija 'ping ' de la sección del módulo y elija "credenciales de automatización ”  de Credenciales de máquina,

Haga clic en Iniciar y luego obtendremos la siguiente pantalla,

Perfecto, la ventana de arriba confirma que la Conectividad y las credenciales funcionan bien. Pasemos al siguiente paso y creemos plantillas.

Paso 5) Crear y ejecutar una plantilla de trabajo

Para crear una plantilla de trabajo, seleccione "Plantilla Haga clic en la pestaña "+" y haga clic en el signo + y elija "Plantilla de trabajo

Especifique lo siguiente como:

  • NOMBRE:Instalación de PKG
  • Descripción:Instalar Bind Utils PKG
  • TIPO DE TRABAJO:Ejecutar
  • INVENTARIO:Interfaz
  • PROYECTO:Automatización
  • LIBRO DE JUEGOS:ejemplo.yaml
  • CREDENCIALES:credenciales de automatización
  • Seleccione "HABILITAR ESCALADA DE PRIVILEGIOS"

Haga clic en GUARDAR

Ahora intente ejecutar el trabajo y ver si el trabajo se ejecuta correctamente, aquí la ejecución del trabajo no es más que la ejecución del libro de jugadas de Ansible en el inventario utilizando las credenciales que hemos creado en los pasos anteriores.

Seleccione el Trabajo como “Instalación de PKG ” y haga clic en Rocket Symbol para ejecutar el trabajo,

Obtendremos la siguiente pantalla, si Job o Ansible Playbook se ejecutan con éxito, deberíamos recibir un mensaje de éxito.

Genial, el trabajo se ejecutó con éxito, programemos este trabajo.

Paso 6) Plantilla de trabajo de programación

Elija la plantilla de trabajo que desea programar, en mi caso sería "Instalación de PKG ” y elija “HORARIO ” y haga clic en el signo + para crear un nuevo horario,

Supongamos que queremos crear un cronograma de tal manera que el trabajo se ejecute todos los días a las 16:00 horas hasta el 30 de abril,

Haga clic en Guardar para habilitar este programa para la plantilla de trabajo "Instalación de PKG “.

Eso es todo de este artículo. Espero que estos pasos ayuden a comprender el uso básico de la GUI de Ansible AWX y cómo se ejecutan los Playbooks de Ansible a través de la plantilla de trabajo. No dude en compartir sus opiniones y comentarios.


Linux
  1. Ansible Playbook:Cómo crear y configurar Playbooks

  2. Cómo instalar y probar Ansible en Linux

  3. Cómo crear un libro de jugadas de Ansible

  4. Uso de un playbook de Ansible para administrar actualizaciones de estaciones de trabajo y servidores

  5. Cómo pasar variables adicionales a un libro de jugadas de Ansible

Cómo crear y ejecutar un programa en C usando Ubuntu 20.04 LTS

Cómo definir y usar controladores en Ansible Playbooks

Cómo crear y ejecutar un archivo de libro de jugadas de Ansible

Cómo automatizar la instalación y la implementación de Podman con Ansible

Cómo ejecutar aplicaciones de Linux en Windows 10 y 11 usando WSL

Cómo ejecutar aplicaciones GUI de Linux en Windows 10 con WSL y WSLg