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

6 Schritte zur Automatisierung von Code-Pushs mit Ansible Automation Platform

Ansible Automation Platform (AAP) ist eine Unternehmenslösung von Red Hat, um Ansible benutzerfreundlicher zu machen. Es wird mit vielen Komponenten geliefert, die Ihnen helfen, Ihre Prozesse über den gesamten Software Development Life Cycle (SDLC) hinweg zu automatisieren. Es bietet Ihnen verschiedene Funktionen wie rollenbasierte Zugriffskontrolle (RBAC), Workflows, Integration von Drittanbietern über eine API, Benachrichtigungen, gemeinsame SSH-Schlüssel-Anmeldeinformationen und mehr. Es lässt sich auch gut in LDAP integrieren und verfügt über eine vorkonfigurierte Protokollierung.

[Das könnte Ihnen auch gefallen: Using Ansible Automation Webhooks for GitOps ]

Das Problem verstehen

Der Prozess sieht folgendermaßen aus:Das Entwicklungsteam ändert den Code und pusht den Code in das vom Produkt verwendete Git-Repository. Sobald der Code aktualisiert wurde, zieht das DevOps-Team den neuesten Code und pusht ihn dann über ein Playbook auf die erforderlichen Server. Das Problem? Der neueste Code muss jedes Mal manuell heruntergeladen und dann auf die erforderlichen Server gepusht werden. Ich werde Ihnen zeigen, wie Sie diesen Prozess automatisieren können.

Einbringen der Lösung

AAP unterstützt die Integration mit GitHub und GitLab. Diese Integration erfolgt über einen Webhook . Ein Webhook ist eine benutzerdefinierte HTTP-Callback-Aktion, die durch ein Ereignis ausgelöst wird, z. B. das Aktualisieren eines Codeabschnitts und dessen Übertragung an ein Repository. Die ausgelöste Aktion ist in diesem Fall die Ausführung eines Playbooks auf den gewünschten verwalteten Hosts.

Im obigen Diagramm schiebt der Benutzer den neuesten Code in das GitLab-Repository und löst ein Ereignis aus. Das Ereignis ist der Code, der an das Repository gepusht wird. Dieses Ereignis löst außerdem einen HTTP-basierten Webhook aus, der über seine API mit AAP kommuniziert. Dies informiert AAP, die gewünschte Vorlage auf dem ausgewählten Inventar auszuführen.

Konfigurieren Sie einen AAP-Webhook mit GitLab:

Wie funktioniert dieser Prozess? Ich habe es in sechs Schritte unterteilt, um es leichter verständlich zu machen.

Schritt 1:Erstellen Sie ein persönliches GitLab-Zugriffstoken

Navigieren Sie zu Nutzereinstellungen in Ihrem GitLab-Konto und erstellen Sie ein persönliches Zugriffstoken. Dieser Berechtigungsnachweis wird verwendet, um eine API-Verbindung zu GitLab zur Verwendung mit Webhook-Listener-Jobs herzustellen, um Statusaktualisierungen zu veröffentlichen.

Schritt 2:Konfigurieren Sie das persönliche GitLab-Zugriffstoken

Erstellen Sie in AAP einen neuen Berechtigungsnachweis mit dem Typ GitLab Personal Access Token . Geben Sie einen relevanten Namen und eine Organisation an und geben Sie dann Ihr Token ein.

Schritt 3:Aktivieren Sie Webhooks in der AAP-Vorlage

Gehen Sie zu Ihrer AAP-Vorlage und überprüfen Sie den Webhook Taste. Dazu müssen Sie den Webhook-Dienst GitLab aufrufen. Wählen Sie Ihre zuvor erstellten Anmeldedaten in den Webhook-Anmeldedaten aus Möglichkeit. Kopieren Sie die Webhook-URL und Webhook-Schlüssel Sie erhalten haben und speichern Sie die Einstellungen.

Schritt 4:Aktivieren Sie den Webhook im GitLab-Projekt

Navigieren Sie zu den Webhook-Einstellungen Ihres GitLab-Projekts. Geben Sie die Webhook-URL ein und Webhook-Schlüssel Sie aus der AAP-Vorlage kopiert haben. Wählen Sie Push-Ereignisse aus als Auslöser, weil wir die Vorlage ausführen möchten, wenn der neueste Code gepusht wird. Deaktivieren Sie die SSL-Überprüfung, wenn Ihr AAP kein gültiges SSL-Zertifikat hat.

Schritt 5:Nehmen Sie Änderungen an Ihrem Code vor und übertragen Sie ihn in das Repository

Pushen Sie Ihre Änderungen über die GitLab-Schnittstelle oder die Git-CLI in das GitLab-Repository.

Schritt 6:Ausführung der Vorlage überprüfen

Navigieren Sie zu Jobs im AAP. Ihre Vorlage sollte gerade ausgeführt oder erfolgreich ausgeführt werden. Achten Sie auf Gestartet von und die zusätzlichen Variablen Feld. Sie sehen den Benutzer als Webhook und die zusätzlichen Variablen, die vom Webhook verwendet werden, um die Ausführung erfolgreich abzuschließen.

[ Suchen Sie nach mehr Informationen zur Systemautomatisierung? Beginnen Sie mit The Automated Enterprise, einem kostenlosen Buch von Red Hat. ] 

Abschluss

Die Automatisierung ist bei der Verwaltung ihrer Infrastruktur in jedem Unternehmen zu einer Notwendigkeit geworden. Die Verwendung von Technologien wie Webhooks erleichtert Systemadministratoren die automatische Bereitstellung der neuesten Änderungen auf ihren verwalteten Hosts über eine Unternehmenslösung wie Ansible Automation Platform.


Linux
  1. 10 Ansible-Module für die Linux-Systemautomatisierung

  2. So installieren Sie die Gitea Code-Hosting-Plattform mit HTTPS unter CentOS 8

  3. SSH-Passwortautomatisierung in Linux mit sshpass

  4. Ich erneuere meinen Nervenkitzel bei der Arbeit mit Ansible

  5. 4 Schritte zum Erstellen von Linux-Benutzern aus einer CSV-Datei mit Ansible

Linux Mint 20 (Ulyana) Installationsschritte mit Screenshots

Einführung in die Ansible-Automatisierungsplattform

Heimautomatisierung:Home Assistant mit Podman ausführen

Automatisierung von ServiceNow mit Red Hat Ansible Automation Platform

So arbeiten Sie mit Ansible Provisioner in Vagrant

Installation und erste Schritte mit Git