Ansible ist ein Open-Source-Automatisierungstool, das für die Softwarebereitstellung, das Konfigurationsmanagement und die Anwendungsbereitstellung verwendet wird. Damit können Sie Anwendungen automatisch auf mehreren Systemen installieren, konfigurieren und bereitstellen.
AWX ist eine webbasierte Anwendung zur Steuerung von Ansible. Sie können Ansible Playbooks, Inventare, Secrets und geplante Jobs über eine AWX-Weboberfläche verwalten.
Funktionen
- Unterstützung mehrerer Clouds wie AWS, Azure und GCP
- Verfolgung der Benutzeraktivität
- Effizienz und Sicherheit steigern
- Rollenbasierte Zugriffskontrolle von Benutzern und Authentifizierung
- Auftragsplanung
- Integrierte Benachrichtigungen
In diesem Beitrag zeigen wir Ihnen, wie Sie AWX auf einem Debian 10-Server installieren.
Voraussetzungen
- Ein Server mit Debian 10.
- Ein Root-Passwort wird auf dem Server konfiguriert.
Erste Schritte
Aktualisieren Sie zunächst alle Systempakete mit dem folgenden Befehl auf die neueste Version:
apt-get update -y
Sobald alle Pakete aktualisiert sind, installieren Sie andere erforderliche Pakete mit dem folgenden Befehl:
apt-get install apt-transport-https ca-certificates software-properties-common unzip gnupg2 curl git -y
Nachdem Sie alle Pakete installiert haben, können Sie mit dem nächsten Schritt fortfahren.
Installieren Sie Ansible
Als nächstes müssen Sie Ansible in Ihrem System installieren. Standardmäßig ist die neueste Version von Ansible nicht im Debian 10-Repository enthalten. Sie müssen also das Ansible-Repository zu APT hinzufügen. Sie können es mit dem folgenden Befehl hinzufügen:
echo "deb http://ppa.launchpad.net/ansible/ansible/ubuntu bionic main" | tee /etc/apt/sources.list.d/ansible.list
Sobald das Repository hinzugefügt wurde, fügen Sie den GPG-Schlüssel mit dem folgenden Befehl hinzu:
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 93C4A3FD7BB9C367
Aktualisieren Sie als Nächstes das Repository und installieren Sie die neueste Version von Ansible mit dem folgenden Befehl:
apt-get update -y
apt-get install ansible -y
Sobald Ansible installiert ist, können Sie die installierte Version von Ansible mit dem folgenden Befehl überprüfen:
ansible --version
Sie sollten die folgende Ausgabe erhalten:
ansible 2.9.19 config file = /etc/ansible/ansible.cfg configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules'] ansible python module location = /usr/lib/python2.7/dist-packages/ansible executable location = /usr/bin/ansible python version = 2.7.16 (default, Oct 10 2019, 22:02:15) [GCC 8.3.0]
An diesem Punkt ist Ansible in Ihrem System installiert. Sie können jetzt mit dem nächsten Schritt fortfahren.
Installieren Sie Docker und Docker Compose
Als nächstes müssen Sie Docker und Docker Compose auf Ihrem System installieren. Standardmäßig ist die neueste Version von Docker nicht im Standard-Repository von Debian 10 verfügbar. Sie müssen also das Docker CE-Repository zu Ihrem System hinzufügen. Fügen Sie zuerst den Docker-Schlüssel und das Repository mit dem folgenden Befehl hinzu:
curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add -
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"
Aktualisieren Sie als Nächstes das Repository und installieren Sie Docker CE mit dem folgenden Befehl:
apt-get update -y
apt-get install docker-ce -y
Überprüfen Sie nach der Installation von Docker die Docker-Version mit dem folgenden Befehl:
docker --version
Sie sollten die folgende Ausgabe sehen:
Docker version 20.10.5, build 55c4c88
Als nächstes müssen Sie die neueste Version von Docker Compose auf Ihrem System installieren. Sie können die Docker Compose-Binärdatei mit dem folgenden Befehl herunterladen:
curl -s https://api.github.com/repos/docker/compose/releases/latest | grep browser_download_url | grep docker-compose-Linux-x86_64 | cut -d '"' -f 4 | wget -qi -
Sobald der Download abgeschlossen ist, legen Sie mit dem folgenden Befehl die richtige Berechtigung fest:
chmod +x docker-compose-Linux-x86_64
Verschieben Sie als Nächstes die Docker Compose-Binärdatei mit dem folgenden Befehl in den Systempfad:
mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose
Überprüfen Sie als Nächstes die Docker Compose-Version mit dem folgenden Befehl:
docker-compose version
Sie sollten die folgende Ausgabe erhalten:
docker-compose version 1.28.5, build c4eb3a1f docker-py version: 4.4.4 CPython version: 3.7.10 OpenSSL version: OpenSSL 1.1.0l 10 Sep 2019
Zu diesem Zeitpunkt sind Docker und Docker Compose in Ihrem System installiert. Sie können jetzt mit dem nächsten Schritt fortfahren.
Installieren Sie Node.js und NPM
Als nächstes müssen Sie Node.js und NPM in Ihrem System installieren. Sie können Node.js und NPM mit dem folgenden Befehl installieren:
apt-get install nodejs npm -y
npm install npm --global
Als nächstes installieren Sie andere Python-Abhängigkeiten mit dem folgenden Befehl:
apt-get install python3-pip git pwgen -y
Installieren Sie als Nächstes das Docker Compose-Modul, das Ihrer Docker Compose-Version entspricht, mit dem folgenden Befehl:
pip3 install docker-compose==1.28.5
Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.
Hinweis :Stellen Sie sicher, dass 1.28.5 mit der auf Ihrem System installierten Docker Compose-Version übereinstimmt.
AWX installieren
Als nächstes müssen Sie AWX auf Ihrem System installieren. Laden Sie zunächst AWX mit dem folgenden Befehl aus dem Git Hub-Repository herunter:
wget https://github.com/ansible/awx/archive/17.1.0.zip
Sobald der Download abgeschlossen ist, entpacken Sie die heruntergeladene Datei mit dem folgenden Befehl:
unzip 17.1.0.zip
Als nächstes ändern Sie das Verzeichnis mit dem folgenden Befehl in installer:
cd awx-17.1.0/installer/
Generieren Sie als Nächstes den geheimen Schlüssel, indem Sie den folgenden Befehl ausführen:
pwgen -N 1 -s 30
Sie sollten die folgende Ausgabe erhalten:
3BgGA8MnM4gKTXV8r7vQhwjjNixO6o
Bearbeiten Sie als Nächstes die Bestandsdatei und definieren Sie Ihren Admin-Benutzernamen, Ihr Passwort und Ihren geheimen Schlüssel:
nano inventory
Ändern Sie die folgenden Zeilen:
admin_user=admin admin_password=securepassword secret_key=3BgGA8MnM4gKTXV8r7vQhwjjNixO6o
Speichern und schließen Sie die Datei, wenn Sie fertig sind, und installieren Sie dann AWX, indem Sie den folgenden Befehl ausführen:
ansible-playbook -i inventory install.yml
Sobald AWX erfolgreich installiert wurde, sollten Sie die folgende Ausgabe erhalten:
changed: [localhost] TASK [local_docker : Create Docker Compose Configuration] ************************************************************************************* changed: [localhost] => (item={u'mode': u'0600', u'file': u'environment.sh'}) changed: [localhost] => (item={u'mode': u'0600', u'file': u'credentials.py'}) changed: [localhost] => (item={u'mode': u'0600', u'file': u'docker-compose.yml'}) changed: [localhost] => (item={u'mode': u'0600', u'file': u'nginx.conf'}) changed: [localhost] => (item={u'mode': u'0664', u'file': u'redis.conf'}) TASK [local_docker : Render SECRET_KEY file] ************************************************************************************************** changed: [localhost] TASK [local_docker : Remove AWX containers before migrating postgres so that the old postgres container does not get used] ******************** ok: [localhost] TASK [local_docker : Run migrations in task container] **************************************************************************************** changed: [localhost] TASK [local_docker : Start the containers] **************************************************************************************************** changed: [localhost] TASK [local_docker : Update CA trust in awx_web container] ************************************************************************************ changed: [localhost] TASK [local_docker : Update CA trust in awx_task container] *********************************************************************************** changed: [localhost] TASK [local_docker : Wait for launch script to create user] *********************************************************************************** ok: [localhost] TASK [local_docker : Create Preload data] ***************************************************************************************************** changed: [localhost] PLAY RECAP ************************************************************************************************************************************ localhost : ok=21 changed=12 unreachable=0 failed=0 skipped=73 rescued=0 ignored=1
An diesem Punkt ist AWX in Ihrem System installiert. Sie können nun mit dem Zugriff auf die AWX-Webbenutzeroberfläche fortfahren.
Zugriff auf Ansible AWX
Öffnen Sie nun Ihren Webbrowser und greifen Sie über die URL http://your-server-ip auf die Ansible AWX-Weboberfläche zu . Sie werden zur AWX-Anmeldeseite weitergeleitet:
Geben Sie Ihren Admin-Benutzernamen und Ihr Passwort ein und klicken Sie auf Protokoll Ein Taste. Sie sollten das Ansible AWX-Dashboard auf der folgenden Seite sehen:
Schlussfolgerung
Herzliche Glückwünsche! Sie haben Ansible AWX erfolgreich auf dem Debian 10-Server installiert. Sie können das Ansible-Playbook, Inventar und Jobs jetzt ganz einfach über das AWX-Dashboard verwalten. Fühlen Sie sich frei, mich zu fragen, wenn Sie irgendwelche Fragen haben.