Come installare Ansible AWX 17.1.0 su Ubuntu 20.04
AWX è un progetto di comunità open source sponsorizzato da Red Hat. Serve come ambiente di sviluppo per Ansible Tower. AWX avrà rilasci frequenti e tutti i nuovi sviluppi.
Ansible AWX fornisce un’interfaccia utente basata sul Web per gestire host Ansible, playbook, moduli, pianificazione dei processi, automazione del flusso di lavoro, condivisione delle credenziali e strumenti per abilitare la delega.
In questo tutorial, passiamo attraverso installazione Il processo di Ansible AWX Su Ubuntu 20.04.
Prerequisiti
- accesso root o utente con privilegi sudo per la connessione SSH.
- Ubuntu 20.04 o 18.04
- Minimo RAM da 4GB
- Minimo 2 vcpu
- Minimo 20GB spazio di archiviazione gratuito
Per funzionare correttamente, Ansible AWX dovrà anche aver installato:
- Ansible
- Docker e Docker compongono
- Nodo e NPM
1. Installa Ansible su Ubuntu 20.04
Il primo sistema di aggiornamento
$ sudo apt update
Per installare Ansible, digitare:
$ sudo apt install ansible -y
Per verificare la versione di Ansible installata, eseguire il comando:
$ ansible --version
Produzione:
ansible 2.9.6
config file = /etc/ansible/ansible.cfg
configured module search path = ['/home/linoxide/.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]
Il file di configurazione principale è memorizzato nel file /etc/ansible/host file.
2. Installare Docker e Docker Compose
Per una corretta installazione e configurazione di Docker, vedere Come installare Docker su Ubuntu 20.04
Dopo aver installato Docker, controlla la versione:
$ docker version
Produzione:
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
Per installare Docker Compose, vedere Come installare Docker Compose su Ubuntu 20.04.
Dopo aver installato Docker Compose, controlla la versione:
$ docker-compose version
Produzione:
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. Installare Node e NPM
Successivamente, installa Node.js
$ sudo apt install -y nodejs npm
e installa anche NPM
$ sudo npm install npm --global
4. Installa Ansible AWX su Ubuntu 20.04
Dopo aver eseguito le installazioni precedenti, è il momento di installare Ansible AWX.
Installazione docker-python modulo con il seguente comando:
$ sudo apt install python3-pip git pwgen vim
Installazione applicazione che consente l’invio di richieste HTTP/1.1:
$ sudo pip3 install requests==2.22.0
Avremo anche bisogno di un modulo docker-compose per Python che corrisponda alla versione installata di Docker Compose.
$ docker-compose version
Produzione:
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
Controlla la versione di docker-compose (la mia è 1.29.2) e installa i moduli con il seguente comando.
$ sudo pip3 install docker-compose==1.29.2
Dopo aver installato i moduli pi scaricheremo l’ultimo file zip AWX da Git Hub con il seguente comando.
$ wget https://github.com/ansible/awx/archive/17.1.0.zip
Decomprimere la directory scaricata:
$ unzip 17.1.0.zip
E cambia la directory in awx-17.1.0/installer/
$ cd awx-17.1.0/installer/
Genera la chiave segreta o genera una password casuale per AWX con il seguente comando:
$ pwgen -N 1 -s 30
Produzione:
6YJ0TM4MsmpKIrNCqEVA1i4TAa3zbG
Allora trovane uno inventario file e aprilo con il tuo editor preferito:
$ sudo nano inventory
Cerca di mantenere le seguenti impostazioni:
NOTA: sostituire chiave segreta con quello che abbiamo appena generato:
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
Dopo aver abbinato questa configurazione alla tua, è il momento di eseguire il playbook con il seguente comando:
$ ansible-playbook -i inventory install.yml
installa.yml – è il nome del file del playbook
loro dice ad ansible di utilizzare il file di inventario
Uscita installatore:
Verifica che tutto funzioni correttamente senza attività non riuscite.
Dopo aver installato ansible-playbook, controlla i contenitori docker per ottenere un elenco dei contenitori in esecuzione:
$ docker ps
Produzione:
Come puoi vedere, uno script ansible crea e avvia 4 contenitori docker:
- awx_task
- awx_web
- awx_redis
- awx_postgres
Per noi è il più importante awx_web correre sul porto 80.
È possibile accedere all’interfaccia utente Web di Ansible AWX tramite ospite o Nome host sul porto 80.
Accedi con le credenziali precedentemente definite nel file inventario file.
Dopo aver effettuato l’accesso, verrà visualizzata la dashboard principale. Da lì puoi iniziare a gestire Ansible AWX e goderti la panoramica del dashboard.
Conclusione
In questo tutorial, abbiamo imparato come installare Ansible AWX su Ubuntu 20.04 utilizzando ansible-playbook con contenitori Docker.