Praca z katalogami w Ansible

Praca z katalogami w Ansible
Ansible to przydatne narzędzie do wydajnego zarządzania zasobami przez sieć urządzeń. Zapewnia użytkownikom różne opcje, wszystko w jednym pakiecie. Obejmuje to wiele opcji automatyzacji i konfiguracji danych. Głównymi elementami Ansible są niewielkie programy, które wykonują określone zadania w systemie. Są to nazywane modułami, a Ansible ma wiele z nich (ponad 800). Tak więc w tym artykule omawiamy, w jaki sposób możemy zainstalować ansible i używać go do utworzenia nowego katalogu, jeśli jeszcze nie istnieje. Więc bez zbędnych ceregieli, zanurzmy się w to.

Zainstaluj ansible

Najpierw instalujemy Ansible, jeśli nie jest jeszcze zainstalowany w naszych systemach. Aby zainstalować ansible, wykonaj kroki podane poniżej. Przejdź do następnej części, jeśli Ansible jest już zainstalowany.

Przede wszystkim aktualizujemy nasz system, aby wszystkie pakiety były aktualne i nie napotkano żadnych problemów podczas instalowania zależności dla Ansible. Aby zaktualizować system, wpisujemy następujące polecenie.

$ sudo apt aktualizacja && sudo apt aktualizację

Następnie instalujemy niektóre pakiety, które są warunkami wstępnymi do instalacji Ansible. Aby zainstalować te pakiety, wpisz następujące polecenie.

$ sudo apt instint oprogramowanie-properties-common python3 Python3-Pip Python3-dev sshpass apt-creport-https ca-certyfikaty libffi-dev libkrb5-dev libcurl4-openssl-dev libssl-dev-dev libssl-dev

Na koniec możemy zainstalować ANSible i sprawdzić jej wersję za pomocą następującego zestawu poleceń.

$ sudo -h pip3 instaluj ansible

I na koniec:

ansible --version

Teraz, gdy mamy zainstalowane ansible, potrzebujemy podręcznika do pisania skryptów, które zautomatyzują nasze codzienne zadania. Prosty edytor tekstu, taki jak VIM, powinien to zrobić, ponieważ nie zużywa dużo pamięci i obsługuje format „YAML”, w którym pisane są skrypty Ansible.

Zwróćmy się teraz do problemu, tworząc nowy katalog w Ansible, jeśli jeszcze nie istnieje. Opiszmy podstawy katalogu i wyjaśnimy, w jaki sposób możemy zrobić nowe katalogi na ansible z kilkoma przykładami.

Co to jest katalog?

Katalog to lokalizacja, która organizuje i przechowuje pliki na komputerze. Możesz myśleć o tym jako o mapie drogowej, która pokazuje przechowywaną treść oraz jej dokładną lokalizację i podział. Pomaga użytkownikowi nawigować po plikach w systemie, wyznaczając określoną ścieżkę dla każdego pliku, który mamy w naszym systemie.

Ten użyteczny mechanizm pomaga utrzymać nasz system zorganizowany bez powodowania problemów. Wyobraź sobie, że masz dwa mecze, Pinball1 i Pinball2. Te gry mają swoje katalogi z zapisanymi danymi zawierającymi wszelkie postępy graczy w dwóch grach. Gdyby nie było żadnych katalogów do wyróżnienia obu gier, folder „Zapisz dane” zawsze byłby zastąpiony przez grę, która została rozegrana ostatnia, tracąc wszystkie poprzednie dane.

Różnica między plik a katalogu

Pliki i katalogi to dwa różne terminy. Katalog jest określonym obszarem pamięci komputera zawierającego inne podrzędne i pliki. Z drugiej strony plik może być przechowywany w katalogu i zawiera informacje używane przez system do uruchamiania różnych aplikacji. Należy również zauważyć, że plik ma rozszerzenie, podczas gdy katalog nie.

Zrób katalog w Ansible

Możemy stworzyć katalog na ansible za pomocą modułu pliku. Ten moduł służy do zarządzania symbolami, katalogami i plikami. Ma także inne funkcje, takie jak narzucanie własności plików i katalogów i uprawnienia. Wszystkie te zadania są wykonywane na zdalnych hostach. Przykład pokazany poniżej wyjaśnia, w jaki sposób nowy katalog jest wykonany w Ansible, jeśli nie istnieje.

