GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak nainstalovat Ansible na Ubuntu 20.04 LTS

Konfigurace a nasazení aplikací na jednom serveru je obvykle jednoduchý úkol. Ve složitém IT prostředí s více servery to však může být skličující a časově náročný úkol. Ansible, vyvinutý a spravovaný společností RedHat, je open-source nástroj pro konfiguraci serveru a poskytování softwaru, který zjednodušuje nasazení aplikací a správu konfigurace. Zvedá váhu provozních týmů IT a automatizuje konfiguraci serverů a nasazování aplikací jednoduchým a efektivním způsobem.

Ve srovnání se svými protějšky, jako je kuchař a loutka, je Ansible nejpoužívanějším nástrojem, protože nevyžaduje, aby agent komunikoval se vzdálenými hostiteli. Ansible využívá protokol SSH ke komunikaci se vzdálenými cíli a přitom zůstávají zdroje CPU vzdálených hostitelů nedotčeny.

Nastavení Ansible Lab

Pro naše testovací prostředí máme dva uzly:řídicí uzel, kde bude nainstalován Ansible, a vzdálený hostitel, který bude nakonfigurován z řídicího uzlu Ansible:

Kontrolní uzel Ansible IP 192.168.2.101 Ubuntu 20.04

Vzdálený hostitel IP 192.168.2.104 Ubuntu 20.04

Dále se ujistěte, že máte uživatele sudo nakonfigurován na řídicím uzlu Ansible a že démon SSH běží na obou uzlech.

Bez dalších okolků se pojďme dotknout základny, jak nainstalovat Ansible na Ubuntu 20.04

Krok 1:Nainstalujte Ansible

Hned zkraje se přihlaste na hlavní server Ansible a nainstalujte Ansible jako uživatele sudo následovně.

$ sudo apt install ansible

To nainstaluje Ansible spolu s řadou balíčků Python3, které jsou nezbytné pro bezproblémový běh Ansible.

Po instalaci můžete potvrdit verzi Ansible, jak je uvedeno.

Výstup poskytuje některé rozsáhlé informace. Zobrazuje verzi Ansible – v tomto případě Ansible 2.9.6 – modul a cestu ke spustitelnému souboru Ansible a také verzi Pythonu nainstalovanou ve vašem systému.

Konfigurační soubor – ansible.cfg – je konfigurační soubor Ansible umístěný v /etc/ansible adresář. Nastavení určují, jak Ansible běží a jak komunikuje se vzdálenými klienty. Adresář navíc obsahuje soubor inventáře s názvem hosts. Zde jsou definováni vzdálení nebo spravovaní hostitelé. Zatímco se v tomto tutoriálu protahujeme, definujeme vzdáleného hostitele v tomto souboru inventáře.

Krok 2:Nastavte přihlášení SSH bez hesla

Protokol SSH poskytuje dva způsoby ověřování:heslo a ověřování veřejným/soukromým klíčem. Pomocí klíčů SSH nastavíme metodu přihlašování ssh bez hesla, abychom poskytli bezpečnější a pohodlnější způsob interakce se vzdáleným hostitelem. Přihlašovací metoda SSH bez hesla poskytuje bezproblémový způsob interakce s hostitelem, protože při spouštění souborů playbooku nebudeme muset zadávat heslo.

Chcete-li nastavit přihlašování SSH bez hesla, nejprve vygenerujeme pár klíčů SSH, jak je znázorněno:

$ ssh-keygen

Úplným stisknutím ENTER přijmete výchozí návrhy.

Pár klíčů SSH obsahuje soukromý a veřejný klíč. Máme id_rsa což je soukromý klíč. Také máme id_rsa.pub což je veřejný klíč.

Dále zkopírujeme veřejný klíč do vzdáleného hostitele pomocí uživatele root jako uživatele vzdáleného hostitele.

POZNÁMKA

Před zkopírováním souboru veřejného klíče ssh nakonfigurujeme vzdáleného uživatele v konfiguračním souboru Ansible, jak je znázorněno.

$ sudo vim /etc/ansible/ansible.cfg

Nastavte vzdáleného uživatele na root.

remote_user=root

Uložte soubor.

Dále přejděte ke vzdálenému hostiteli a povolte vzdálené přihlášení root úpravou /etc/ssh/ssh_config soubor.

$ sudo vim /etc/ssh/ssh_config

Připojte řádek níže

PermitRootLogin yes

Znovu uložte a ukončete.

