Ansible je nástroj Infrastructure as Code, který svým uživatelům umožňuje ovládat mnoho serverů z centralizovaného umístění. Výhodou použití Ansible je, že používá SSH spolu se soubory YAML pro konfiguraci, aniž by bylo nutné vyžadovat další konfigurace. V tomto tutoriálu popíšu, jak nainstalovat a nakonfigurovat Ansible na systému Ubuntu 20.04.
Instalace Ansible na Ubuntu
Chcete-li nainstalovat Ansible, použijte oficiální úložiště Ubuntu 20.04 ve vašem systému. Otevřete okno terminálu pomocí Ctrl+Alt+T zkratku nebo použijte Aplikace-> Terminál. Poté aktualizujte úložiště pomocí:
$ sudo apt update
Poté bude aktualizována mezipaměť úložiště balíčků apt. Nyní nainstalujte Ansible pomocí:
$ sudo apt install ansible
Systém vás po chvíli vyzve, stiskněte Y na klávesnici a poté pokračujte stisknutím klávesy Enter.

Poté bude nainstalován Ansible. Ověřte tento krok pomocí:
$ ansible –verze
Nainstalovaná verze se zobrazí takto:
Vygenerujte klíč SSH
Nyní musíte vygenerovat klíč SSH na vašem systému, kde se instaluje Ansible. Chcete-li vygenerovat klíč, připojte příkaz:
$ ssh-keygen

Po zadání v okně terminálu stiskněte klávesu Enter.

Znovu stiskněte

Nyní znovu musíte stisknout klávesu

Jakmile stisknete enter, zobrazí se výstup velmi podobný tomuto. Bude mít klíč SSH, který bude použit v další polovině tutoriálu.

Konfigurace hostitelů Ubuntu pro automatizaci Ansible
Chcete-li automatizovat více než jednoho hostitele, musíte opakovat stejný proces pro každého hostitele. Všichni hostitelé Ubuntu (Ansible), kteří mají být konfigurováni, musí mít nainstalovaný balíček SSH. Nyní aktualizujeme balíček apt pomocí:
$ sudo apt update

Aktualizace začnou velmi podobně jako aktualizace zobrazené níže:

Dalším krokem je instalace serveru OpenSSH pomocí:
$ sudo apt install openssh-server -y

Po dokončení je třeba zkontrolovat stav služby sshd. Pro kontrolu použijte následující příkaz:
$ sudo systemctl status sshd

Výstup se zobrazí, jakmile stisknete

Jakmile zkontrolujete, že příkaz sshd běží správně a povolen, můžete pokračovat. Pokud není povoleno, spusťte jej ručně pomocí:
$ sudo systemctl start sshd

Nyní nakonfigurujeme firewall tak, aby umožňoval SSH přístup pomocí:
$ sudo ufw allow ssh

Zobrazí se výstup podobný tomu zobrazenému níže:

Dalším krokem je přidání ansible a poté povolit přístup bez hesla. Nyní vytvoříme dostupného uživatele pomocí:
$ sudo adduser ansible
Zadejte heslo pro ansible uživatel.
Poté vyplňte příslušné informace do všech dostupných polí.

Chcete-li nakonfigurovat přístup sudo bez hesla, zadejte do okna terminálu pro vašeho ansible uživatele následující:
$ echo "ansible ALL=(ALL) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/ansible

Zkontrolujeme IP adresu hostitele Ansible pomocí:
$ hostname -I
Host se objeví ve výstupu.
Nyní znáte název hostitele, takže veřejný klíč SSH zkopírujeme na hostitele Ansible takto:
$ ssh-copy-id [email protected]
Nyní zadejte Ano a pokračujte.
Klíč bude zkopírován do hostitele.
Chcete-li zakázat přihlašování pomocí hesla, použijte příkaz:
$ sudo usermod -L ansible
Zde jsme schopni přistupovat k hostiteli Ansible bez jakéhokoli hesla a je připraven k automatizaci.
Testování Ansible
Pro testování Ansible po instalaci a konfiguraci musí uživatelé vytvořit nový adresář projektu. Použijte k tomu příkaz mkdir:
$ mkdir ~/ansible-demo
Jakmile vytvoříte nový adresář, musíte k němu přistupovat pomocí:
$ cd ~/ansible-demo/
Poté vytvořte nový soubor hostitele ve stejném adresáři projektu pomocí:
$nano hosts

Ansible bude používat hostitele v tomto souboru pro SSH. Jakmile otevřete nano editor, zadejte IP adresu svého hostitele, kterého chcete pingnout.

Zkusme pingnout všechny hostitele pomocí Ansible pomocí:
$ ansible all -i ./hosts -u ansible -m ping
Úspěch, jako je tento, uvidíte níže:
Odinstalace Ansible
Chcete-li odinstalovat Ansible, použijte následující příkaz v okně terminálu:
$ sudo apt remove ansible

Chcete-li pokračovat v procesu odinstalace, zadejte Y.
Tímto způsobem mohou uživatelé snadno odstranit Ansible ze svého systému.
Závěr
V tomto článku jsme viděli proces instalace Ansible na systému Ubuntu 20.04 a jak nakonfigurovat a otestovat Ansible.