Možné

Snadná instalace více balíčků na CentOS pomocí Ansible

Snadná instalace více balíčků na CentOS pomocí Ansible
Na Ansible můžete použít dnf nebo Mňam modul pro instalaci softwarových balíčků na hostitelích CentOS nebo RHEL. Ve výchozím nastavení tyto moduly instalují pouze jeden softwarový balíček. Můžete použít dnf nebo Mňam modul několikrát ve vaší příručce Ansible a nainstalujte tolik softwarových balíků, kolik chcete. Nejedná se však o nejefektivnější způsob, jak toho dosáhnout, protože se bude hodně opakovat kód, kterému bychom se chtěli pokud možno vyhnout. Naštěstí můžeme pomocí smyček snadno nainstalovat tolik softwarových balíků, kolik chceme, bez opakování kódu.

Tento článek vám ukáže, jak nainstalovat více softwarových balíčků na hostitele CentOS / RHEL pomocí smyčky Ansible. Pojďme tedy začít.

Předpoklady

Chcete-li vyzkoušet příklady v tomto článku,
1) Musíte mít ve svém počítači nainstalovanou aplikaci Ansible.
2) Musíte mít alespoň hostitele CentOS / RHEL 7 nebo 8 nakonfigurovaného pro automatizaci Ansible.

Existuje mnoho článků o LinuxHint věnovaných instalaci Ansible a konfiguraci hostitelů pro automatizaci Ansible. V případě potřeby je můžete zkontrolovat.

Nastavení adresáře projektu

Než se přesuneme dále, vytvoříme adresář projektu, abychom věci trochu uspořádali.

Chcete-li vytvořit adresář projektu centos-kg / a všechny požadované podadresáře (ve vašem aktuálním pracovním adresáři), spusťte následující příkaz:

$ mkdir -pv centos-pkg / příručky

Po vytvoření adresáře projektu přejděte do adresáře projektu následujícím způsobem:

$ cd centos-pkg /

Dále vytvořte a hostitelé soubor inventáře takto:

$ nano hostitelé

Přidejte IP adresu nebo DNS název hostitele (vm3.nodekite.com, v mém případě) vašich hostitelů CentOS / RHEL v souboru inventáře (jeden hostitel na řádek).

Až budete hotovi, uložte soubor stisknutím + X, následován Y a .

Vytvořte konfigurační soubor Ansible zodpovědný.srov v adresáři projektu takto:

$ nanoodpovědný.srov

Potom zadejte následující řádky do zodpovědný.srov soubor.

[výchozí]
inventář = hostitelé
host_key_checking = False

Až budete hotovi, uložte zodpovědný.srov soubor stisknutím + X, následován Y a .

Zkuste ping na všechny hostitele CentOS / RHEL, které jste přidali do svého hostitelé soubor inventáře takto:

$ ansible vše -u ansible -m ping

Jak vidíte, můj hostitel CentOS 8 je přístupný.

Instalace jediného softwarového balíčku

Tato část vám ukáže, jak nainstalovat jeden softwarový balíček pomocí dnf nebo Mňam modul Ansible na vašich hostitelích CentOS / RHEL.

Nejprve vytvořte nový scénář install_package.yaml v knihy o hře / adresář takto:

$ nano playbooks / install_package.yaml

Dále zadejte následující řádky do pole install_package.yaml soubor.

- hostitelé: všichni
uživatel: odpovědný
stát se: Pravda
úkoly:
- name: Nainstalujte balíček httpd
dnf:
název: httpd
stav: přítomen
update_cache: Pravda

Až budete hotovi, uložte soubor stisknutím + X, následován Y a .

Zde jsem přidal pouze jeden úkol, Nainstalujte balíček httpd. Účelem této úlohy je instalace httpd balíček na CentOS / RHEL 8.

CentOS / RHEL 7 nepoužívá dnf správce balíčků, používá Mňam správce balíčků. Pokud tedy používáte CentOS / RHEL 7, změňte se dnf na Mňam, jak je uvedeno na snímku obrazovky níže. Žádné další změny nejsou nutné.

The název volba se používá k určení dnf nebo Mňam modul název balíčku, který se pokoušíte nainstalovat. V tomto případě to bude httpd balík.

The Stát volba se používá k určení dnf nebo Mňam modulujte akci (tj.E. nainstalovat, upgradovat, odebrat) by měl převzít daný balíček. V tomto případě je akce současnost, dárek.

Podporované hodnoty Stát možnosti jsou:

současnost, dárek - nainstaluje balíček, pokud již není nainstalován.

nejnovější - nainstaluje balíček, pokud již není nainstalován; pokud je již nainstalován, modul zkontroluje aktualizace; pokud je k dispozici aktualizovaná verze balíčku, nainstaluje se nová verze.

chybí - odstraní balíček, pokud je nainstalován.

Pokud update_cache možnost je nastavena na Skutečný, mezipaměť úložiště balíků DNF / YUM bude aktualizována před instalací balíčku.

Spusťte install_package.yaml playbook, a to následovně:

$ ansible-playbook playbooks / install_package.yaml

Jak vidíte, scénář install_package.yaml běžel úspěšně.

Jak vidíte, httpd balíček je nainstalován na mém hostiteli CentOS 8, který jsem přidal na můj hostitelé inventární soubor.

$ sudo dnf seznam nainstalován | grep httpd

Pokud používáte CentOS / RHEL 7, použijte Mňam správce balíčků místo dnf správce balíčků k ověření, zda je balíček nainstalován.

$ sudo yum nainstalován seznam | grep httpd

Instalace více softwarových balíčků pomocí smyčky with_items

