GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So installieren Sie Ansible AWX auf Kubernetes Minikube

Hallo Geeks, ich hoffe, Sie kennen Ansible AWX, wenn nicht, dann ist Ansible AWX ein webbasiertes GUI-Tool zum Verwalten von Ansible Playbooks. Abgesehen von der Ausführung von Ansible-Playbooks gibt es viele andere Funktionen von AWX, z. B. Integration der Quellverwaltung, Protokollierung von RBAC und mehr.

Mit anderen Worten, wir können sagen, dass Ansible AWX als Upstream-Projekt von Red HAT Ansible Tower betrachtet wird. Ab AWX-Version 18.x und höher wird der Installationsfokus von Docker auf Kubernetes verlagert. Daher behandeln wir in diesem Artikel Schritt für Schritt die Installation von Ansible AWX auf Kubernetes Minikube.

Ich gehe davon aus, dass Minikube bereits auf Ihrem Linux-System installiert ist. Wenn nicht, verwenden Sie die folgende URL:

  • So installieren Sie Minikube auf Ubuntu 20.04 LTS / 21.04

Hinweis: Stellen Sie sicher, dass Sie Ihren Minikube-Cluster mit genügend Ressourcen starten (mindestens 4 vCPU und 8 GB RAM). In meinem Fall habe ich Minikube mit den folgenden Ressourcen und Optionen gestartet.

$ minikube start --addons=ingress --cpus=4 --cni=flannel --install-addons=true --kubernetes-version=stable --memory=8g

Überprüfen Sie die Installation des Minikube-Clusters

Führen Sie die folgenden Befehle aus, um die Minikube-Installation und den Clusterstatus zu überprüfen,

$ Minikube-Status$ kubectl-Cluster-Info$ kubectl-Knoten abrufen

Die Ausgabe der obigen Befehle sollte wie folgt aussehen:

Perfekt, oben bestätigt, dass Minikube erfolgreich installiert und gestartet wurde. Kommen wir zu den AWX-Installationsschritten.

Schritt 1) ​​Installieren Sie AWX Operator

Um den AWX-Operator zu installieren, führen Sie den folgenden kubectl-Befehl aus,

$ kubectl apply -f https://raw.githubusercontent.com/ansible/awx-operator/0.12.0/deploy/awx-operator.yaml

Ausgabe

Führen Sie den folgenden Befehl aus, um zu bestätigen, ob der Pod des AWX-Operators gestartet wurde oder nicht. Wenn nicht gestartet, warten Sie einige Minuten, da dies einige Zeit in Anspruch nimmt,

[email protected]:~$ kubectl get podsNAME                           BEREIT   STATUS    NEUSTARTS   AGEawx-operator-79bc95f78-pb7tz   1/1     Läuft   0          5m23s[email  

Schritt 2) YAML-Datei der AWX-Instanz erstellen

Erstellen Sie die Datei ansible-awx.yml mit folgendem Inhalt

$ vi ansible-awx.yml---apiVersion:awx.ansible.com/v1beta1kind:AWXmetadata:  name:ansible-awxspec:  service_type:nodeport  ingress_type:none  hostname:ansible-awx.example.com

Speichern und beenden Sie die Datei.

Schritt 3) Ansible AWX-Instanz bereitstellen

Lassen Sie uns nun die AWX-Instanz in unserem Cluster bereitstellen, indem Sie den folgenden Befehl ausführen:

[E-Mail-geschützt]:~$ kubectl apply -f ansible-awx.ymlawx.awx.ansible.com/ansible-awx erstellt[E-Mail-geschützt]:~$

Oben wird eine Bereitstellung mit dem Namen „ansible-awx“ erstellt und diese Bereitstellung wird zwei Pods und Dienste haben.

Nach einigen Minuten wird Ansible AWX bereitgestellt und falls Sie Installationsprotokolle überwachen möchten, verwenden Sie den folgenden Befehl,

