GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So installieren Sie Ansible AWX unter CentOS 8

AWX steht für „Ansible Web eXecutable“ und ist ein kostenloses Open-Source-Projekt, mit dem Sie Ihr Ansible-Projekt einfach verwalten und steuern können. Es bietet eine webbasierte Benutzeroberfläche und eine Task-Engine, die auf Ansible aufbauen. Es bietet eine leistungsstarke REST-API und ermöglicht es Ihnen, Inventar mit anderen Cloud-Quellen zu verwalten oder zu synchronisieren, den Zugriff zu steuern und mit LDAP zu integrieren.

In diesem Tutorial zeigen wir Ihnen, wie Sie Ansible AWX mit Docker unter CentOS 8 installieren.

Voraussetzungen

  • Ein Server mit CentOS 8 und mindestens 4 GB RAM.
  • Auf Ihrem Server ist ein Root-Passwort konfiguriert.

Erste Schritte

Bevor Sie beginnen, müssen Sie das EPEL-Repository in Ihrem System installieren. Sie können es mit dem folgenden Befehl installieren:

dnf install epel-release -y

Als Nächstes müssen Sie einige zusätzliche Pakete installieren, die zum Ausführen von AWX auf Ihrem System erforderlich sind. Sie können alle mit dem folgenden Befehl installieren:

dnf install git gcc gcc-c++ ansible nodejs gettext device-mapper-persistent-data lvm2 bzip2 python3-pip -y

Sobald alle Pakete installiert sind, können Sie mit dem nächsten Schritt fortfahren.

Installieren Sie Docker und Docker Compose

Als Nächstes müssen Sie Docker installieren, um AWX im Docker-Container auszuführen. Standardmäßig ist die neueste Version von Docker nicht im Standard-Repository von CentOS 8 verfügbar. Sie müssen also das Docker-Repository in Ihrem System hinzufügen. Sie können das Docker-Repository mit dem folgenden Befehl hinzufügen:

dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo

Installieren Sie nach dem Hinzufügen die neueste stabile Version von Docker mit dem folgenden Befehl:

dnf install docker-ce-3:18.09.1-3.el7 -y

Überprüfen Sie nach der Installation von Docker die installierte Version von Docker mit dem folgenden Befehl:

docker --version

Sie sollten die folgende Ausgabe erhalten:

Docker-Version 19.03.7, Build 7141c199a2

Starten Sie als Nächstes den Docker-Dienst und aktivieren Sie ihn nach dem Systemneustart mit dem folgenden Befehl:

systemctl docker starten
systemctl docker aktivieren

Sie können den Status des Docker-Dienstes mit dem folgenden Befehl überprüfen:

Systemctl-Status-Docker

Sie sollten die folgende Ausgabe erhalten:

? docker.service – Docker Application Container Engine Geladen:geladen (/usr/lib/systemd/system/docker.service; deaktiviert; Herstellervoreinstellung:deaktiviert) Aktiv:aktiv (läuft) seit Mi 2020-03-11 02:36:04 SOMMERZEIT; Vor 23 Minuten Dokumente:https://docs.docker.com Haupt-PID:5882 (dockerd) Aufgaben:101 Arbeitsspeicher:2,6 GB CGroup:/system.slice/docker.service ??5882 /usr/bin/dockerd -H fd:// ??5899 containerd --config /var/run/docker/containerd/containerd.toml --log-level info ??8815 containerd-shim -namespace moby -workdir /var/lib/docker/containerd/daemon/io .containerd.runtime.v1.linux/moby/4b91575d64b1b> ??8847 containerd-shim -namespace moby -workdir /var/lib/docker/containerd/daemon/io.containerd.runtime.v1.linux/moby/0f36c9784f748> ? ?8894 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 80 -container-ip 172.18.0.5 -container-port 8052 ??8899 containerd-shim -namespace moby -workdir /var /lib/docker/containerd/daemon/io.containerd.runtime.v1.linux/moby/47300ec1c26ff> ??8923 containerd-shim -namespace moby -workdir /var/lib/docker/containerd/daemon/io.containerd.runtime .v1.linux/moby/9827b9831fa5b>??9631 enthalten erd-shim -namespace moby -workdir /var/lib/docker/containerd/daemon/io.containerd.runtime.v1.linux/moby/166b153faa275>

