So installieren Sie Ansible AWX 17.1.0 unter Ubuntu 20.04

AWX ist ein von Red Hat gesponsertes Open-Source-Community-Projekt. Es dient als Entwicklungsumgebung für den Ansible Tower. AWX wird häufig veröffentlicht und enthält alle Neuentwicklungen.

Ansible AWX bietet eine webbasierte Benutzeroberfläche zum Verwalten von Ansible-Hosts, Playbooks, Modulen, Auftragsplanung, Workflow-Automatisierung, gemeinsame Nutzung von Anmeldeinformationen und Tools zum Ermöglichen der Delegierung.

In diesem Tutorial gehen wir durch die Installation Prozess von Ansible AWX an Ubuntu 20.04.

Voraussetzungen

  • Root-Zugriff oder Benutzer mit sudo Berechtigungen für die SSH-Verbindung.
  • Ubuntu 20.04 oder 18.04
  • Minimum 4 GB Arbeitsspeicher
  • Minimum 2vcpus
  • Minimum 20 GB kostenloser Speicherplatz

Für eine erfolgreiche Inbetriebnahme muss Ansible AWX außerdem installiert sein:

  • Ansible
  • Docker und Docker komponieren
  • Knoten und NPM

1. Installieren Sie Ansible auf Ubuntu 20.04

Erstes Update-System

$ sudo apt update

Geben Sie Folgendes ein, um Ansible zu installieren:

$ sudo apt install ansible -y

Um die Version von installiertem Ansible zu überprüfen, führen Sie den folgenden Befehl aus:

$ ansible --version

Ausgabe:

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]

Die Hauptkonfigurationsdatei wird gespeichert in /etc/ansible/hosts Datei.

2. Installieren Sie Docker und Docker Compose

Eine erfolgreiche Installation und Konfiguration von Docker finden Sie unter How to Install Docker On Ubuntu 20.04

Überprüfen Sie nach der Docker-Installation die Version:

$ docker version

Ausgabe:

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

Informationen zur Installation von Docker Compose finden Sie unter So installieren Sie Docker Compose auf Ubuntu 20.04.

Überprüfen Sie nach der Installation von Docker Compose die Version:

$ docker-compose version

Ausgabe:

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. Installieren Sie Node und NPM

Als nächstes installieren Sie Node.js

$ sudo apt install -y nodejs npm

und auch NPM installieren

$ sudo npm install npm --global

4. Installieren Sie Ansible AWX auf Ubuntu 20.04

Nachdem wir die vorherigen Installationen durchgegangen sind, ist es an der Zeit, Ansible AWX zu installieren.

Installieren docker-py python Modul mit folgendem Befehl:

$ sudo apt install python3-pip git pwgen vim

Installieren Anfrage die das Senden von HTTP/1.1-Anfragen ermöglicht:

$ sudo pip3 install requests==2.22.0

Außerdem benötigen wir ein Docker-Compose-Modul für Python, das zu Ihrer installierten Docker Compose-Version passt.

$ docker-compose version

Ausgabe:

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

Überprüfen Sie die Docker-Compose-Version (meine ist 1.29.2) und installieren Sie Module mit dem folgenden Befehl.

$ sudo pip3 install docker-compose==1.29.2

Nach der Installation von pi-Modulen werden wir die neueste AWX-Zip-Datei herunterladen von GitHub mit folgendem Befehl.

$ wget https://github.com/ansible/awx/archive/17.1.0.zip

Heruntergeladenes Verzeichnis entpacken:

$ unzip 17.1.0.zip

Und ändere das Verzeichnis zu awx-17.1.0 / Installer /

$ cd awx-17.1.0/installer/

Generieren Sie einen geheimen Schlüssel oder generieren Sie ein zufälliges Passwort für AWX mit dem folgenden Befehl:

$ pwgen -N 1 -s 30

Ausgabe:

6YJ0TM4MsmpKIrNCqEVA1i4TAa3zbG

Suchen Sie als Nächstes nach a Inventar Datei und öffnen Sie sie mit dem bevorzugten Editor:

$ sudo nano inventory

Versuchen Sie, die folgenden Einstellungen beizubehalten:

HINWEIS: ersetzen geheimer Schlüssel mit dem gerade generierten:

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

Nachdem Sie diese Konfiguration mit Ihrer abgeglichen haben, ist es an der Zeit, das Playbook mit dem folgenden Befehl auszuführen:

$ ansible-playbook -i inventory install.yml

install.yml – ist der Name der Playbook-Datei

-ich weist ansible an, die Inventardatei zu verwenden

Installationsausgabe:

ansible-playbook install.yml

Stellen Sie sicher, dass alles gut läuft, ohne fehlgeschlagene Aufgaben.

Überprüfen Sie nach der Installation von ansible-playbook die Docker-Container, um eine Liste der ausgeführten Container zu erhalten:

$ docker ps

Ausgabe:

Docker-Container-Liste

Wie Sie sehen, erstellt und startet ein Ansible-Skript 4 Docker-Container:

  • awx_task
  • awx_web
  • awx_redis
  • awx_postgres

Für uns ist das Wichtigste awx_web was auf port läuft 80.

Sie können auf Ansible AWX Web-UI zugreifen über hostip oder Hostname am Hafen 80.

Ansible AWX-Anmeldeseite

Melden Sie sich mit den zuvor in . definierten Anmeldedaten an Inventar Datei.

Ansible AWX-Dashboard

Nach der Anmeldung wird das Haupt-Dashboard angezeigt. Von dort aus können Sie mit der Verwaltung von Ansible AWX beginnen und die Dashboard-Übersicht genießen.

Fazit

In diesem Tutorial haben wir gelernt, wie man Ansible AWX unter Ubuntu 20.04 mit ansible-playbook mit Docker-Containern installiert.