Verwalten von Abhängigkeiten mit dem Ansible PIP -Modul

Verwalten von Abhängigkeiten mit dem Ansible PIP -Modul
Python ist mit Ansible gut - eines der neuesten IT -Automatisierungswerkzeuge da draußen. Ansible erfordert, dass Python richtig läuft.

Trotzdem gibt es immer noch eine Lücke zwischen Python -Abhängigkeiten und Ansible. Zu diesem Zweck haben wir das PIP -Modul in Ansible, kurz für das bevorzugte Installationsprogramm. Hier werden wir in alles eingehen, was Sie über das Ansible PIP -Modul wissen müssen.

Was ist das PIP -Modul??

Wenn Sie einen Remote -Server mit Ansible einrichten, müssen Sie wahrscheinlich seine Python -Abhängigkeiten verwalten. Das Ansible Pip -Modul überbrückt die Lücke zwischen Ihnen und den Python -Paketen, die installiert sind/auf Ihren Servern installiert werden sollen.

Das PIP-Modul ist Teil des „Ansible-Core.Dies bedeutet, dass alle Ansible -Installationen das PIP -Modul bereit haben, sodass Sie die Kopfschmerzen der Installation nicht durchlaufen müssen.

Dieses Modul behandelt alles, von der Installation von Abhängigkeiten bis hin zum Ändern ihrer Versionen oder der gesamten Entfernung. Bevor wir uns mit diesem erstaunlichen Dienstprogramm befassen, müssen einige Voraussetzungen erfüllt sein.

PIP -Modulanforderungen

Es gibt zwei Hauptanforderungen, die erfüllt werden müssen, damit das PIP -Modul ordnungsgemäß funktioniert.

Ihr Zielpaket/Ihre Abhängigkeit muss bereits auf dem von Ihnen verwalteten Remote -Server vorhanden sein.

Wenn Sie die virtuelle Python -Umgebung verwenden möchten, muss das Paket „Virtualenv“ auf dem Remote -Server vorinstalliert sein.

Wenn Sie diese beiden Voraussetzungen bereits nicht gelöscht haben, stellen Sie sicher, dass Ihr System diese Kontrollkästchen ankreuzt. Sobald wir fertig sind, können wir das Ansible PIP -Modul verwenden!

Verwenden des Ansible PIP -Moduls

Es gibt eine Reihe von Dingen, die Sie mit diesem Modul erreichen können. Zuerst müssten Sie jedoch lernen, wie man es benutzt, welche Parameter erforderlich sind und welche Argumente übergeben werden müssen. Schauen wir uns einige der wichtigsten Parameter an.

Chdir - Ändert das aktuelle Verzeichnis vor der Ausführung.

bearbeitet - Nimmt Ja oder NEIN (Standard), passt die bearbeitbare Flagge über.

extra_args - Ermöglicht zusätzliche PIP -Argumente.

Name - Der Name/die URL der Bibliothek oder Abhängigkeit, die Sie installieren möchten (das Argument kann eine Zeichenfolge oder eine Liste sein)

Anforderungen - Nimmt den Pfad zu einer „Anforderungen“ -Datei, die auf dem Remote -Server vorhanden ist, auf den Sie zugreifen (funktioniert mit ChDIR)

Zustand - Definiert den Zustand des Moduls und nimmt abwesend oder ForceInstall oder neueste oder gegenwärtig (Standard).

Ausführung - Gibt die Version des Pakets in der an Name Parameter.

Ummask - Nimmt eine Oktalzeichenfolge und gibt die vor Installation angewendeten Ummask an.

Sobald Sie die Verwendung dieser Parameter erhalten haben und was an sie übergeben werden muss, wird die Verwendung des Ansible Pip -Moduls zu einem Kinderspiel. Schließlich sind nachstehend einige gleich wichtige Attribute angegeben.

check_mode - Überprüfen Sie die Statusvorhersage, ohne das Ziel zu ändern.

Plattform - Unterstützte Zielbetriebssysteme.

Nachdem Sie dies erledigt haben, sind Sie auf dem besten Weg, das PIP -Modul zur Installation und Arbeiten mit Python -Bibliotheken auf Ihren Remote -Systemen zu verwenden!

So installieren Sie ein Python -Paket?

