Feed abonnieren

Einleitung

Automatisierungs-Mesh ist eine Funktion von Red Hat Ansible Automation Platform, mit der Unternehmen Automatisierungs-Workloads über Peer-to-Peer-Verbindungen in Hybrid Clouds untereinander verteilen und dabei vorhandene Netzwerke nutzen können. Automatisierungs-Mesh mit Red Hat Ansible Automation Platform on Microsoft Azure ermöglicht Unternehmen die Skalierung ihrer Automatisierung mit einer einzigen Control Plane in zweifacher Hinsicht:

  1. Die Architektur von Ansible Automation Platform on Azure skaliert basierend auf den Automatisierungs-Workloads, die direkt über Direct oder Transit Routing automatisiert werden können. So müssen Kunden die Automatisierungsinfrastruktur nicht mehr direkt verwalten.
  2. Wenn die Automatisierung auf Ressourcen in anderen Rechenzentren oder am Edge ausgeführt werden muss oder wenn Ansible Automation Platform on Azure keine direkte Verbindung herstellen kann, können Kunden eine Automation Mesh Execution Plane konfigurieren, die mit Ansible Automation Platform on Azure verbunden ist.

Die Execution Plane von Automatisierungs-Mesh besteht aus zwei Arten von Mesh-Knoten: Hop-Knoten und Ausführungsknoten.

Hop-Knoten erleichtern die Kommunikation mit den Ausführungsknoten und leiten den Datenverkehr an diese weiter.

Ausführungsknoten führen die Automatisierung für die Zielendpunktressourcen aus.

Viele Unternehmen verfügen über Hybrid Cloud-Umgebungen mit Workloads und Ressourcen in Public Clouds, Private Clouds und in Rechenzentren. Für sie ist es entscheidend, diese Netzwerke zu erreichen und Ausführungsknoten in der Nähe der Automatisierungsendpunkte zu platzieren. Ein Beispiel für diesen Konfigurationstyp finden Sie unten.

mermaid-diagram-2024-01-10-083728-de

Mit dem Release von Automation Controller 4.5 ist nun für Ansible Automation Platform on Azure die Möglichkeit zur Implementierung von Hop-Knoten verfügbar.

Ihre Subskription für Ansible Automation Platform beinhaltet 10 Red Hat Enterprise Linux (RHEL) Lizenzen, die für die Ausführung von Komponenten von Ansible Automation Platform verwendet werden können. In diesem Beispiel werden wir diese Lizenzen nutzen, um Automatisierungs-Mesh mit einem Hop-Knoten und einem Ausführungsknoten zu implementieren, der an einem Remote-Standort von unserem Ansible Automation Platform on Azure Deployment aus ausgeführt wird.

Sehen wir uns an, wie Sie diese bereitstellen und die Funktion nutzen können.

Vorbereiten des Netzwerks

Die Netzwerkkonfiguration in diesen Beispielen verwendet Standardports für Beispiele. Die Netzwerkkonfiguration kann an die Anforderungen des Unternehmens angepasst werden. Befolgen Sie bei komplexen Netzwerkkonfigurationen die Anleitungen in der Dokumentation für Automatisierungs-Mesh.

Automatisierungs-Mesh verwendet TLS-Verschlüsselung für die Kommunikation, sodass Datenverkehr in externen Netzwerken (Internet usw.) bei der Übertragung verschlüsselt wird.

  1. Die DMZ ist für Port 27199 für Datenverkehr aus dem öffentlichen Internet geöffnet, wodurch die Kommunikation mit der Ansible Automation Platform on Azure-Instanz ermöglicht wird.
  2. Das Routing des Datenverkehrs im Netzwerk kann zwischen der DMZ und dem privaten Netzwerk auf Port 27199 erfolgen.
  3. Der Netzwerkverkehr innerhalb des privaten Netzwerks kann an Ports weitergeleitet werden, an denen die Automatisierung erfolgt, z. B. 22 für SSH und 443 für APIs.

Bereiten Sie auch Ressourcen, etwa eine virtuelle Maschine, im privaten Netzwerk vor. Erstellen Sie in Ansible Automation Platform ein Inventory mit der privaten Ressource unter Verwendung der privaten IP-Adresse oder des Hostnamens.

Vorbereiten der RHEL-Instanzen

