GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo instalar Ansible AWX con Docker-Compose en CentOS 8

Red Hat ha proporcionado dos herramientas GUI para la gestión centralizada de nodos remotos mediante Ansible.

  • Torre Ansible
  • AWX

Ansible Tower es una interfaz basada en web y un punto final de API REST para Ansible. Proporciona registro y auditoría centralizados, control de acceso basado en roles e implementación con solo pulsar un botón.

AWX es una utilidad de automatización basada en Ansible Tower que proporciona una interfaz gráfica web, una API REST y un motor de tareas que permite a los usuarios administrar sus proyectos de Ansible. . En otras palabras, podemos que AWX sea una versión de código abierto de Anisble Tower. Con AWX, puede realizar una serie de tareas, incluida la gestión de inventario , automatización del flujo de trabajo , programación de trabajos , administración de credenciales y informes por mencionar solo algunos.

Una de las ventajas de AWX es que puede aprovechar todas las funciones empresariales que se incluyen con Ansible Tower para una cantidad ilimitada de nodos. En otras palabras, el límite de 10 nodos no se aplica a AWX. Además, AWX es ideal para entornos de laboratorio o desarrollo. Sin embargo, no se considera una herramienta ideal para entornos de producción en comparación con Ansible Tower. .

AWX necesita un entorno en contenedores para funcionar. Un par de opciones que admiten AWX incluyen Kubernetes , OpenShift y Composición Docker . En esta guía, sin embargo, vamos a utilizar Docker compose porque es bastante fácil de configurar y es amigable con los recursos.

Requisitos para Ansible AWX

Antes de comenzar, asegúrese de que el nodo de CentOS 8 tenga lo siguiente:

  • 4 GB de RAM
  • CPU de 3,4 GHz con 2 núcleos
  • 20 GB de espacio en disco duro
  • CentOS 8 debe ejecutar Openshift, Docker o Kubernetes
  • Ansible ya debe estar instalado

Con todos los requisitos cumplidos, ¡manos a la obra!

Paso 1) Instalar EPEL en CentOS 8

Comience por instalar EPEL en el nodo CentOS 8 porque proporciona algunos de los paquetes esenciales que requiere AWX. Por lo tanto, inicie sesión como usuario root en su nodo CentOS 8 y ejecute el comando:

[[email protected] ~]# dnf install epel-release -y

Paso 2) Instalar paquetes y dependencias adicionales

Además, debemos dar un paso más e instalar los paquetes esenciales que se requerirán a medida que avancemos con la instalación de AWX:

[[email protected] ~]# dnf install git gcc gcc-c++ nodejs gettext device-mapper-persistent-data lvm2 bzip2 python3-pip

Salida de muestra

Paso 3) Instalar Docker CE en CentOS 8

RedHat / CentOS ya no admite la instalación directa de docker, por lo que si ejecuta dnf install docker-ce, se encontrará con un error. Para instalar Docker en CentOS 8, necesitamos agregar el repositorio de Docker al sistema usando la herramienta de administrador de configuración dnf.

[[email protected] ~]# dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo

El siguiente paso es instalar Docker, ejecute el comando:

[[email protected] ~]# dnf install docker-ce-3:18.09.1-3.el7

Ahora, ejecute el siguiente comando para saber qué versión exacta de Docker tenemos instalada.

[[email protected] ~]# rpm -qa | grep docker
or
[[email protected] ~]# docker --version

Ahora, proceda a iniciar y habilite la ventana acoplable usando los comandos

[[email protected] ~]# systemctl start docker
[[email protected] ~]# systemctl enable --now docker.service

Con Docker instalado, ahora podemos proceder a instalar Docker compose.

Nota: Ejecute el siguiente comando para configurar el comando python para usar python 3 porque en CentOS 8 y RHEL8, python 3 se instala como dependencia cuando instalamos ansible

[[email protected] ~]# alternatives --set python /usr/bin/python3

Paso 4) Instalar Docker-Compose en CentOS 8

Para la instalación de docker-compose, usaremos el comando pip. Pip es el administrador de paquetes de Python que le permite instalar paquetes de Python.

Para instalar, vamos a usar pip3 ya que el sistema se ejecuta usando python3

[[email protected] ~]# pip3 install docker-compose

¡Estupendo! ahora podemos proceder a instalar AWX.

Paso 5) Instale Ansible AWX

Para instalar AWX, primero clone el repositorio Git como se muestra:

[[email protected] ~]# git clone https://github.com/ansible/awx.git

A continuación, vaya al directorio  awx/installer y localice el archivo de inventario. Necesitamos ajustar algunos parámetros:

Nota: No olvide configurar el intérprete de python predeterminado en python3

[[email protected] ~]# cd awx/installer/
[[email protected] installer]# vi inventory

localhost ansible_connection=local ansible_python_interpreter="/usr/bin/env python3"
postgres_data_dir=/var/lib/pgdocker
awx_official=true
project_data_dir=/var/lib/awx/projects
awx_alternate_dns_servers="4.2.2.1,4.2.2.2"

Igualmente crucial es la necesidad de configurar la contraseña de Admin y Postgres

[email protected]
[email protected]

A partir de entonces, asegúrese de generar una clave criptográfica para cifrar el archivo de inventario

[[email protected] ~]# openssl rand -base64 30

Copie la clave secreta y agréguela a la entrada secret_key de la siguiente manera en el archivo de inventario,

secret_key=SGYsSWciI5yRDQeZuEm5wW98pQeJMG+ACABPsGfC

Guarde y salga del archivo de inventario.

Para confirmar e imprimir los cambios realizados, ejecute el comando:

[[email protected] installer]# grep -v '^#' inventory | grep -v '^$'

Para instalar AWX, ejecute el comando Ansible:

[[email protected] installer]# ansible-playbook -i inventory install.yml

Docker tarda entre 4 y 5 minutos en ejecutar los contenedores necesarios y construir contenedores, ¡así que relájese y disfrute de su taza de té! El resultado a continuación será una confirmación de que todo salió perfectamente bien.

Una vez finalizada la instalación, puede verificar los contenedores que se inician a través de docker-compose

[[email protected] installer]# docker ps

En caso de que el firewall del sistema operativo esté habilitado y en ejecución, permita el puerto http (80) y https (443) usando los siguientes comandos,

[[email protected] installer]# firewall-cmd --zone=public --add-masquerade --permanent
[[email protected] installer]# firewall-cmd --permanent --add-service=http
[[email protected] installer]# firewall-cmd --permanent --add-service=https
[[email protected] installer]# firewall-cmd --reload

Paso 5) Acceso al portal de GUI de AWX

Para acceder a la consola web de AWX, abra su navegador, escriba la IP del servidor AWX de Ansible y presione ENTER.

http://awx-server-ip-address

Proporcione el nombre de usuario y la contraseña para Admin y presione ENTER. A partir de entonces, se mostrará el tablero de AWX como se muestra:

Y así es como instala AWX con docker-compose en un servidor CentOS 8.


Cent OS
  1. Cómo instalar Docker Compose en CentOS 7

  2. Cómo instalar Docker en CentOS 8

  3. Cómo instalar Docker en CentOS 7 / RHEL 7

  4. Cómo instalar Ansible en CentOS 7

  5. Cómo instalar Ansible en CentOS 8

Cómo instalar Discourse Forum con Docker en CentOS 8

Cómo instalar Docker en CentOS

Cómo instalar y usar Docker Compose en CentOS 8

Cómo instalar Docker en CentOS 7

Cómo instalar y configurar Ansible AWX en Rocky Linux 8.3 y CentOS 8

Cómo instalar Ansible AWX en Debian 10