Inhaltsverzeichnis

Kategorien

Category cover

Automatisierung
18 posts

Category cover

Infrastruktur
4 posts

Category cover

Persönliche Sicherheit
3 posts

Category cover

Security
3 posts

Category cover

Bücher
2 posts

Category cover

CISO
2 posts

Category cover

mein Leben
1 posts

Installieren von Ansible

Andrea Dainese
24 September 2023
Post cover

Ansible wird als ein Python Modul verteilt, das über PIP installiert werden kann. Der Installationsprozess ist einfach, erfordert jedoch einige Überlegungen.

In der Regel ist der Automatisierungshost, das System, von dem aus alle Automatisierungsskripte stammen, eines der kritischsten Systeme innerhalb einer Infrastruktur. Es kann auf alle Systeme zugreifen, die automatisiert werden müssen, und enthält oft aus Bequemlichkeit die Anmeldeinformationen für diese Geräte. Obwohl Anmeldeinformationen in spezifischen Passwortmanagern gespeichert sind, finden sie sich häufiger in Klartext.

Aus Gründen der Einfachheit und Klarheit enthalten die einfachsten Playbooks Geräteanmeldeinformationen. Sie sind darauf ausgelegt, sich auf den Automatisierungsaspekt zu konzentrieren, anstatt auf die Sicherheit des Systems, über die in spezifischen Artikeln diskutiert wird.

Dennoch können wir mit einer bewährten Methode beginnen: die Erstellung einer dedizierten Python-Umgebung für Ansible und das Verfolgen der Versionen der installierten Pakete. Ansible wie viele andere Software, entwickelt sich ständig weiter, und Playbooks, die heute geschrieben werden, funktionieren möglicherweise nicht korrekt mit zukünftigen Versionen.

Die Version von Ansible, die wir verwenden werden, erfordert Python 3.9, das nicht über APT auf Ubuntu Linux 20 installierbar ist. Daher müssen wir es manuell aus den Quellen installieren:

cd /usr/src
wget https://www.python.org/ftp/python/3.9.16/Python-3.10.8.tgz
tar xzf Python-3.10.8.tgz
cd Python-3.10.8/
./configure --enable-optimizations
make -j 4
sudo make altinstall

Die aktualisierte Datei packages.txt ist im DevNetOps course material verfügbar und kann verwendet werden, um die erforderlichen Abhängigkeiten für alle verfügbaren Labore zu installieren.

sudo apt-get install -y < packages.txt

Im Allgemeinen ist es besser, einen dedizierten Benutzer für die Verwendung von Ansible zu haben, um sicherzustellen, dass seine Umgebung konfiguriert und zuverlässig ist. Lassen Sie uns also einen neuen Benutzer erstellen:

sudo useradd -m -d /opt/ansible -s /bin/bash ansible
sudo su - ansible

Nun können wir die Python-Umgebung vorbereiten und Ansible installieren:

python3.10 -m venv .venv
source .venv/bin/activate
pip install ansible ansible-pylibssh
pip freeze | grep ansible
ansible --version

Die aktualisierte Datei requirement.txt ist im DevNetOps course material verfügbar und kann verwendet werden, um die erforderlichen Abhängigkeiten für alle verfügbaren Labore zu installieren.

pip -r requirement.txt

Denken Sie daran, die neu erstellte Python-Umgebung vor dem Ausführen von Ansible zu aktivieren:

source .venv/bin/activate

Sie können die Umgebung mit folgendem Befehl deaktivieren:

deactivate

Da wir einen dedizierten Benutzer verwenden, können wir die virtuelle Umgebung direkt beim Anmelden laden, indem wir den folgenden Befehl zu .bashrc hinzufügen:

source .venv/bin/activate