Jak zainstalować Ansible na Ubuntu 20.04 LTS?

How Install Ansible Ubuntu 20



W tym artykule pokażę, jak zainstalować Ansible na Ubuntu 20.04 LTS i skonfigurować hosty Ubuntu 20.04 LTS do automatyzacji Ansible. Więc zacznijmy.

Topologia sieci:







Tutaj linuxhint-711ea to maszyna Ubuntu 20.04 LTS, na której zainstaluję Ansible.



Następnie skonfiguruję hosty host1 (adres IP 192.168.20.162) i host2 (adres IP 192.168.20.153) dla automatyzacji Ansible i uruchamiaj na nich polecenia za pomocą Ansible z linuxhint-711ea maszyna.



po prostu zadzwonię host1 oraz host2 jako gospodarze Ansible w tym artykule.





Instalowanie Ansible:

Możesz łatwo zainstalować Ansible na Ubuntu 20.04 LTS z oficjalnego repozytorium pakietów Ubuntu.

Najpierw zaktualizuj pamięć podręczną repozytorium pakietów APT za pomocą następującego polecenia:



$sudotrafna aktualizacja

Pamięć podręczna repozytorium pakietów APT powinna zostać zaktualizowana.

Teraz zainstaluj Ansible za pomocą następującego polecenia:

$sudotrafnyzainstalowaćansibl

Aby potwierdzić instalację, naciśnij ORAZ a następnie naciśnij .

Należy zainstalować Ansible.

Teraz uruchom następujące polecenie, aby sprawdzić, czy ansible działa poprawnie.

$ansibl--wersja

Jak widać, polecenie ansible jest dostępne i działa poprawnie.

Generowanie klucza SSH:

Teraz musisz wygenerować klucz SSH na komputerze, na którym zainstalowałeś Ansible.

Aby wygenerować klucz SSH, uruchom następujące polecenie:

$ssh-keygen

Teraz naciśnij .

naciskać .

naciskać .

Należy wygenerować klucz SSH.

Konfigurowanie hostów Ubuntu do automatyzacji Ansible:

W tej sekcji pokażę, jak skonfigurować hosta Ubuntu ( host1 ) dla automatyki Ansible. Jeśli masz więcej niż jeden host, który chcesz zautomatyzować za pomocą Ansible, powtórz ten sam proces na każdym z hostów.

Hosty Ubuntu Ansible (które chcesz skonfigurować do automatyzacji Ansible) muszą mieć zainstalowany pakiet serwera SSH.

Najpierw zaktualizuj pamięć podręczną repozytorium pakietów APT za pomocą następującego polecenia:

$sudotrafna aktualizacja

Następnie zainstaluj serwer OpenSSH za pomocą następującego polecenia:

$sudotrafnyzainstalowaćopensh-serwer-oraz

W moim przypadku pakiet serwera OpenSSH jest już zainstalowany. Jeśli nie jest zainstalowany w twoim przypadku, powinien zostać zainstalowany.

Teraz sprawdź, czy sshd usługa działa z następującym poleceniem:

$sudosystemctl status sshd

Jak widać, sshd usługa jest aktywny (bieganie) i włączony (uruchamia się automatycznie przy starcie systemu).

Jeśli sshd usługa nie jest aktywny (uruchomiony) w twoim przypadku uruchom go ręcznie za pomocą następującego polecenia:

$sudosystemctl uruchom sshd

Jeśli sshd usługa nie jest włączony (nie dodany do uruchamiania systemu) w Twoim przypadku dodaj go do uruchamiania systemu ręcznie za pomocą następującego polecenia:

$sudosystemowywłączyćsshd

Teraz skonfiguruj zaporę, aby umożliwić dostęp SSH za pomocą następującego polecenia:

$sudoufw zezwólcisza

Powinieneś także stworzyć ansibl użytkownika i zezwalaj na dostęp sudo bez hasła do ansibl użytkownik.

Aby stworzyć ansibl użytkownika, uruchom następujące polecenie:

$sudoadduser ansible

Teraz wpisz hasło dla ansibl użytkownik i naciśnij .

Teraz wpisz ponownie hasło i naciśnij .

Teraz naciśnij .

Teraz naciśnij .

Teraz naciśnij .

Teraz naciśnij .

Teraz naciśnij .

Teraz wpisz oraz a następnie naciśnij .

jakiś ansibl należy utworzyć użytkownika.

