Cómo instalar Ansible AWX 17.1.0 en Ubuntu 20.04 | Ubuntu 20.10
AWX es un proyecto comunitario de código abierto patrocinado por Red Hat. Sirve como entorno de desarrollo para Ansible Tower. AWX tendrá lanzamientos frecuentes y todos los desarrollos nuevos.
Ansible AWX proporciona una interfaz de usuario basada en web para administrar hosts, playbooks, módulos, programación de trabajos, automatización de flujos de trabajo, uso compartido de credenciales y herramientas de Ansible para habilitar la delegación.
En este tutorial, veremos el proceso de instalación de Ansible AWX en Ubuntu 20.04 .
requisitos previos
- acceso root, o usuario con privilegios sudo para conexión SSH.
- Ubuntu 20.04 o 18.04
- Mínimo 4GB ram
- Mínimo 2vcpus
- Mínimo 20 GB de espacio de almacenamiento gratuito
Con el fin de poner en marcha Ansible AWX con éxito, también deberá tener instalado:
- Ansible
- Docker y Docker componen
- Nodo y NPM
1. Instale Ansible en Ubuntu 20.04
Primer sistema de actualización
$ sudo apt update
Para instalar Ansible , escriba:
$ sudo apt install ansible -y
Para verificar la versión de Ansible instalada, ejecute el comando:
$ ansible --version
Producción:
ansible 2.9.6
config file = /etc/ansible/ansible.cfg
configured module search path = ['/home/computerfreaks/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python3/dist-packages/ansible
executable location = /usr/bin/ansible
python version = 3.8.5 (default, Jan 27 2021, 15:41:15) [GCC 9.3.0]
El archivo de configuración principal se almacena en el archivo /etc/ansible/hosts .
2. Instalar Docker y Docker Compose
Para una instalación y configuración exitosas de Docker, consulte Cómo instalar Docker en Ubuntu 20.04
Después de la instalación de Docker, verifique la versión:
$ docker version
Producción:
Client: Docker Engine - Community
Version: 20.10.6
API version: 1.41
Go version: go1.13.15
Git commit: 370c289
Built: Fri Apr 9 22:47:17 2021
OS/Arch: linux/amd64
Context: default
Experimental: true
Server: Docker Engine - Community
Engine:
Version: 20.10.6
API version: 1.41 (minimum version 1.12)
Go version: go1.13.15
Git commit: 8728dd2
Built: Fri Apr 9 22:45:28 2021
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.4.4
GitCommit: 05f951a3781f4f2c1911b05e61c160e9c30eaa8e
runc:
Version: 1.0.0-rc93
GitCommit: 12644e614e25b05da6fd08a38ffa0cfe1903fdec
docker-init:
Version: 0.19.0
GitCommit: de40ad0
Para la instalación de Docker Compose, consulte Cómo instalar Docker Compose en Ubuntu 20.04 .
Después de la instalación de Docker Compose, verifique la versión:
$ docker-compose version
Producción:
docker-compose version 1.29.2, build 5becea4c
docker-py version: 5.0.0 CPython version: 3.7.10 OpenSSL version: OpenSSL 1.1.0l 10 Sep 2019
3. Instalar Nodo y NPM
A continuación, instale Node.js
$ sudo apt install -y nodejs npm
y también Instalar NPM
$ sudo npm install npm --global
4. Instale Ansible AWX en Ubuntu 20.04
Una vez que hayamos realizado las instalaciones anteriores, es hora de instalar Ansible AWX.
Instale el módulo python docker-py con el siguiente comando:
$ sudo apt install python3-pip git pwgen vim
Solicitud de instalación que permite enviar solicitudes HTTP/1.1:
$ sudo pip3 install requests==2.22.0
Además, necesitaremos un módulo docker-compose para python, que coincida con la versión instalada de Docker Compose.
$ docker-compose version
Producción:
docker-compose version 1.29.2, build 5becea4c
docker-py version: 5.0.0 CPython version: 3.7.10 OpenSSL version: OpenSSL 1.1.0l 10 Sep 2019
Verifique la versión de docker-compose (mi versión es 1.29.2) e instale los módulos con el siguiente comando.
$ sudo pip3 install docker-compose==1.29.2
Después de instalar los módulos pi, vamos a descargar el último archivo zip AWX de GitHub con el siguiente comando.
$ wget https://github.com/ansible/awx/archive/17.1.0.zip
Descomprimir el directorio descargado:
$ unzip 17.1.0.zip
Y cambie el directorio a awx-17.1.0/installer/
$ cd awx-17.1.0/installer/
Genere una clave secreta o genere una contraseña aleatoria para AWX con el siguiente comando:
$ pwgen -N 1 -s 30
Producción:
6YJ0TM4MsmpKIrNCqEVA1i4TAa3zbG
A continuación, busque un archivo de inventario y ábralo con el editor favorito:
$ sudo nano inventory
Trate de mantener las siguientes configuraciones:
NOTA: reemplace la clave secreta con la que acabamos de generar:
dockerhub_base=ansible
awx_task_hostname=awx
awx_web_hostname=awxweb
postgres_data_dir=/tmp/pgdocker
host_port=80
host_port_ssl=443
docker_compose_dir=/tmp/awxcompose
pg_username=awx
pg_password=awxpass
pg_database=awx
pg_port=5432
admin_user=admin
admin_password=password
create_preload_data=True
secret_key=
6YJ0TM4MsmpKIrNCqEVA1i4TAa3zbG
Después de hacer coincidir esta configuración con la suya, es hora de ejecutar el libro de jugadas con el siguiente comando:
$ ansible-playbook -i inventory install.yml
install.yml – es el nombre del archivo del libro de jugadas
-i le dice a ansible que use el archivo de inventario
Salida de instalación:
Verifica que todo vaya bien, sin tareas fallidas.
Después de la instalación de ansible-playbook, verifique los contenedores acoplables para obtener una lista de los contenedores en ejecución:
$ docker ps
Producción:
Como puede ver, un script ansible crea e inicia 4 docker-containers:
- awx_tarea
- awx_web
- awx_redis
- awx_postgres
Para nosotros es más importante awx_web que se ejecuta en el puerto 80 .
Puede acceder a Ansible AWX Web-UI a través de hostip o nombre de host en el puerto 80 .
Inicie sesión con las credenciales que definió previamente en el archivo de inventario .
Después de iniciar sesión verá el panel principal. Desde allí, puede comenzar a administrar Ansible AWX y disfrutar de la descripción general del panel.
Conclusión
En este tutorial, aprendimos a instalar Ansible AWX en Ubuntu 20.04 usando ansible-playbook con contenedores Docker.