So installierst du Ansible auf Rocky Linux 8

Ansible ist eine Open-Source-Software, die die Softwarebereitstellung, das Konfigurationsmanagement und die Anwendungsbereitstellung automatisiert. Das Tool wurde entwickelt, um die Cloud-Bereitstellung, die Bereitstellung von Betriebssystemen usw. für mehrere Linux- oder UNIX-ähnliche Systeme zu automatisieren. Mit dem Ansible-Automatisierungstool können sowohl Dienste in einem Rechenzentrum als auch Produkte, die mit unterschiedlichen Technologien entwickelt wurden, automatisiert werden.

Das Hauptziel von Ansible ist es, die IT-Automatisierung so einfach zu gestalten, dass komplexe Unternehmensumgebungen ohne übermäßige individuelle Skripterstellung oder manuelle Arbeit verwaltet werden können. Da Ansible außer Python selbst keine weiteren Abhängigkeiten benötigt, können die Nutzer/innen ihr System über SSH-Verbindungen weiter automatisieren, die bei den meisten Mainstream-Linux-Distributionen standardmäßig aktiviert sind.

Ansible verbindet sich über SSH mit den Nodes und sammelt Informationen über das entfernte System. Dann führt es Aufgaben in einem Playbook für die Bereitstellung von Diensten oder andere Ziele des Konfigurationsmanagements aus. Playbooks können eine beliebige Anzahl von Systembereitstellungsprozessen automatisieren, z. B. die Erstellung von Cloud-Server-Instanzen, virtuellen Maschinen, Containern usw. Ansible ist nützlich, um sich wiederholende Aufgaben zu automatisieren, z. B. die Bereitstellung von Anwendungen auf unterschiedlichen Servern, die oft Anpassungen an die lokale Infrastruktur und Benutzereingaben erfordern. Auch Cluster, auf denen Kubernetes läuft, können mit der Container-Orchestrierung von Ansible einfach verwaltet werden: Aktionen wie das Abrufen von Images aus privaten Registries und das gleichzeitige Aktualisieren von Pod-Konfigurationen in allen Clustern.

Wie oft hast du schon versucht, ein neues Linux-Paket zu installieren und bist dabei gescheitert? Wolltest du schon einmal versuchen, das Ansible-Paket auf deinem Linux-System zu installieren, weißt aber nicht, wie? Wenn du das bejaht hast, ist dieser Blogbeitrag genau das Richtige für dich. Diese Anleitung zeigt dir, wie du Ansible herunterlädst, kompilierst und auf einem Rocky Linux 8 System installierst.

Voraussetzung

  • Ein Server mit dem Betriebssystem Rocky Linux 8
  • Root-Rechte

Schritt 1. Das System aktualisieren

Zuerst müssen wir unser System aktualisieren, um sicherzustellen, dass alle aktuellen Pakete installiert sind. Öffne ein Terminal und gib die folgenden Befehle ein.

sudo dnf update -y

Schritt 2. Konfigurieren des EPEL-Repositorys

Das EPEL-Repository (Extra Packages for Enterprise Linux) ist eine Fedora Special Interest Group, die eine Reihe von hochwertigen Zusatzpaketen erstellt, pflegt und verwaltet, die die von Red Hat veröffentlichten Pakete ergänzen. Einige der Schwerpunkte des Repositorys sind Spiele und Bildungsanwendungen, Programmiersprachen und Tools, Virtualisierung und Systemadministration.

Ansible ist abhängig von Python und kann ohne das EPEL-Repository nicht installiert werden. Um Ansible über dnf zu installieren , müssen wir also zuerst das EPEL-Repository konfigurieren.

sudo dnf install epel-release -y

Nach der Konfiguration des EPEL-Repositorys muss der DNF-Paketmanager aktualisiert werden, damit er Ansible aus dem neuen Repository installieren kann.

sudo dnf makecache

Um zu überprüfen, ob das Repository richtig konfiguriert wurde, führe den folgenden Befehl aus.

Du erhältst die folgende Ausgabe.

Konfigurieren des EPEL-Repositorys

Schritt 3. Ansible installieren

Jetzt, wo das EPEL-Repository konfiguriert ist, können wir es nutzen, um Ansible mit dem DNF-Paketmanager zu installieren.

sudo dnf -y install ansible

Der DNF-Befehl sollte damit beginnen, alle benötigten Pakete herunterzuladen und die neueste Version von Ansible auf deinem System zu installieren. Während der Installation wirst du eventuell aufgefordert, den GPG-Schlüssel zu akzeptieren. Drücke Y und Enter, um fortzufahren.

Sobald Ansible installiert ist, kannst du überprüfen, welche Version von Ansible installiert ist, indem du den folgenden Befehl ausführst:

ansible --version

Ansible sollte seine Versionsnummer und das Versionsdatum anzeigen. So kannst du überprüfen, ob Ansible richtig installiert wurde.

 Ansible installieren

Schritt 4. Überprüfen der Ansible-Installation

Um sicherzustellen, dass die Installation erfolgreich war. In diesem Schritt werden wir einen Remote-Server mit Ansible verwalten oder administrieren.