Nyní můžeme pokračovat a zkopírovat veřejný klíč SSH na vzdálený hostitel, jak je znázorněno.

$ ssh-copy-id [email protected]

Pokud se přihlašujete poprvé jako uživatel root, zobrazí se výzva, jak je znázorněno na obrázku níže. Jednoduše zadejte „ano“ a pokračujte v připojení. Jakmile poskytnete root heslo vzdáleného hostitele, klíč SSH bude přidán do kořenového domovského adresáře.

Pro další přihlášení nebudete muset zadávat heslo. Chcete-li to ověřit, ukončete vzdálený hostitel a zkuste se přihlásit ještě jednou.

$ ssh [email protected]

Tím se automaticky dostanete do shellu vzdáleného hostitele, jak je znázorněno.

Perfektní! Naše nastavení přihlašování SSH bez hesla je dokončeno. Nyní vytvoříme soubor playbooku, který nainstaluje webový server Apache.

Krok 3:Přidejte vzdáleného hostitele do konfiguračního souboru Ansible

Dále definujeme našeho vzdáleného hostitele v souboru inventáře Ansible, což je ve výchozím nastavení /etc/ansible/hosts soubor. Otevřete tedy soubor.

 $ sudo vim /etc/ansible/hosts

Soubor hostuje je strukturován ve formátu INI. Do webových serverů přidáme IP adresu našeho hostitele název skupiny.

[webservers]
192.168.2.104

Uložte soubor inventáře a zavřete. Chcete-li ověřit hostitele definované v souboru inventáře, spusťte:

 $ ansible webservers --list-hosts

Případně pro kontrolu všech hostitelů ve všech skupinách hostitelů spusťte:

 $ ansible all --list-hosts

Nyní otestujeme přítomnost modulu Ansible Python na vzdáleném hostiteli.

 $ ansible -m ping webservers

POZNÁMKA:

ping modul není ICMP příkaz ping. Je to jen triviální test, který zkontroluje, zda je nainstalován modul Python3 a přítomnost SSH.

Níže uvedený výstup ukazuje, že příkaz byl úspěšný. Výstup také zobrazuje IP vzdáleného hostitele definovaného pod webovými servery skupina. Pokud máte více hostitelů definovaných v několika skupinách, použijte všichni možnost.

 $ ansible -m ping all

Krok 4:Vytvořte soubor playbooku pro konfiguraci vzdáleného hostitele

S definovaným vzdáleným hostitelem nyní vytvoříme soubor playbooku pro instalaci webového serveru Apache. Soubor playbooku je soubor YAML v Ansible, který stanoví úkoly, které mají být provedeny na vzdáleném hostiteli.

 $ sudo vim /etc/ansible/apache.yml

Soubor playbooku je definován níže. Všimněte si, že soubor začíná 3 pomlčkami ( — ). Všimněte si také odsazení.

Nakonec spusťte soubor playbook následovně.

$ ansible-playbook /etc/ansible/apache.yml

Během běhu provádí playbook úkoly pečlivě a zobrazuje každou akci na terminálu. Nainstaluje webový server Apache a spustí službu.

Chcete-li potvrdit, že webový server byl úspěšně nainstalován, spusťte prohlížeč a procházejte IP vzdáleného hostitele, jak je znázorněno:

http://server-ip/

Shrnutí

Ansible je široce používaný automatizační nástroj v DevOps a používají jej tisíce vývojářů a systémových administrátorů ke konfiguraci a nasazení aplikací na serverech. Šetří čas a minimalizuje úsilí potřebné pro obsluhu velkého množství serverů v komplexní IT infrastruktuře. Doufáme, že si můžete pohodlně nainstalovat a nakonfigurovat Ansible na Ubuntu 20.04.


Ubuntu
  1. Jak nainstalovat Docker na Ubuntu 22.04 / 20.04 LTS

  2. Jak nainstalovat a nakonfigurovat Ansible na Ubuntu 18.04 LTS

  3. Jak nainstalovat Ansible na Ubuntu 18.04 LTS

  1. Jak nainstalovat PlayOnLinux na Ubuntu 20.04 LTS

  2. Jak nainstalovat MariaDB v Ubuntu 20.04 LTS

  3. Jak nainstalovat Ansible AWX na Ubuntu 20.04 LTS

  1. Jak nainstalovat Ansible na Ubuntu 20.04 LTS / 21.04

  2. Jak nainstalovat Minikube na Ubuntu 20.04 LTS / 21.04

  3. Jak nainstalovat Spotify na Ubuntu 18.04 LTS