Zarządzanie zależnościami z modułem Ansible PIP

Zarządzanie zależnościami z modułem Ansible PIP
Python jest w dobrych stosunkach z Ansible - jednym z najnowszych narzędzi do automatyzacji IT. Ansible wymaga, aby Python działał poprawnie.

Niemniej jednak nadal istnieje luka, którą należy wypełnić między zależnościami Python a Ansible. W tym celu mamy moduł PIP w Ansible, krótki dla preferowanego programu instalatora. Tutaj przejdziemy do wszystkiego, co musisz wiedzieć o module Ansible PIP.

Jaki jest moduł PIP?

Jeśli masz zdalny serwer skonfigurowany z AnSable, prawdopodobnie będziesz musiał zarządzać jego zależnościami Python. Moduł Ansible PIP pomostuje lukę między tobą a pakietami Python zainstalowanymi/do zainstalowania na serwerach.

Moduł PIP jest częścią „Ansible-Core.„Oznacza to, że wszystkie instalacje Ansible mają do pracy moduł PIP, więc nie będziesz musiał przejść przez ból głowy instalacji.

Ten moduł obsługuje wszystko, od instalowania zależności po zmianę ich wersji lub ich usuwanie. Jednak zanim przejdziemy do sposobu korzystania z tego niesamowitego narzędzia, należy spełnić pewne warunki wstępne.

Wymagania modułu PIP

Istnieją dwa główne wymagania, które należy spełnić, aby moduł PIP działał poprawnie.

Twój pakiet docelowy/zależność musi być już obecna na zarządzanym serwerze zdalnym.

Jeśli chcesz użyć środowiska wirtualnego Python, pakiet „VirtualenV” musi zostać wstępnie zainstalowany na zdalnym serwerze.

Jeśli nie masz już tych dwóch warunków wstępnych, śmiało i upewnij się, że system zaznacza te pola wyboru. Po zakończeniu możemy przejść do używania modułu Ansible PIP!

Za pomocą modułu Ansible PIP

Istnieje wiele rzeczy, które możesz osiągnąć dzięki temu module. Jednak najpierw musisz nauczyć się, jak go używać, które parametry są wymagane i które argumenty należy przekazać. Spójrzmy na niektóre z najważniejszych parametrów.

chdir - Zmienia bieżący katalog przed wykonaniem.

edytowalny - Trwa Tak Lub NIE (domyślnie), przekazuje edytowalną flagę.

extra_args - Pozwala na dodatkowe argumenty PIP.

nazwa - Nazwa/URL biblioteki lub zależności, którą chcesz zainstalować (argument może być ciągiem lub listą)

wymagania - Podejmuje ścieżkę do pliku „wymagań”, który jest obecny na zdalnym serwerze, do którego dostępny jest (działa z CHDIR)

państwo - Definiuje stan modułu i przyjmuje nieobecny Lub ForceInstall Lub najnowszy Lub obecny (domyślny).

wersja - Określa wersję pakietu w nazwa parametr.

Umask - Bierze sznur awiaryczny i określa UMASK zastosowany przed instalacją.

Po zużyciu używania tych parametrów i tego, co należy im przekazać, używanie modułu Ansible PIP staje się kawałkiem ciasta. Wreszcie, podano poniżej niektóre równie ważne atrybuty.

check_mode - Sprawdź prognozę statusu bez modyfikowania celu.

platforma - Obsługiwane docelowe systemy operacyjne.

Dzięki temu jesteś na dobrej drodze do korzystania z modułu PIP do instalacji i pracy z bibliotekami Python w twoich systemach zdalnych!

Jak zainstalować pakiet Python?

Zacznijmy od zainstalowania pakietu Pythona na zdalnym serwerze. Użyjemy parametrów, które właśnie omówiliśmy i zobaczymy, jak różne wartości argumentów wpływają na instalację.

Przechodząc przez przechodzenie pakietu Pytorch na wszystkich hostach Wszystko argumenty do zastępy niebieskie parametr. Ponadto nazwa modułu pip w Pytorch.

- Gospodarze: Wszyscy
Zadania:
- Nazwa: Instalowanie pakietu Pytorch za pomocą modułu Ansible PIP
pypeć:
Nazwa: Pytorch

Po zakończeniu tego możesz uruchomić podręcznik, wpisując to do linuków: Linux Shell:
Ansible-Playbook Testbook.yml

Możesz także określić dokładną wersję żądanego pakietu, po prostu zmieniając parametr nazwy w następujący sposób.

- Nazwa: Instalowanie pakietu Pytorch za pomocą modułu Ansible PIP
pypeć:
Nazwa: Pytorch == 1.9.1

Zdalne protokoły, takie jak GIT+ lub HG+, mogą być również używane do pozyskiwania pakietów Python. Oto jak możesz zainstalować pakiet z repozytorium Github.

- Nazwa: Korzystanie z protokołu zdalnego do instalowania pakietów
pypeć:
Nazwa: git+http: // myRepository/Folder/MyPackage

Istnieje opcja zainstalowania zależności również w niektórych środowiskach wirtualnych. Oto przykład tego, jak to się stało.

- Nazwa: Instalowanie Pytorch w określonym środowisku wirtualnym
pypeć:
Nazwa: Pytorch
Virtualenv: /MyPitorch /Venv
Virtualenv_Site_packages: Tak

W wielu przypadkach możesz napotykać pliki tekstowe zawierające wszystkie wymagania niektórych aplikacji, które chcesz uruchomić.

- Nazwa: Instalowanie z wymagań.plik txt
pypeć:
Wymagania: /folder /wymagania.tekst

Podobnie to samo można zrobić również dla środowiska wirtualnego. Poniżej znajduje się przykład instalacji pakietów Pythona z pliku wymagań w określonym środowisku wirtualnym.

- Nazwa: Instalowanie z wymagań.plik txt w środowisku wirtualnym
pypeć:
Wymagania: /folder /wymagania.tekst
Virtualenv: /folder /venv

To powiedziawszy, powinieneś być dobrze wyposażony do instalacji pakietów Python za pomocą modułu Ansible PIP. Przejdźmy do innych ważnych poleceń.

Jak usunąć/ponownie zainstalować pakiet Python?

We wcześniejszej części tego przewodnika dowiedzieliśmy się, że państwo Parametr ma kluczowe znaczenie dla każdego operatora, którego chcemy zastosować do niedoceniania pakietu. Na przykład, jeśli chcesz usunąć pakiet Python, możesz wyraźnie ustawić państwo parametr z wartości domyślnej (obecny) Do nieobecny. Oto, jak to można zrobić.

- Gospodarze: Wszyscy
Zadania:
- Nazwa: Usuwanie pakietów Pythona
pypeć:
Nazwa: Pytorch
Stan: nieobecny

Kontynuując tę ​​samą ścieżkę, możemy ponownie zainstalować bibliotekę Python, zmieniając państwo wartość parametru do ForceInstall.

- Gospodarze: Wszyscy
Zadania:
- Nazwa: Ponowna instalowanie biblioteki
pypeć:
Nazwa: Pytorch
wersja 1.9.1
Stan: forcereInstall

Teraz wiesz, jak nie tylko zainstalować pakiety Python za pomocą modułu Ansible PIP, ale także jak je usunąć lub ponownie zainstalować!

Wniosek

W tym przewodniku spojrzeliśmy na moduł Ansible PIP - co to jest, co robi i jak go używać. Jest to przydatne narzędzie, które pozwala zarządzać zależnościami Python od zdalnych serwerów. Mam nadzieję, że jesteś teraz gotowy do wydajnego zarządzania bibliotekami!