Ansible je bezplatný a open-source automatizační nástroj sponzorovaný společností Red Hat. Pomocí ansible můžeme spravovat a konfigurovat systémy Linux a Windows, aniž bychom na ně instalovali agenta. V zásadě funguje na protokolu ssh a může konfigurovat více než sto serverů najednou. V terminologii ansible se systém, na kterém je nainstalován Ansible, nazývá řídicí hostitel / uzel a systémy, které spravuje ansible, se nazývají spravované hostitele.
V tomto příspěvku probereme, jak nainstalovat nejnovější verzi Ansible na Rocky Linux 8. Následují podrobnosti o nastavení mé laboratoře Ansible:
- Control Node – 192.168.1.170 – Minimal Rocky Linux 8
- Spravovaný hostitel 1 – 192.168.1.121 – Ubuntu 20.04 LTS
- Managed Host 2 – 192.168.1.122 – Rocky Linux 8
- uživatel sysops s právy správce
Instalovat Ansible pomocí příkazu dnf
1) Aktualizujte systém
Chcete-li aktualizovat rocky linux 8, spusťte příkaz dnf.
Aktualizace $ sudo dnf -y
Jakmile jsou všechny aktualizace nainstalovány, restartujte systém jednou.
Restart $ sudo
2) Nakonfigurujte úložiště EPEL
Balíček Ansible a jeho závislosti nejsou dostupné ve výchozích úložištích balíčků Rocky Linux 8. Abychom mohli nainstalovat ansible přes dnf , musíme nejprve nakonfigurovat úložiště EPEL.
Spusťte následující příkazy,
$ sudo dnf install -y epel-release
3) Nainstalujte Ansible pomocí příkazu dnf
Nyní jsme všichni připraveni nainstalovat ansible pomocí příkazu dnf, spustit
$ sudo dnf nainstalovat ansible -y
Jakmile ansible a jeho závislosti jsou úspěšně nainstalovány. Ověřte jeho verzi spuštěním následujícího příkazu,
$ ansible --version
Povolená instalace s pip
Pokud hledáte nejnovější verzi Ansible, nainstalujte si ansible s pip. Postupujte podle následujících kroků.
Poznámka:V době psaní tohoto příspěvku je k dispozici ansible 4.3.0
1) Nainstalujte všechny aktualizace
Nainstalujte všechny dostupné aktualizace pomocí příkazu beneath,
Aktualizace $ sudo dnf -y
Po instalaci aktualizací jednou restartujte systém
$ restartovat
2) Nainstalujte python 3.8 a další závislosti
Spuštěním následujících příkazů nainstalujte python 3.8 a další závislosti
$ sudo dnf modul -y nainstalovat python38$ alternativy sudo --config python
Napište 3 a stiskněte enter
3) Nainstalujte nejnovější verzi Ansible s pip
Spuštěním následujících příkazů jeden po druhém nainstalujte ansible,
$ sudo pip3 install setuptools-rust wheel$ sudo pip3 install --upgrade pip$ sudo python -m pip install ansible
Výstup výše uvedeného příkazu python by měl vypadat níže:
Výše uvedený výstup potvrzuje, že Ansible byl úspěšně nainstalován. Ověřte verzi Ansible pomocí následujícího příkazu ansible,
$ ansible --version
Ověřte Ansible instalaci
Kdykoli je Ansible nainstalován pomocí příkazu dnf nebo yum, pak se jeho výchozí konfigurační soubor ‚ansible.cfg‘ automaticky vytvoří ve složce ‚/etc/ansible‘. Ale když jej nainstalujeme pomocí pip, musíme jeho konfigurační soubor vytvořit ručně.
Pro každý projekt se doporučuje vytvořit ansible.cfg. Pro demonstrační účely vytvářím projekt automatizace. Spusťte následující příkaz mkdir,
$ automatizace mkdir$ automatizace cd
Vytvořte soubor ansible.cfg s následujícím obsahem
$ vi ansible.cfg[defaults]inventory =/home/sysops/auotmation/inventoryremote_user =sysopshost_key_checking =False[privilege_escalation]become=Truebecome_method=sudobecsebecome_user_user_FarootUložte a ukončete soubor.
Nyní vytvořte soubor inventáře pod projektem automatizace (složkou) s následujícím obsahem.
$ vi inventář[prod]192.168.1.121[test]192.168.1.122Uložte a zavřete soubor.
Pokud jste si pozorně všimli souboru ansible.cfg, použil jsem remote_user jako „sysops“. Pojďme tedy vytvořit ssh klíče pro uživatele sysops a sdílet je mezi spravovanými hostiteli.
$ ssh-keygen
Sdílejte klíče SSH pomocí příkazu ssh-copy-id,
$ ssh-copy-id [e-mailem chráněno]$ ssh-copy-id [e-mailem chráněno]
Poznámka:Spusťte následující příkaz na každém spravovaném hostiteli, abyste spustili všechny příkazy bez vyžádání hesla,
# echo "sysops ALL=(ALL) NOPASSWD:ALL"> /etc/sudoers.d/sysopsOvěřte připojení z řídicího uzlu ke spravovaným hostitelům pomocí modulu ping,
$ automatizace cd/$ ansible -i inventar all -m ping
Pojďme vytvořit ukázkovou příručku (web.yaml) k instalaci nginx a php na spravované hostitele,
$ vi web.yaml---- name:Play to Packages hostitelé: - test - prod tasks: - name:Install php and nginx package: name: name: - php - nginx status:presentUložte a zavřete soubor.
Spusťte playbook pomocí příkazu ansible-playbook,
$ ansible-playbook -i inventar web.yamlVýstup výše uvedeného příkazu by chtěl níže
Skvělé, výše uvedený výstup potvrzuje, že playbook byl úspěšně spuštěn, a také potvrzuje, že Ansible je nainstalován správně.
To je z tohoto příspěvku vše. Věřím, že tento příspěvek vám pomůže nainstalovat a používat Ansible na Rocky Linux 8. Podělte se prosím o své názory a dotazy v sekci komentářů níže.
Doporučená četba: Jak používat obslužné nástroje v Ansible Playbook
Jak nainstalovat Apache Subversion (SVN) na RHEL 8 / Rocky Linux 8 Jak nainstalovat Docker a Docker-Compose na Rocky Linux 8Rocky Linux