Ansible Galaxy organizuje role i kolekcje utworzone przez społeczność. Zamiast przepisywać je od zera, możesz zainstalować go na komputerze za pomocą narzędzia linii poleceń Ansible Galaxy i użyć ich w swoich podręcznikach.
Możesz także napisać swoje role i kolekcje i przesłać je do Ansible Galaxy. To nie jest w zakresie tego artykułu.
W tym artykule pokażę Ci, jak używać narzędzia linii poleceń Ansible Galaxy do instalacji ról i kolekcji ansible Galaxy i używania ich w swoim podręczniku. Więc zacznijmy.
Wymagania wstępne:
Jeśli chcesz wypróbować przykłady tego artykułu,
1) Musisz mieć zainstalowany na komputerze Ansible.
2) Musisz mieć co najmniej 2 hosty Linux (Debian 10 i Centos 7) skonfigurowane do automatyzacji Ansible.
Istnieje wiele artykułów na temat Linuxhint poświęconych instalacji ansible i konfiguracji hostów do automatyzacji ansible. Możesz je sprawdzić w razie potrzeby.
Konfiguracja katalogu projektu:
Zanim zaczniemy, utwórzmy katalog projektu, abyśmy mogli zorganizować nasze pliki projektu.
Aby utworzyć katalog projektu galaxy-demo/ w Twoim DOM Directory, uruchom następujące polecenie:
$ mkdir -pv galaxy -demo/Playbooks, vars
Teraz przejdź do galaxy-demo/ katalog w następujący sposób:
$ CD Galaxy-Demo/
Utwórz plik konfiguracyjny Ansible Ansible.CFG W katalogu projektu w następujący sposób:
$ nano ansible.CFG
Wpisz w następujących liniach Ansible.CFG plik.
[domyślne]Po zakończeniu naciśnij + X śledzony przez Y I Aby uratować Ansible.CFG plik konfiguracyjny.
Utwórz plik zapasowy Ansible zastępy niebieskie W katalogu projektu w następujący sposób:
$ nano gospodarze
Wpisz w następujących wierszach w swoim zastępy niebieskie Plik zapasowy.
[Baza danych]Tutaj, VM1.Nodekite.com jest gospodarzem Debian 10 i VM9.Nodekite.com jest gospodarzem Centos 7.
Po zakończeniu naciśnij + X śledzony przez Y I Aby uratować zastępy niebieskie Plik zapasowy.
Aby sprawdzić, czy możesz pingować zdalne hosty ansible z komputera, uruchom następujące polecenie:
$ ansible all -u ansible -m ping
Jak widać, mogę pingować moje zdalne hosty ansible vm1.Nodekite.Com i VM9.Nodekite.com.
Poszukiwanie ról i kolekcji Galaxy: Ansible:
Możesz wyszukać role i kolekcje galaktyki ansible na oficjalnej stronie internetowej Ansible Galaxy.
Po załadowaniu strony kliknij ikonę wyszukiwania, aby wyszukać role i kolekcje galaktyki ansible.
Teraz wpisz to, czego szukasz, i kliknij ikonę wyszukiwania.
W tym przykładzie szukałem MySQL Server. Jak widać, wynik wyszukiwania jest wyświetlany.
Wyszukiwany termin MySQL Server Zwróciło 2 kolekcje i wiele ról.
Rolą jest moduł ansible, który robi określone rzeczy. Kolekcja ma wiele ról. To jest główna różnica między rolą a kolekcją.
Aby zobaczyć więcej informacji o roli, kliknij rolę.
Detale Zakładka pakietu ról pokaże informacje techniczne o roli.
Przeczytaj mnie Karta wyświetli informacje o instalacji i użytkowaniu roli.
W ten sam sposób pakiet windykacyjny będzie zawierał informacje o instalacji na temat Detale patka.
Na Treść Tab, role, które kolekcje będą instalowane.
Przeczytaj mnie Karta wyświetli przydatne informacje o kolekcji.
Instalowanie i korzystanie z ról ansible Galaxy:
W tej sekcji pokażę, jak zainstalować i użyć roli ansible galaktyki. Więc zacznijmy.
Powiedzmy; Chcesz zainstalować rolę galaktyki ansible Geerlingguy.Mysql.
Aby to zrobić, uruchom następujące polecenie:
$ ansible-galaxy instaluj Geerlingguy.MysqlRola galaktyki Ansible Geerlingguy.Mysql należy zainstalować.
Utwórz podręcznik instalt_database.Yaml w podręczniki/ katalog do testowania Geerlingguy.Mysql Rola w następujący sposób:
$ Nano Playbooks/instalt_database.YamlNastępnie wpisz następujące wiersze w instalt_database.Yaml plik.
- Hosty: baza danychPo zakończeniu naciśnij + X śledzony przez Y I Aby uratować instalt_database.Yaml plik.
Tutaj rola Geerlingguy.Mysql jest używany w Role Sekcja.
vars_files Sekcja służy do dodania wymaganych zmiennych roli/podręczników do podręcznika. Tutaj zmienne zostaną umieszczone w vars/baza danych.Yaml plik.
Teraz stwórz Baza danych.Yaml plik w vars/ katalog w następujący sposób:
$ nano vars/baza danych.YamlTeraz dodaj żądane zmienne w Baza danych.Yaml plik. Dodałem następujące zmienne w Baza danych.Yaml plik.
Mysql_Databases:Te zmienne konfigurują Geeringguy.Mysql Rola, aby stworzył nowego użytkownika Linuxhint, Ustawia hasło sekret dla Linuxhint Użytkownik tworzy nową bazę danych DB01 i dotacje Linuxhint Użytkownik Pełny dostęp do DB01 Baza danych.
Po zakończeniu naciśnij + X śledzony przez Y I Aby uratować Baza danych.Yaml plik.
Teraz możesz uruchomić instalt_database.Yaml Playbook w następujący sposób:
$ Ansible-Playbook Playbooks/Instalt_Database.YamlJak widać, podręcznik działa Geerlingguy.Mysql rola. Ukończenie może potrwać trochę czasu.
W tym momencie install_mysql.Yaml Poradnik powinien zostać ukończony.
Na moim VM1.Nodekite.com debian 10 gospodarz, The Mysql Usługa działa, jak widać na zrzucie ekranu poniżej,
Mogę również zalogować się do serwera bazy danych mysql jako Linuxhint użytkownik.
Jak widać, baza danych DB01 jest również stworzony.
W ten sposób instalujesz i używasz ról ansible galaxy.
Instalowanie i korzystanie z kolekcji Ansible:
W tej sekcji pokażę, jak zainstalować i użyć kolekcji ansible galaxy. Więc zacznijmy.
Powiedzmy; Chcesz zainstalować kolekcję Ansible Galaxy Geerlingguy.PHP_ROLES.
Aby to zrobić, uruchom następujące polecenie:
$ Ansible-Galaxy Collection Instaluj Geerlingguy.PHP_ROLESKolekcja Geerlingguy.PHP_ROLES należy zainstalować.
Aby korzystać z kolekcji, utwórz nowe PlayBook install_php.Yaml w podręczniki/ katalog w następujący sposób:
$ Nano Playbooks/instalt_php.YamlTeraz wpisz następujące wiersze w install_php.Yaml plik.
- Hosty: WebPo zakończeniu naciśnij + X śledzony przez Y I Aby uratować install_php.Yaml plik.
Te linie importują Geerlingguy.PHP_ROLES Kolekcja na swoim podręczniku.
w Role sekcja, możesz użyć potrzebnych ról z kolekcji. Tutaj dodałem 2 role (php I PHP_VERSIONS) z Geerlingguy.PHP_ROLES kolekcja.
php Rola nie ma żadnych zmiennych specyficznych dla roli.
Jeśli chcesz skonfigurować rolę za pomocą zmiennych, możesz je dodać w ramach vars sekcja rola następująco.
Można znaleźć role do użycia na oficjalnej stronie Galaxy Ansible z kolekcji
Oficjalna strona galaktyki ansible roli będzie zawierać informacje o tym, jakie zmienne można użyć do skonfigurowania roli.
Teraz możesz uruchomić install_php.Yaml Playbook w następujący sposób:
$ Ansible-Playbook Playbooks/instalt_php.YamlJak widać, Playbook działa. Ukończenie może potrwać trochę czasu.
W tym momencie podręcznik powinien zostać ukończony.
Jak widać, mogę uzyskać dostęp do serwera Apache 2 działającego na moim hosta Centos 7 VM9.Nodekite.com.
Stworzyłem też indeks.php plik w /var/www/html/ Katalog mojego Centos 7 Host VM9.Nodekite.com.
Jak widać, serwer WWW może obsługiwać indeks.php Strona poprawnie.
Tak więc instalujesz i używasz kolekcji Ansible Galaxy.
Wniosek:
W tym artykule wyjaśniłem, czym jest galaktyka ansible. Wykazałem również, jak instalować i korzystać z ról/kolekcji z Ansible Galaxy. Galaktyka ansible pomoże ci uniknąć ponownego wynalezienia koła, znanego również jako powtórzenie kodu. Powinieneś być w stanie wykonać swoje projekty ansible szybciej za pomocą ansible galaxy.