Teraz skonfiguruj dostęp sudo bez hasła do ansibl użytkownik za pomocą następującego polecenia:

$wyrzucił 'ansible ALL=(ALL) NOPASSWD:ALL' | sudo trójnik /itp/sudoers.d/ansibl

Teraz znajdź adres IP hosta Ansible ( host1 ) za pomocą następującego polecenia:

$nazwa hosta -I

Tutaj adres IP w moim przypadku to 192.168.20.162 . Dla ciebie będzie inaczej. Więc pamiętaj, aby zastąpić go teraz swoim formularzem.

Teraz z komputera, na którym zainstalowałeś Ansible, skopiuj klucz publiczny SSH do hosta Ansible ( host1 ) w następujący sposób:

$ssh-copy-id ansible@192.168.20.162

Wpisz tak i naciśnij .

Teraz wpisz hasło dla ansibl użytkownik i naciśnij .

Publiczny klucz SSH należy skopiować do host1 .

Teraz wyłącz logowanie oparte na hasłach dla ansibl użytkownik za pomocą następującego polecenia:

$sudomod użytkownika-TENansibl

Teraz możesz tylko SSH do hosta Ansible ( host1 ) jak ansibl użytkownika bez hasła z komputera, z którego skopiowałeś klucz publiczny SSH (w tym przypadku komputera, na którym zainstalowałeś Ansible). Ale nie będziesz w stanie SSH do hosta Ansible ( host1 ) jak ansibl użytkownika z dowolnego innego komputera. Skonfigurowałem hosty Ansible w ten sposób ze względów bezpieczeństwa. Jako ansibl użytkownik nie potrzebuje hasła do uruchamiania poleceń administracyjnych, ryzykowne jest zezwolenie na logowanie oparte na hasłach dla ansibl użytkownik.

Teraz powinieneś być w stanie połączyć się przez SSH z hostem ansible host1 z komputera, na którym zainstalowałeś Ansible w następujący sposób:

$ciszaansibl@192.168.20.162

Jak widzisz, mam dostęp do hosta Ansible ( host1 ) jako użytkownik ansible bez hasła. Tak więc host Ansible ( host1 ) jest gotowy do automatyzacji Ansible.

Jeśli z jakiegoś powodu chcesz zezwolić na logowanie oparte na hasłach dla ansibl ponownie, uruchom następujące polecenie na hoście Ansible ( host1 ):

$sudomod użytkownika-Uansibl

W ten sam sposób możesz skonfigurować dowolną liczbę hostów dla automatyzacji Ansible.

W tym artykule skonfigurowałem tylko 2 hosty, host1 oraz host2 do demonstracji.

Testowanie Ansible:

Teraz utwórz nowy katalog projektu ~/Ansible-demo/ na komputerze, na którym zainstalowałeś Ansible w następujący sposób:

$mkdir~/ansible-demo

Teraz przejdź do ~/Ansible-demo/ katalog w następujący sposób:

$Płyta CD~/ansible-demo/

Teraz utwórz nowy zastępy niebieskie plik w katalogu projektu w następujący sposób:

$nanozastępy niebieskie

Teraz wpisz adresy IP lub nazwy DNS hostów Ansible ( host1 oraz host2 w moim przypadku) w zastępy niebieskie plik w następujący sposób:

192.168.20.162
192.168.20.153

Teraz zapisz plik, naciskając + X śledzony przez ORAZ i wtedy .

Teraz spróbuj pingować wszystkie hosty za pomocą Ansible w następujący sposób:

$ansibl wszystko-i./zastępy niebieskie-uansibl-m świst

NOTATKA: Tutaj opcja -u służy do określenia nazwy użytkownika (w tym przypadku ansible), której Ansible użyje do SSH do hostów.

Jak widać, wszystkie hosty można pingować. Tak więc hosty są gotowe do automatyzacji Ansible.

W ten sam sposób możesz uruchomić dowolne polecenie na hostach za pomocą Ansible w następujący sposób:

$ansibl wszystko-i./zastępy niebieskie-uansibl-mpowłoka-do 'echo '$(nazwa hosta) - $(nazwa hosta -I)''

Jak widać, polecenie przebiegło pomyślnie na każdym z hostów i wyświetlone zostaną dane wyjściowe.

W ten sposób instalujesz Ansible na Ubuntu 20.04 LTS i konfigurujesz hosty Ubuntu 20.04 LTS do automatyzacji Ansible. Dziękuję za przeczytanie tego artykułu.