Als nächstes installieren Sie Docker Compose mit dem folgenden Befehl:

pip3 install docker-compose

Überprüfen Sie nach der Installation die Docker-Compose-Version mit dem folgenden Befehl:

docker-compose --version

Sie sollten die folgende Ausgabe sehen:

docker-compose Version 1.25.4, Build unbekannt

Führen Sie abschließend den folgenden Befehl aus, um den Python-Befehl für die Verwendung von Python 3 festzulegen:

alternatives --set python /usr/bin/python3

Installieren Sie Ansible AWX

Laden Sie zunächst mit dem folgenden Befehl die neueste Version von Ansible AWX aus dem Git Hub-Repository herunter:

git-Klon https://github.com/ansible/awx.git

Als nächstes generieren Sie einen geheimen Schlüssel zur Verschlüsselung der Inventardatei mit dem folgenden Befehl:

openssl rand -base64 30

Sie sollten die folgende Ausgabe erhalten:

R+kbcDEUS8DlAftAbfWafVqLZ0lUy+Paqo4fEtgp

Hinweis:Denken Sie an die oben genannten Geheimnisse, Sie müssen sie in die Inventardatei einfügen.

Wechseln Sie als Nächstes in das Verzeichnis awx/installer/ und bearbeiten Sie die Inventardatei:

cd awx/installer/
nano Inventory

Ändern Sie die folgenden Zeilen:

[all:vars]dockerhub_base=ansibleawx_task_hostname=awxawx_web_hostname=awxwebpostgres_data_dir="/var/lib/pgdocker"host_port=80host_port_ssl=443docker_compose_dir="~/.awx/awxcompose"pg_username=awxpg_password=awxpasspg_database=awxpg_password=awxpasspg_database=awxpg_port=54password_password=awxpg_port=54password_password=awxpg_port=54 awxpassrabbitmq_erlang_cookie=cookiemonsteradmin_user=adminadmin_password=passwordcreate_preload_data=Truesecret_key=R+kbcDEUS8DlAftAbfWafVqLZ0lUy+Paqo4fEtgpawx_official=trueawx_alternate_dns_servers="8.8.8.8,8.8.4.4"project_data_dir>/project/lib/preawx 

Speichern und schließen Sie die Datei, wenn Sie fertig sind. Erstellen Sie dann ein Verzeichnis für Postgres:

mkdir /var/lib/pgdocker

Führen Sie abschließend den folgenden Befehl aus, um AWX zu installieren:

ansible-playbook -i Inventory install.yml

Nach erfolgreicher Installation sollten Sie folgende Ausgabe erhalten:

Überspringen:[localhost]TASK [local_docker :Webbild laden] ********************************** ****************************************************** **********************Überspringen:[localhost]TASK [local_docker :Task-Image laden] **************** ****************************************************** ****************************************Überspringen:[localhost]TASK [local_docker :Set vollständiger Image-Pfad für lokale Installation] ***************************************** ****************************************Überspringen:[localhost]TASK [local_docker :Set DockerHub-Bildpfade] ********************************************* *************************************************Ok :[localhost]TASK [local_docker :Verzeichnis ~/.awx/awxcompose erstellen] ********************************* ****************************************************** ***geändert:[localhost]TASK [local_docker:Docker-Compose-Konfiguration erstellen] ********************************* ****************************************************** **geändert:[localhos t] => (item=environment.sh)geändert:[localhost] => (item=credentials.py)geändert:[localhost] => (item=docker-compose.yml)geändert:[localhost] => (item =nginx.conf)TASK [local_docker:SECRET_KEY-Datei rendern] ************************************* ****************************************************** **********geändert:[localhost]TASK [local_docker :Container starten] ************************* ****************************************************** ************************geändert:[localhost]TASK [local_docker:CA-Vertrauen in awx_web-Container aktualisieren] ********** ****************************************************** ************************geändert:[localhost]TASK [local_docker:CA-Vertrauen in awx_task-Container aktualisieren] ********** ****************************************************** **********************geändert:[localhost]PLAY RECAP ******************** ****************************************************** ****************************************************** ************localhost :ok=14 ändern d=6 nicht erreichbar=0 fehlgeschlagen=0 übersprungen=95 gerettet=0 ignoriert=0 

