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.