Es gibt viele verschiedene Möglichkeiten, wie die Automatisierungs-Mesh-Maschinen bereitgestellt und konfiguriert werden können, auch mit mehr Ansible-Automatisierung. Zu Beispielzwecken werden in diesem Abschnitt die Schritte manuell beschrieben. Im Folgenden wird davon ausgegangen, dass RHEL 9 auf einer x64_64-Architektur ausgeführt wird.

  1. Stellen Sie die RHEL-Instanzen in den Remote-Netzwerken bereit, in denen Kommunikation erforderlich ist.
    1. Im obigen Beispiel befindet sich eine Instanz im DMZ-Netzwerk mit einer öffentlichen IP-Adresse und eine Instanz im privaten Netzwerk.
    2. RHEL-ISOs können über access.redhat.com abgerufen werden.
  2. Melden Sie sich über SSH bei jeder RHEL-Instanz an, und führen Sie die folgenden Schritte aus. Je nach Netzwerkzugriff und -kontrollen sind möglicherweise SSH-Proxies oder andere Zugriffsmodelle erforderlich.
  3. Stellen Sie sicher, dass die RHEL-Instanzen über subscription-manager berechtigt sind.

    sudo subscription-manager register --auto-attach
  4. Abonnieren Sie die Repositories von Ansible Automation Platform.

    sudo subscription-manager repos --enable ansible-automation-platform-2.4-for-rhel-9-x86_64-rpms
  5. Installieren Sie die ansible-core-Pakete.

    sudo dnf install -y ansible-core
  6. Installieren Sie die Ansible Collection ansible.receptor.

    ansible-galaxy collection install ansible.receptor
  7. Erstellen oder kopieren Sie einen SSH-Schlüssel, der verwendet werden kann, um in späteren Schritten eine Verbindung vom Hop-Knoten zum Ausführungsknoten herzustellen. Dies kann ein temporärer Schlüssel sein, der nur für die Automatisierungs-Mesh-Konfiguration verwendet wird, oder ein dauerhafter Schlüssel. SSH-Benutzer und -Schlüssel werden in späteren Schritten verwendet.
  8. Öffnen Sie Port 27199 für die Receptor-Kommunikation.

    sudo firewall-cmd --permanent --zone=public --add-port=27199/tcp

Die RHEL-Instanzen sind jetzt bereit, Automatisierungs-Mesh auszuführen.

Konfiguration in Automation Controller

Die Knoten müssen in Automation Controller konfiguriert werden. In unserem Beispiel stellen wir Folgendes bereit: 1 Hop-Knoten und 1 Ausführungsknoten.

  1. Melden Sie sich bei Automation Controller an.
  2. Navigieren Sie zu „Instances“ im Menü „Administration“.
  3. Klicken Sie auf „Add“.
  4. Füllen Sie die Felder wie folgt aus, um den Ausführungsknoten zu konfigurieren.
    1. Host Name:
    2. Description: Execution node
    3. Listener Port: 27199
    4. Instance Type: Execution

  1. Klicken Sie auf „Save“.
  2. Klicken Sie auf das Symbol „Install Bundle“, um das Installationspaket herunterzuladen.Speichern Sie dies zur Verwendung in späteren Schritten.
  3. Klicken Sie auf „Back to instances“.
  4. Klicken Sie auf „Add“.
  5. Füllen Sie die Felder wie folgt aus, um den Hop-Knoten zu konfigurieren.
    1. Host Name:  
    2. Description: Hop node
    3. Listener Port: 27199
    4. Instance Type: Hop
    5. Peers: Klicken Sie auf die Lupe, und wählen Sie den zuvor erstellten Ausführungsknoten aus.
    6. Aktivieren Sie die Option „Peers from control nodes“.

Die IP-Adresse in diesem Screenshot ist nur ein Beispiel.

  1. Klicken Sie auf „Save“.
  2. Klicken Sie auf das Symbol „Install Bundle“, um das Installationspaket herunterzuladen. Speichern Sie dies zur Verwendung in späteren Schritten.
  3. Klicken Sie auf den Menüeintrag „Topology View“ unter „Administration“. Ihre Automatisierungs-Mesh-Konfiguration sollte sich jetzt im vorläufigen Status „Installed“ befinden.

Die IP-Adressen in diesem Screenshot dienen nur zu Beispielzwecken.

IP-Adresse des Hop-Knotens: 20.123.123.972

IP-Adresse des Ausführungsknotens: 10.10.0.2

Installieren der Automatisierungs-Mesh-Bundles

