Verbindungen testen, Benutzer anmelden und SSH-Schlüssel anpassen

Tipps für Ansible

| Autor: Thomas Joos

Automatisierung im Datencenter (Bild von kewl auf Pixabay )
Automatisierung im Datencenter (Bild von kewl auf Pixabay ) (Automatisierung im Datencenter (Bild von kewl auf Pixabay ))

Viele Aufgaben in Ansible werden im Terminal erledigt. Mit einigen Befehlen lassen sich Verbindungen zu den Knoten testen und Verbindungen mit anderen Benutzerkonten und SSH-Schlüsseln durchführen. Viele Aufgaben in Ansible lassen sich mit kurzen Befehlen durchführen.

Um sicherzustellen, dass alle Ansible-Knoten miteinander kommunizieren können, sollte die Verbindung dieser Knoten regelmäßig getestet werden. Die Verbindung ist auch wichtig, da nur so alle Playbooks auf allen Knoten verfügbar sind und daher auch die einzelnen Automatisierungsaufgaben durchgeführt werden können, die wiederum auf den Playbooks aufbauen. Der Befehl zum überprüfen der Verbindungen ist:

ansible all -m ping

Der Befehl verbindet sich mit allen Knoten, die im Cluster definiert sind und verwendet dazu die Anmeldedaten des entsprechenden Benutzers. Antworten die anderen Knoten funktioniert Ansible generell. 

Die Verbindungen werden mit den Anmeldedaten des aktuell angemeldeten Benutzers durchgeführt. Mit dem Befehl lassen sich aber auch andere Benutzer anmelden, um mit deren Rechten zu testen, ob die Verbindung funktioniert. Dazu wird die Option "-u" verwendet,  zusammen mit dem Benutzerkonto:

ansible all -m ping -u thomas

Auch bei der Verwendung von Playbooks lassen sich natürlich andere Benutzerkonten hinterlegen, mit denen ein bestimmtes Playbook gestartet wird:

ansible-playbook serveriis.yml -u thomas

Auch der SSH-Key, mit dem die Verbindungen getestet oder Playbooks ausgeführt werden kann angepasst werden:

ansible all -m ping --private-key=<Pfad zur Datei mit dem Schlüssel>

Die Verbindung kann auch mit einer herkömmlichen Authentifizierung durchgeführt  werden:

ansible all -m ping --ask-pass

Das funktioniert natürlich auf dem gleichen Weg mit "ansible-playbook":

ansible-playbook playbook.yml --ask-pass