Zielserver für Ansible konfigurieren

Ansible verwendet SSH, um sich mit einem Zielserver zu verbinden und ihn zu konfigurieren. SSH ist ein beliebtes Netzwerkprotokoll, mit dem man sich sicher mit einem entfernten Linux-Rechner verbinden kann, um Befehle auf dem entfernten Rechner über SSH auszuführen.

Ansible verwendet den Port 22. Daher muss der Port 22 in der Firewall geöffnet werden, um SSH-Verbindungen zu ermöglichen.

In diesem Beispiel verwenden wir einen Ubuntu 20.04 Server mit der IP-Adresse: 137.184.66.179.

Du kannst die IP-Adressen der Server verwenden, die du mit Ansible verwalten willst. Ersetze einfach die IP-Adresse oben durch deinen Zielserver. Du kannst auch den DNS-Namen oder DNS-Alias des Rechners verwenden.

Führe die folgenden Befehle aus, um den SSH-Server zu installieren und Port 22 auf dem Zielserver zu öffnen.

sudo apt install openssh-server
sudo systemctl start ssh
sudo systemctl enable ssh
sudo ufw allow 22

Einen SSH-Schlüssel generieren

In diesem Schritt müssen wir einen SSH-Schlüssel auf unserem lokalen Rechner erzeugen und ihn dann auf den entfernten Rechner übertragen.

SSH-Schlüssel sind einfach Schlüsselpaare, die den Aufbau von SSH-Verbindungen mit SSH ermöglichen. Führe den folgenden Befehl aus, um einen SSH-Schlüssel auf deinem lokalen Rechner zu erzeugen. Drücke mehrmals die Eingabetaste, um die Standardwerte zu übernehmen. Du erhältst die folgende Ausgabe.

ssh-keygen

Einen SSH-Schlüssel generieren

Nachdem der SSH-Schlüssel erzeugt wurde, müssen wir unseren neu erzeugten SSH-Schlüssel auf den Zielrechner übertragen. Führe den folgenden Befehl auf deinem Host-Rechner aus, um den Schlüssel zu übertragen.

ssh-copy-id root@137.184.66.179

Vergiss nicht, root durch die sudo-Benutzer auf deinem Zielrechner zu ersetzen. Ersetze 137.184.66.179 durch die IP-Adresse deines Zielrechners.

Führe nun auf dem entfernten Rechner den folgenden Befehl aus, um den SSH-Befehl mit dem sudo-Präfix auszuführen , ohne dass du das Passwort erneut eingeben musst.

echo "$(whoami) ALL=(ALL) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/$(whoami)

Inventarisierungsdatei erstellen

Ansible speichert sein Host-Inventar in einer Datei im Verzeichnis /etc/ansible, die den Namen hosts trägt. Mit der hosts-Datei kannst du das Host-Inventar für die Verwaltung deiner Remote-Server erstellen.

Du kannst auch eine Gruppe von Hosts nach ihrer Funktion, ihrem Standort oder nach anderen Kriterien erstellen. Du kannst zum Beispiel eine Gruppe von Hosts mit dem Namen Webserver erstellen und alle Server, auf denen Apache oder Nginx läuft, in diese Gruppe aufnehmen. So kannst du die Hosts flexibler kontrollieren und verwalten.

Öffne zunächst die Hostdatei mit deinem bevorzugten Texteditor.

sudo nano /etc/ansible/hosts

Die Inventardatei sollte den folgenden Inhalt haben.

Inventarisierungsdatei erstellen

Um einen weiteren Host zu diesem Inventar hinzuzufügen, fügst du einfach den Hostnamen oder die IP-Adresse des Hosts an die neue Zeile an. In diesem Beispiel fügen wir einen weiteren Server mit der IP-Adresse 137.184.66.179 in die Hosts-Datei unter der Gruppe Webserver ein .

Inventarisierungsdatei erstellen

Drücke ctrl+o, um die Datei zu speichern und ctrl+x, um die Datei zu verlassen.

Anpingen entfernter Server

Sobald die Inventardatei erstellt ist, müssen wir Ansible mitteilen, dass es einen neuen Remote-Server gibt. Das geht mit dem Ansible-Befehl und dem Argument -m ping.

ansible -m ping all

Wenn keine Fehlermeldung erscheint, wurde der Remote-Server erfolgreich zur Inventardatei hinzugefügt und deine Ansible-Installation ist erfolgreich.

Anpingen entfernter Server

Fazit

In diesem Lernprogramm hast du gelernt, wie du Ansible auf einem Rocky Linux 8.4 System installierst und es über SSH mit einem Remote-Server verbindest. Danach hast du gelernt, wie du eine Inventardatei und eine Ansible-Gruppe von Hosts erstellst. Schließlich konntest du mit dem Ansible-Befehl entfernte Server anpingen.

Nun haben wir einige der Grundlagen von Ansible behandelt. Wir hoffen, dass du dieses Tutorial nützlich findest. Vielleicht interessiert dich auch, wie du Ansible unter Ubuntu 22.04 LTS installierst und konfigurierst.

Das könnte dich auch interessieren …