Die beiden Pakete, die im vorherigen Abschnitt heruntergeladen wurden, verwenden Ansible Automation Platform zur Einrichtung dieser Automatisierungs-Mesh-Knoten. Wo Sie diese Pakete ausführen, hängt von Ihrem Netzwerkzugriff auf die Ressourcen ab. In unserem Beispiel wird davon ausgegangen, dass Sie SSH-Zugriff auf den Hop-Knoten haben und die Bundle-Automatisierung für beide Rechner vom Hop-Knoten aus ausführen können.

  1. Kopieren Sie beide Bundle-Dateien von Ihrem lokalen Rechner auf den Hop-Knoten. Beachten Sie, dass Ihre IP-Adressen oder Hostnamen für Ihre Umgebung eindeutig sind.
scp /path/to/hop/bundle/20.123.123.972_install_bundle.tar.gz \ user@20.123.123.972

scp /path/to/exec/bundle/10.10.0.2_install_bundle.tar.gz user@20.123.123.972
  1. Extrahieren Sie die beiden tar.gz-Dateien.
tar -xzvf /path/to/hop/bundle/20.123.123.972_install_bundle.tar.gz
tar -xzvf /path/to/exec/bundle/10.10.0.2_install_bundle.tar.gz
  1. Wechseln Sie in das Verzeichnis des Ordners mit dem Ausführungsknoten.
cd /path/to/exec/bundle/10.10.0.2_install_bundle
  1. Öffnen Sie die Datei inventory.yml in einem Texteditor.
vim /path/to/exec/bundle/10.10.0.2_install_bundle/inventory.yml
  1. Ändern Sie das Feld „user“ so, dass es den SSH-Benutzer für den Ausführungsknoten enthält.
---
all:
  hosts:
    remote-execution:
      ansible_host: 10.10.0.2
      ansible_user: <username> # user provided
      ansible_ssh_private_key_file: ~/.ssh/id_rsa
  1. Ändern Sie bei Bedarf den Namen des SSH-Schlüssels, je nachdem, wie Sie Ihren SSH-Schlüssel für diesen Host in vorherigen Schritten eingerichtet haben.
  2. Speichern Sie die Datei inventory.yml.
  3. Führen Sie das Playbook aus, um Automatisierungs-Mesh auf dem Host des Ausführungsknotens zu installieren.
ansible-playbook -i inventory.yml install_receptor.yml
  1. Wechseln Sie nach Abschluss der Installation zum Verzeichnis für den Ordner des Hop-Knotens.
cd /path/to/hop/bundle/20.123.123.972_install_bundle
  1. Öffnen Sie die Datei inventory.yml in einem Texteditor.
vim /path/to/hop/bundle/20.123.123.972_install_bundle/inventory.yml
  1. Ändern Sie das Feld „user“ so, dass es den SSH-Benutzer für den Hop-Knoten enthält.
---
all:
  hosts:
    remote-execution:
      ansible_host: 20.123.123.972
      ansible_user: <username> # user provided
      ansible_ssh_private_key_file: ~/.ssh/id_rsa
  1. Ändern Sie bei Bedarf den Namen des SSH-Schlüssels, je nachdem, wie Sie Ihren SSH-Schlüssel für diesen Host in vorherigen Schritten eingerichtet haben.
  2. Speichern Sie die Datei inventory.yml.
  3. Führen Sie das Playbook aus, um Automatisierungs-Mesh auf dem Host des Hop-Knotens zu installieren.
ansible-playbook -i inventory.yml install_receptor.yml

Überprüfen der Konnektivität

  1. Öffnen Sie Automation Controller erneut in Ihrem Webbrowser.
  2. Klicken Sie im linken Menü auf „Instances“ unter „Administration“.
  3. Aktivieren Sie das Kontrollkästchen neben dem Ausführungsknoten.
  4. Klicken Sie auf „Run Health Check“. Dieser Schritt kann einige Minuten in Anspruch nehmen.
  5. Wenn das Automatisierungs-Mesh ordnungsgemäß funktioniert, sollten alle Knoten den Status „Ready“ aufweisen.

Erstellen einer Instanzgruppe

  1. Klicken Sie auf „Instance Groups“ unter „Administration“.
  2. Klicken Sie auf „Add“.
  3. Klicken Sie auf „Add instance group“.
  4. Erstellen Sie die Instanzgruppe mit den folgenden Feldern:
    1. Name: Remote Network

  1. Klicken Sie auf „Save“.
  2. Klicken Sie auf die Registerkarte „Instances“.
  3. Klicken Sie auf „Associate“.
  4. Aktivieren Sie das Kontrollkästchen neben dem erstellten Ausführungsknoten.
  5. Klicken Sie auf „Save“.