Beginnen wir mit der Installation eines Python -Pakets auf einem Remote -Server. Wir werden die Parameter verwenden, die wir gerade besprochen haben, und sehen, wie unterschiedliche Argumentwerte die Installation beeinflussen.

Wir werden das Pytorch -Paket auf allen Hosts durch Passieren installieren alle Argumente an die Gastgeber Parameter. Außerdem die Name des PIP -Moduls in Pytorch.

- Hosts: Alles
Aufgaben:
- Name: Installieren des Pytorch -Pakets mit dem Ansible PIP -Modul
Pip:
Name: Pytorch

Sobald Sie damit fertig sind, können Sie das Spielbuch ausführen, indem Sie dies in die Linux -Shell eingeben:
Ansible-Playbook-Testbuch.YML

Sie können auch die genaue Version des gewünschten Pakets angeben, indem Sie einfach den Namen Parameter wie folgt ändern.

- Name: Installieren des Pytorch -Pakets mit dem Ansible PIP -Modul
Pip:
Name: pytorch == 1.9.1

Fernprotokolle wie Git+ oder Hg+ können auch Python -Pakete verwendet werden. So können Sie ein Paket aus einem Github -Repository installieren.

- Name: Verwenden eines Remote -Protokolls zum Installieren von Paketen
Pip:
Name: Git+http: // myrepository/order/mypackage

Wenn Sie fortfahren, besteht die Möglichkeit, Abhängigkeiten auch in bestimmten virtuellen Umgebungen zu installieren. Hier ist ein Beispiel dafür, wie das gemacht werden würde.

- Name: Pytorch in einer bestimmten virtuellen Umgebung installieren
Pip:
Name: Pytorch
virtualenv: /mypytorch /venv
virtualenv_sit_packages: Ja

In vielen Fällen können Sie auf Textdateien stoßen, die alle Anforderungen einer Anwendung enthalten, die Sie ausführen möchten.

- Name: Installieren von Anforderungen.TXT -Datei
Pip:
Anforderungen: /Ordner /Anforderungen.txt

Ebenso könnte das gleiche auch für eine virtuelle Umgebung getan werden. Im Folgenden finden Sie ein Beispiel für die Installation von Python -Paketen aus einer Anforderungsdatei in einer bestimmten virtuellen Umgebung.

- Name: Installieren von Anforderungen.TXT -Datei in einer virtuellen Umgebung
Pip:
Anforderungen: /Ordner /Anforderungen.txt
virtualenv: /order /venv

Vor diesem Hintergrund sollten Sie gut ausgestattet sein, um Python -Pakete mit dem Ansible PIP -Modul zu installieren. Übergehen wir zu einigen anderen wichtigen Befehlen.

So entfernen/installieren Sie ein Python -Paket?

In einem früheren Abschnitt dieses Leitfadens haben wir gelernt, dass die Zustand Der Parameter ist für jeden Bediener von entscheidender. Wenn Sie beispielsweise ein Python -Paket entfernen möchten, können Sie die explizit einstellen Zustand Parameter aus seinem Standardwert (gegenwärtig) Zu abwesend. So kann das getan werden.

- Hosts: Alles
Aufgaben:
- Name: Entfernen von Python -Paketen
Pip:
Name: Pytorch
Zustand: abwesend

Wenn wir den gleichen Weg fortsetzen, können wir eine Python -Bibliothek neu installieren, indem wir das ändern Zustand Wert des Parameters zu ForceInstall.

- Hosts: Alles
Aufgaben:
- Name: Eine Bibliothek neu installieren
Pip:
Name: Pytorch
Version 1.9.1
Zustand: Forcereinstall

Sie wissen jetzt, wie Sie nicht nur Python -Pakete mit dem Ansible PIP -Modul installieren, sondern auch, wie Sie sie entfernen oder neu installieren können!

Abschluss

In diesem Leitfaden haben wir uns das Ansible PIP -Modul angesehen - was es ist, was es tut und wie es verwendet wird. Es ist ein praktisches Dienstprogramm, mit dem Sie Python -Abhängigkeiten auf Remote -Servern verwalten können. Hoffentlich sind Sie jetzt bereit, Ihre Bibliotheken effizient zu verwalten!