Předchozí část tohoto článku vám ukázala, jak nainstalovat jeden softwarový balíček na hostitele CentOS / RHEL pomocí Ansible dnf/Mňam modul. Tato část vám ukáže, jak nainstalovat více softwarových balíčků na hostitele CentOS / RHEL pomocí Ansible with_items smyčka.

Nejprve vytvořte nový scénář install_packages.yaml, jak následuje:

$ nano playbooks / install_packages.yaml

Do řádku zadejte následující řádky install_packages.yaml soubor.

- hostitelé: všichni
uživatel: odpovědný
stát se: Pravda
úkoly:
- name: Nainstalujte všechny balíčky
dnf:
jméno: 'item'
stav: přítomen
update_cache: Pravda
with_items:
httpd
php
vsftpd

Po dokončení stiskněte + X, následován Y a , uložit install_packages.yaml soubor.

Zde jsem definoval názvy balíků (httpd, php, vsftpd), kterou chci nainstalovat pomocí with_items smyčka.

Název balíčku jsem nahradil proměnnou položka. The položka proměnná bude aktualizována s názvem balíčku v každé iteraci.

Spusťte install_packages.yaml playbook, a to následovně:

$ ansible-playbook playbooks / install_packages.yaml

Jak vidíte, scénář install_packages.yaml běžel úspěšně.

The httpd, php, a vsftpd balíčky jsou nainstalovány na mém hostiteli CentOS 8, jak vidíte na obrázku níže.

$ sudo dnf seznam nainstalován | grep httpd
$ sudo dnf seznam nainstalován | grep php
$ sudo dnf seznam nainstalován | grep vsftpd

Instalace více softwarových balíčků pomocí smyčkové smyčky

Počínaje Ansible 2.5, doporučený způsob použití smyček v příručce je použití smyčka klíčové slovo, místo with_items klíčové slovo. Proto jsem viděl varování, když jsem spustil install_packages.yaml příručky v dřívější části tohoto článku.

Práce se smyčkami pomocí smyčka klíčové slovo je velmi snadné.

Nejprve otevřete příručku install_packages.yaml (z předchozího příkladu) takto:

$ nano playbooks / install_packages.yaml

V install_packages.yaml playbook, stačí nahradit tento výraz with_items s termínem smyčka, jak je uvedeno na snímku obrazovky níže. Nemusíte nic měnit.

Po dokončení stiskněte + X, následován Y a , uložit install_packages.yaml soubor.

Spusťte install_packages.yaml playbook, a to následovně:

$ ansible-playbook playbooks / install_packages.yaml

Jak vidíte, úkol Nainstalujte všechny balíčky běžel dnf/Mňam modul celkem třikrát; jednou pro každou smyčku položka.

The httpd, php, a vsftpd balíčky jsou nainstalovány na mém hostiteli CentOS 8, jak vidíte na obrázku níže.

$ sudo dnf seznam nainstalován | grep httpd
$ sudo dnf seznam nainstalován | grep php
$ sudo dnf seznam nainstalován | grep vsftpd

Instalace více softwarových balíků pomocí syntaxe pole

Dřívější části tohoto článku vám ukázaly, jak používat with_items a smyčka Loops in Ansible to install multiple software packages on CentOS / RHEL 7 or 8, without any code repetition. Tato část vám ukáže, jak dělat totéž s jednodušší syntaxí pole.

Nejprve otevřete install_packages.yaml playbook, a to následovně:

$ nano playbooks / install_packages.yaml

Odstranit with_items nebo smyčka sekce od úkolu a změňte název možnost ['httpd', 'php', vsftpd '], jak je uvedeno na snímku obrazovky níže.

Po dokončení stiskněte + X, následován Y a , uložit install_packages.yaml hrací kniha.

Zde každý citovaný řetězec uvnitř hranatých závorek ([]) je prvek pole (v mém případě název softwarového balíčku). Každý prvek pole by měl být oddělen čárkou (,). Můžete přidat tolik prvků pole, kolik chcete. Přidal jsem pouze tři prvky, httpd, php, a vsftpd.

Spusťte install_packages.yaml playbook, a to následovně:

$ ansible-playbook playbooks / install_packages.yaml

Jak vidíte, softwarové balíčky httpd, php, a vsftpd jsou nainstalovány na mém hostiteli CentOS 8.

$ sudo dnf seznam nainstalován | grep httpd
$ sudo dnf seznam nainstalován | grep php
$ sudo dnf seznam nainstalován | grep vsftpd

Závěr

Tento článek vám ukázal, jak používat with_items a smyčka smyčky, stejně jako syntaxe pole, s Ansible Mňam/dnf modul pro instalaci více softwarových balíčků na hostitele CentOS / RHEL 7 nebo 8.

Další informace najdete v oficiální dokumentaci Ansible.

[1] Oficiální dokumentace smyček Ansible
[2] Oficiální dokumentace Ansible with_items
[3] Oficiální dokumentace modulu Ansible dnf
[4] Oficiální dokumentace modulu Ansible yum

Jak používat Xdotool ke stimulaci kliknutí myší a klávesových zkratek v systému Linux
Xdotool je bezplatný a otevřený nástroj příkazového řádku pro simulaci kliknutí myší a stisknutí kláves. Tento článek se bude věnovat krátkému průvodc...
Top 5 ergonomických produktů pro počítačové myši pro Linux
Způsobuje dlouhodobé používání počítače bolest zápěstí nebo prstů? Trpíte ztuhlými klouby a neustále si musíte třást ruce? Cítíte pálivou bolest pokaž...
Jak změnit nastavení myši a touchpadu pomocí Xinput v Linuxu
Většina linuxových distribucí je ve výchozím nastavení dodávána s knihovnou „libinput“ pro zpracování vstupních událostí v systému. Může zpracovávat v...