Demonstrieren der Funktionsweise

Nachdem wir nun die Hop- und Ausführungsknoten konfiguriert haben, starten wir ein paar Jobs über den Automation Controller und beobachten, wie sie den Hop-Knoten durchlaufen. Dieser leitet sie wiederum an die Ausführungsknoten weiter, um die Automatisierungsaufgaben auszuführen.

  1. Öffnen Sie das Inventory, das Sie als Vorbereitungsschritt für diesen Guide erstellt haben.
  2. Klicken Sie auf „Edit“, um das Inventory zu bearbeiten.
  3. Klicken Sie auf die Lupe neben Instance Groups.
  4. Wählen Sie die Instanzgruppe „Remote Network“ aus.
  5. Klicken Sie auf „OK“.
  6. Klicken Sie auf „Save“.
  7. Klicken Sie auf die Registerkarte „Hosts“.
  8. Aktivieren Sie das Kontrollkästchen neben dem VM-Host, den Sie im privaten Netzwerk erstellt haben.
  9. Klicken Sie auf „Run Command“.
  10. Führen Sie das Ping-Modul für den Host aus.

Ist der Ping erfolgreich, ist Automatisierungs-Mesh ordnungsgemäß konfiguriert. Sie können jetzt Automatisierungsjobs für Hosts in einem privaten Netzwerk ausführen.

Was kann ich als Nächstes tun?

Weitere Informationen zu Ansible Automation Platform on Azure finden Sie auf dieser Seite.

Weitere Informationen zu Automatisierungs-Mesh finden Sie in diesem Guide.

Weitere Informationen zu Ansible Automation Platform in anderen Hyperscaler-Clouds finden Sie auf dieser Seite.

Selbstbestimmte, praxisorientierte Labs zu Ansible Automation Platform finden Sie auf dieser Seite.

  • Ein Lab zu Ansible Automation Platform on Azure
  • Ein Lab zum Einstieg in Automatisierungs-Mesh
  • Dokumentation zu Red Hat Ansible Automation Platform Automatisierungs-Mesh für operatorbasierte Installationen
  • Dokumentation zu Red Hat Ansible Automation Platform Automatisierungs-Mesh für VM-basierte Installationen

Über die Autoren

Hicham is responsible for technical marketing of the Red Hat Ansible Automation Platform on Clouds. Hicham has been in the software industry for over 20 years and for many of them focused on cloud management. Hicham has been a frequent presenter at events and conferences like VMworld, vForum, VMUG, VMLive, Gartner, Dell Technology World, AWS re:Invent, HPE Discover, Cloud Field Day, Red Hat Summit, AnsibleFest, in addition to Customer events.

Read full bio

Scott Harwell is a Principal Product Manager at Red Hat for Ansible on Clouds. His focus is the delivery of Ansible Automation Platform offerings on hyperscaler cloud vendors such as Microsoft Azure and AWS. Prior to joining Red Hat, Scott held product management, development, and consulting roles for Oracle, AST Corporation, Tech Machine, and Volvo. Scott is a cloud enthusiast with experience and certifications across many cloud providers. He is passionate about automation and likes to find creative ways to improve IT, technical, and business processes.

Read full bio
UI_Icon-Red_Hat-Close-A-Black-RGB

Nach Thema durchsuchen

automation icon

Automatisierung

Das Neueste zum Thema IT-Automatisierung für Technologien, Teams und Umgebungen

AI icon

Künstliche Intelligenz

Erfahren Sie das Neueste von den Plattformen, die es Kunden ermöglichen, KI-Workloads beliebig auszuführen

open hybrid cloud icon

Open Hybrid Cloud

Erfahren Sie, wie wir eine flexiblere Zukunft mit Hybrid Clouds schaffen.

security icon

Sicherheit

Erfahren Sie, wie wir Risiken in verschiedenen Umgebungen und Technologien reduzieren

edge icon

Edge Computing

Erfahren Sie das Neueste von den Plattformen, die die Operations am Edge vereinfachen

Infrastructure icon

Infrastruktur

Erfahren Sie das Neueste von der weltweit führenden Linux-Plattform für Unternehmen

application development icon

Anwendungen

Entdecken Sie unsere Lösungen für komplexe Herausforderungen bei Anwendungen

Original series icon

Original Shows

Interessantes von den Experten, die die Technologien in Unternehmen mitgestalten