- Nazwa: demonstracja katalogu
plik:
ścieżka: /src /newdirectory
Stan: Directory
Właściciel: root
Grupa: root
Tryb: 0775

Możesz uruchomić podręczniki za pomocą następującego polecenia:

Ansible-Playbook Testbook.yml

Powyższy skrypt tworzy nowy katalog o nazwie „nowy dyrektor” ze ścieżką /etc /newdirectory. Tryb jest parametrem modułu pliku, który wskazuje, że właściciel i grupa katalogu może go wykonywać, czytać lub zapisać. Jednak inni mogą wykonywać lub odczytać katalog i jego zawartość.

Możemy stworzyć ten sam katalog w inny sposób, jak pokazano poniżej.

- Nazwa: demonstracja katalogu
Ansible.wbudowany.plik:
ścieżka: /src /newdirectory
Stan: Directory
Tryb: 0775

Sprawdź, czy katalog istnieje w Ansible

Sprawdzanie, czy określony katalog istnieje na ansible, jest zgodna z tą samą procedurą, co sprawdzanie pliku. Jedyną różnicą jest to, że używamy wartości ISDIR do potwierdzenia ścieżki katalogu.

- Nazwa: Sprawdź, czy katalog już istnieje
Odpluskwić:
MSG: „Istnieje katalog”
Kiedy: rejestr_directory.Stst.istnieje i rejestr_directory.Stat.isdir

Utwórz katalog z określoną ścieżką

- Gospodarze: Wszyscy
Zadania:
- Nazwa: katalog z określoną ścieżką
plik:
ścieżka:/home/folder1/my_new_directory
Stan: Directory

Powyższy skrypt tworzy nowy katalog w podfolderu „Folder1” w katalogu domowym. Katalog jest wykonany w module pliku, który obsługuje pliki, katalogi i operacje omówione powyżej.

Zmień uprawnienia katalogu

Możemy zmienić uprawnienia do tego, kto może odczytać, pisać lub wykonywać zawartość katalogu lub pliku na zdalnym hoście za pomocą Ansible. Skrypt podano poniżej.

- Gospodarze: Wszyscy
Zadania:
- Nazwa: Uprawnienia do katalogu
plik:
ścieżka:/home/folder1/my_new_directory
Stan: Directory
Tryb: „u = rw, g = wx, o = rwx”

Tutaj widzimy, że zmieniliśmy pozwolenie (tryb) na „u = rw, g = wx, o = rwx” To jest symboliczne wyrażenie, które mówi komputerowi, aby pozwolił wszystkim czytać i pisać w katalogu. Tryb może być wyrażeniem symbolicznym lub liczbą ósemkowym, takim jak „0755”.

Niejednoznaczny katalog

W przypadku, gdy nie jesteśmy pewni, czy katalog już istnieje, czy nie w naszym systemie, możemy napisać skrypt, który zapewnia, że ​​katalog zostanie sprawdzony, czy istnieje. Jeśli tak nie jest, na zdalnym hoście zostanie wykonany nowy katalog według.

- Gospodarze: Localhost
Zadania:
- Nazwa: Sprawdź katalog, jeśli istnieje
STAT:
ścieżka: /home /dir1
Zarejestruj się: NewFolder
- Nazwa: „W przypadku katalogu istniał”
odpluskwić:
MSG: „Istnieje dany katalog”
Kiedy: Newfolder.Stat.istnieje
- Nazwa: „Ansible Utwórz katalog, jeśli nie istnieje”
plik:
ścieżka: /home /dir1
Stan: Directory
Tryb: 0755
Grupa: root
Właściciel: root
Kiedy: nowy.Stat.istnieje == Fałsz

Tutaj grupa i root pokazują, że dostęp jest dozwolony dla właściciela i grupy „root”

Wniosek

W tym artykule dowiedzieliśmy się o modułach STAT i plików w Ansible oraz o tym, jak pomagają one zarządzać katalogami i plikami. Przeszliśmy także Skrypty Ansible, na wypadek, gdybyśmy chcieli stworzyć katalog, który jeszcze nie istnieje. Mamy nadzieję, że po przeczytaniu tego artykułu byłeś w stanie znaleźć rozwiązanie swojego zamieszania w zakresie katalogów w Ansible.