Der obige Befehl erstellt und startet alle erforderlichen Docker-Container für AWX. Sie können die laufenden Container mit dem folgenden Befehl überprüfen:

docker-ps

Sie sollten die folgende Ausgabe sehen:

CONTAINER ID IMAGE BEFEHL ERSTELLT STATUS PORTS NAMEN4b91575d64b1 ansible/awx_task:9.2.0 "/tini -- /bin/sh -c…" Vor etwa einer Minute Nach oben Vor etwa einer Minute 8052/tcp awx_task9827b9831fa5 ansible/awx_web:9.2.0 "/tini -- /bin/sh -c…" Vor ungefähr einer Minute Nach oben Vor ungefähr einer Minute 0.0.0.0:80->8052/tcp awx_web47300ec1c26f postgres:10 "docker-entrypoint.s…" Vor ungefähr einer Minute Nach oben Vor ungefähr a Minute 5432/tcp awx_postgres166b153faa27 ansible/awx_rabbitmq:3.7.4 "docker-entrypoint.s…" Vor ungefähr einer Minute Aufwärts 58 Sekunden "docker-entrypoint.s…" Vor ungefähr einer Minute Nach oben Ungefähr a Minute 11211/tcp awx_memcached

Konfigurieren Sie SELinux und die Firewall

Standardmäßig ist SELinux in CentOS 8 aktiviert. Es wird empfohlen, es zu deaktivieren, damit AWX in der Docker-Umgebung funktioniert. Sie können es deaktivieren, indem Sie die folgende Datei bearbeiten:

nano /etc/sysconfig/selinux

Suchen Sie die folgende Zeile:

SELINUX=erzwingen

Und ersetzen Sie es durch die folgende Zeile:

SELINUX=deaktiviert

Speichern und schließen Sie die Datei, wenn Sie fertig sind. Starten Sie dann Ihr System neu, um die Änderungen zu implementieren. Als nächstes müssen Sie den http- und https-Dienst durch die Firewall zulassen. Sie können sie mit dem folgenden Befehl zulassen:

firewall-cmd --zone=public --add-masquerade --permanent
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add- service=https

Als nächstes starten Sie den Firewalld-Dienst neu, um die Änderungen zu übernehmen:

firewall-cmd --reload

Zugriff auf die AWX-Weboberfläche

Öffnen Sie nun Ihren Webbrowser und geben Sie die URL http://your-server-ip ein. Sie werden zur AWX-Anmeldeseite weitergeleitet:

Geben Sie Ihren Admin-Benutzernamen und Ihr Passwort ein, die Sie in der Inventardatei definiert haben, und klicken Sie auf das SIGN IN Taste. Sie sollten das AWX-Standard-Dashboard auf der folgenden Seite sehen:

Schlussfolgerung

Herzliche Glückwünsche! Sie haben AWX erfolgreich mit Docker auf CentOS 8 installiert. Sie können Ihr Ansible-Projekt jetzt einfach über die AWX-Weboberfläche verwalten und steuern.


Cent OS
  1. So installieren Sie Docker unter CentOS 7

  2. So installieren Sie Docker Compose unter CentOS 7

  3. So installieren Sie Docker in CentOS

  4. So installieren Sie Ansible unter CentOS 7

  5. So installieren Sie Ansible unter CentOS 8

So installieren Sie Streama unter CentOS 7

So installieren Sie Ansible AWX unter Debian 10

So installieren Sie Docker unter CentOS

So installieren Sie Docker unter CentOS 7

So installieren und konfigurieren Sie Ansible AWX unter Rocky Linux 8.3 und CentOS 8

So installieren Sie Ansible AWX unter Debian 10