Wenn wir über Konfigurationsmanagement-Tools sprechen, hören wir am häufigsten den Namen Ansible. Es ist ein plattformübergreifendes Tool, das für die Verwaltung von Systemkonfigurationen bei der Arbeit mit Linux-, macOS- und Windows-Betriebssystemen entwickelt wurde. Heute werden wir versuchen, das Verfahren zur Installation von Ansible auf Debian 10 zu beleuchten.
Ansible unter Debian 10 installieren
Um Ansible unter Debian 10 zu installieren, müssen Sie die folgenden drei einfachen Schritte ausführen:
Schritt Nr. 1:Aktualisieren Sie Ihr Debian 10-System:
Bevor Sie Ansible auf Debian 10 installieren, müssen Sie es mit dem unten gezeigten Befehl aktualisieren:
sudo apt update
Nach der Aktualisierung Ihres Debian 10-Systems sehen Sie auf Ihrem Terminal etwas wie das im folgenden Bild gezeigte:
Schritt Nr. 2:Installieren Sie Ansible auf Ihrem Debian 10-System:
Nachdem die Systemaktualisierung abgeschlossen ist, können Sie Ansible auf Debian 10 mit dem unten gezeigten Befehl installieren:
sudo apt install ansible
Während der Ausführung dieses Befehls wird eine Meldung angezeigt, in der Sie gefragt werden, ob Sie mit der Installation auf Ihrem Terminal fortfahren möchten oder nicht. Sie müssen „Y“ eingeben, damit der Installationsvorgang reibungslos weiterläuft, wie in der folgenden Abbildung hervorgehoben:
Wenn Ansible erfolgreich auf Ihrem Debian 10-System installiert ist, wird das Terminal einige Meldungen ähnlich den im Bild unten gezeigten ausgeben:
Schritt Nr. 3:Bestätigen Sie die Installation von Ansible auf Ihrem Debian 10-System:
Die Installation von Ansible auf einem Debian 10-System ist so einfach, dass sie innerhalb der beiden oben genannten Schritte abgeschlossen werden kann. Sie können jedoch immer noch überprüfen, ob es erfolgreich auf Ihrem Debian 10-System installiert wurde oder nicht. Überprüfen Sie dazu die Version mit dem folgenden Befehl:
ansible --version
Die Version von Ansible, die auf unserem Debian 10-System installiert ist, ist 2.7.7, was auch im unten gezeigten Bild hervorgehoben wird:
Bearbeiten Sie die Ansible-Hosts-Datei /etc/ansible/hosts um das System hinzuzufügen, das wir mit Ansible verwalten möchten.
sudo nano /etc/ansible/hosts
Fügen Sie Folgendes hinzu:
[TestClient] node1 ansible_ssh_host=192.168.0.12
And save the file.
Mit Ansible
Zuerst müssen wir einen SSH-Schlüssel für den Client-Knoten konfigurieren, da Ansible das SSH-Protokoll verwendet, um Befehle an das Client-System zu übertragen.
Verwenden Sie diesen Befehl, um einen SSH-Schlüssel für die schlüsselbasierte Authentifizierung zu generieren:
ssh-keygen
Ausgabe:
Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved in /root/.ssh/id_rsa.pub. The key fingerprint is: SHA256:gTHiTCK....................... [email protected] The key's randomart image is: +---[RSA 2048]----+ | . . . | +----[SHA256]-----+
Der nächste Schritt besteht darin, den neu generierten Schlüssel auf das andere System zu kopieren. Führen Sie diesen Befehl aus:
ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]
Die IP 192.168.0.2 im obigen Befehl muss durch die IP-Adresse des Systems ersetzt werden, das Sie mit Ansible verwalten möchten.
Ausgabe:
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub" /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys [email protected]'s password: Number of key(s) added: 1
Jetzt ist es Zeit für einen ersten Test. Melden Sie sich mit diesem SSH-Befehl bei der anderen Maschine an:
ssh [email protected]
Die Anmeldung sollte jetzt ohne Eingabe eines Passworts funktionieren.
Ansible testen
Der Installationsteil ist abgeschlossen, jetzt können wir mit dem Testen von Ansible beginnen
Führen Sie diesen Befehl aus, um die Verbindung zu testen:
ansible -m ping TestClient
Ausgabe:
node1 | SUCCESS => { "changed": false, "ping": "pong" }
Falls Sie mehr als einen Client definiert haben, können Sie alle Verbindungen mit dem folgenden Befehl testen:
ansible -m ping all
Jetzt ist es an der Zeit, einen Befehl auf dem Remote-System auszuführen und das Ergebnis abzurufen. Für dieses Beispiel verwende ich den Befehl df.
ansible -m shell -a 'df -h' TestClient
Ausgabe:
node1 | CHANGED | rc=0 >> Filesystem Size Used Avail Use% Mounted on udev 957M 0 957M 0% /dev tmpfs 195M 21M 175M 11% /run /dev/sda1 38G 11G 25G 31% / tmpfs 974M 0 974M 0% /dev/shm tmpfs 5.0M 0 5.0M 0% /run/lock tmpfs 974M 0 974M 0% /sys/fs/cgroup /dev/sda15 121M 130K 120M 1% /boot/efi tmpfs 195M 0 195M 0% /run/user/0
Das Ergebnis zeigt die Festplattennutzung auf dem Remote-System. Sie können jeden beliebigen Linux-Shell-Befehl wie diesen ausführen, indem Sie ansible verwenden, und auch komplexe Skripte erstellen, um Server einzurichten und zu warten.
Entfernen von Ansible
Um Ansible von Ihrem Debian 10-System zu entfernen, müssen Sie es und auch seine Konfigurationsdateien zuerst mit dem folgenden Befehl deinstallieren:
sudo apt-get purge ansible
Nachdem Sie diesen Befehl erfolgreich ausgeführt haben, können Sie auch alle irrelevanten Pakete und Abhängigkeiten entfernen, indem Sie den unten gezeigten Befehl ausführen:
sudo apt-get autoremove
Schlussfolgerung
Dieser Artikel zeigt, wie Sie Ansible auf einem Debian 10-System installieren und wie Sie damit Systeme über eine sichere SSH-Verbindung remote verwalten können.