$ kubectl logs -f Deployment/awx-Operator

Führen Sie den folgenden Befehl aus, um den Status von AWX-Pods zu überprüfen,

[email protected]:~$ kubectl get pods -l "app.kubernetes.io/managed-by=awx-operator"NAME                           BEREIT   STATUS    NEUSTARTS   AGEansible-awx-5ddfccf664-vrdq2   4/4     Wird ausgeführt   0    postgres-0         1.1.     Läuft   0          8m24s[email protected]:~$

Führen Sie den folgenden Befehl aus, um den Dienststatus anzuzeigen,

[email protected]:~$ kubectl get svc -l "app.kubernetes.io/managed-by=awx-operator"NAME                   TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)        AGEansible-awx-postgres   Cluster-IP   Keine         none>        5432/TCP       8m31sansible-awx-service    NodePort    10.97.206.89           80:32483/TCP   7m55s[email protected]:~$

Bitte notieren Sie sich den Node-Port von ‚ansible-awx-service‘, wir werden ihn später für die Portweiterleitung verwenden.

Schritt 4) Greifen Sie über Tunneling auf das AWX-Portal zu

Um außerhalb des Minikube-Clusters auf das AWX-Portal zuzugreifen, müssen wir das Tunneling konfigurieren und ausführen

[email protected]:~$ nohup minikube tunnel &[3] 35709[email protected]:~$[email protected]:~$ kubectl get svc ansible-awx-serviceNAME                  TYPE       CLUSTER-IP     EXTERNAL-IP   PORT(S )        AGEansible-awx-service   NodePort   10.97.206.89           80:32483/TCP   90 m [email protected]:~$

Stellen Sie die Portweiterleitung so ein, dass, wenn die Anfrage auf Minikube-IP auf Node-Port „32483“ kommt, sie an Port 80 des awx-Pods umgeleitet werden sollte.

[email protected]:~$ kubectl port-forward svc/ansible-awx-service --address 0.0.0.0 32483:80 &> /dev/null &[4] 46686[email protected]:~$ 

Versuchen Sie nun, über den Webbrowser auf das AWX-Portal zuzugreifen, indem Sie die Minikube-IP-Adresse und den Knotenport 32483

verwenden

http:// :

Um die Anmeldeinformationen zu erhalten, gehen Sie zurück zum Terminal und führen Sie den folgenden Befehl aus.

[email protected]:~$ kubectl get secret ansible-awx-admin-password -o jsonpath="{.data.password}" | base64 --decodePWrwGWBFCmpd1b47DJffCtK5SqYGzxXF[email protected]:~$

Verwenden Sie den Benutzernamen als „admin“ und das Passwort als Ausgabe des obigen Befehls. Nach Eingabe der Anmeldeinformationen erhalten wir das folgende Dashboard

Großartig, oben wird bestätigt, dass Ansible AWX erfolgreich auf Kubernetes Minikube installiert wurde. Das ist alles aus diesem Artikel. Ich hoffe, Sie fanden es informativ, und falls Sie Fragen haben, können Sie uns gerne im Kommentarbereich unten schreiben.

Lesen Sie auch :Ausführen und Planen von Ansible Playbook mithilfe der AWX-GUI


Linux
  1. So installieren Sie Minikube unter Ubuntu 18.04 / 20.04

  2. So installieren Sie Jenkins auf Kubernetes

  3. So installieren Sie Kubernetes mit Minikube unter Ubuntu 20.04

  4. So installieren Sie Ansible auf AlmaLinux 8

  5. So installieren Sie Ansible unter Oracle Linux 8

So installieren Sie Minikube unter Ubuntu 20.04

So installieren Sie Kubernetes Minikube unter Ubuntu 20.04

So installieren Sie Ansible Server unter Ubuntu 18.04

So installieren Sie Ansible AWX unter Debian 10

So installieren Sie Kubernetes mit Minikube unter CentOS 8

So installieren Sie Ansible unter Linux Mint 20