Hier wird die Installation auf Linux Debian, Ubuntu oder RedHat/Centos beschrieben.

Voraussetzung

Für die tägliche Arbeit mit Ansible empfiehlt sich die Installation auf einem Rechner bzw. Server, auf dem Linux installiert ist, von dem aus die zu verwaltenden Server gut zu erreichen sind.
Damit Ansible von der Administrations-Installation aus auf die zu verwaltenden Server zugreifen kann, müssen diese über ein Netzwerk erreichbar sein. Dabei spielt es keine Rolle, ob die Geräte über das Internet, das LAN oder ein VPN erreicht werden können.
Die Kommunikation zwischen Ansible und den entfernten Hosts läuft im Wesentlichen über ssh (secure shell). Damit Ansible auf dem zentralen Host ohne Passwort auf die entfernten Server zugreifen kann, muss eine SSH-Verbindung mittels Zertifikat möglich sein.

 

Installation

Neben der Software von Ansible benötigen wir nur wenig weitere Zutaten:

Die Installation von Ansible erfolgt in der Regel durch den Paket-Manager der eingesetzten Linux-Distribution. Ansible selbst basiert auf der Programmiersprache python. Die dafür notwendigen Pakete werden durch den Paketmanager (yum oder apt) mit installiert.

Installation auf Ubuntu/Debian 

Befehl zum Installieren der Pakete:

sudo apt install ansible

User erstellen

Es ist sinnvoll einen eigenen user für ansible zu erstellen.

sudo adduser ansible 

SSH-Key erstellen

Damit später eine passwort-lose Anmeldung auf den entfernten Rechnern möglich ist, muss einmal zentral auf dem Verwaltungs-Server ein ssh-Schlüssel erzeugt werden:

ssh-keygen -f ~/ansible-key-ecdsa -t ecdsa -b 521

Die anschließend gestellten Fragen nach einer Passphrase bestätigen Sie mit Return.
Nun sind um Verzeichnis /ansible/.ssh/ zwei Dateien vorhanden. Die ist der geheime Teil des Schlüssels (ansible-key-ecdsa) sowie der öffentliche Teil des RSA-Schlüssels: ansible-key-ecdsa.pub (pub = public).

SSH-Key auf die entfernten Rechner kopieren

Damit eine passwortlose Anmeldung auf den entfernten Rechnern möglich ist, muss nun der öffentliche Teil des Schlüssels auf den entfernten Server kopiert werden. Das geht am einfachsten mit ssh-copyid

ssh-copy-id -id id_rsa.pub ansible@<entfernter Server>

Auf dem entfernten Server muss folgendes in die Datei /etc/sudoers eingetragen werden.

ansible ALL=(ALL) NOPASSWD ALL