Možné

Jednoduchá inštalácia viacerých balíkov na CentOS pomocou programu Ansible

Jednoduchá inštalácia viacerých balíkov na CentOS pomocou programu Ansible
Na Ansible môžete použiť dnf alebo mňam modul na inštaláciu softvérových balíkov na hostiteľov CentOS alebo RHEL. V predvolenom nastavení tieto moduly inštalujú iba jeden softvérový balík. Môžete použiť dnf alebo mňam modul viackrát vo svojej príručke Ansible a nainštalujte si toľko softvérových balíkov, koľko chcete. Toto však nie je najefektívnejší spôsob, pretože sa bude opakovať veľa kódu, ktorému by sme sa chceli vyhnúť, pokiaľ je to možné. Našťastie môžeme pomocou slučiek ľahko nainštalovať toľko softvérových balíkov, koľko chceme, bez opakovania kódu.

Tento článok vám ukáže, ako nainštalovať viac softvérových balíkov na hostiteľov CentOS / RHEL pomocou slučky Ansible. Takže poďme na to.

Predpoklady

Ak si chcete vyskúšať príklady v tomto článku,
1) Musíte mať v počítači nainštalovaný program Ansible.
2) Musíte mať aspoň hostiteľa CentOS / RHEL 7 alebo 8 nakonfigurovaného pre automatizáciu Ansible.

Existuje veľa článkov o LinuxHint venovaných inštalácii Ansible a konfigurácii hostiteľov pre automatizáciu Ansible. V prípade potreby ich môžete skontrolovať.

Nastavenie adresára projektu

Predtým, ako sa posunieme ďalej, vytvoríme adresár projektu, aby sme mali trochu poriadok.

Vytvorenie adresára projektu centos-kg / a všetky požadované podadresáre (vo vašom aktuálnom pracovnom adresári), spustite nasledujúci príkaz:

$ mkdir -pv centos-pkg / príručky

Po vytvorení adresára projektu prejdite do adresára projektu takto:

$ cd centos-pkg /

Ďalej vytvorte a hostitelia inventárny súbor, a to nasledovne:

$ nano hostitelia

Pridajte adresu IP alebo DNS hostiteľa (vm3.nodekite.com, v mojom prípade) vašich hostiteľov CentOS / RHEL v súbore inventára (jeden hostiteľ na riadok).

Po dokončení uložte súbor stlačením + X, nasledovaný Y a .

Vytvorte konfiguračný súbor Ansible zodpovedné.porov v adresári projektu takto:

$ nano zodpovedné.porov

Potom zadajte nasledujúce riadky do zodpovedné.porov spis.

[predvolené hodnoty]
inventár = hostitelia
host_key_checking = False

Po dokončení uložte súbor zodpovedné.porov súbor stlačením + X, nasledovaný Y a .

Skúste ping na všetkých hostiteľov CentOS / RHEL, ktorých ste si pridali do svojho hostitelia inventárny súbor, a to nasledovne:

$ ansible všetko -u ansible -m ping

Ako vidíte, môj hostiteľ CentOS 8 je prístupný.

Inštalácia jedného softvérového balíka

Táto časť vám ukáže, ako nainštalovať jeden softvérový balík pomocou dnf alebo mňam modul Ansible na vašich hostiteľoch CentOS / RHEL.

Najskôr vytvorte nový playbook install_package.yaml v knihy o hre / adresár takto:

$ nano playbooks / install_package.yaml

Ďalej zadajte nasledujúce riadky do poľa install_package.yaml spis.

- hostitelia: všetci
užívateľ: zodpovedný
stať sa: Pravda
úlohy:
- name: Inštalácia balíka httpd
dnf:
meno: httpd
stav: prítomný
update_cache: Pravda

Po dokončení uložte súbor stlačením + X, nasledovaný Y a .

Tu som pridal iba jednu úlohu, Nainštalujte si balíček httpd. Účelom tejto úlohy je inštalácia httpd balíček na CentOS / RHEL 8.

CentOS / RHEL 7 nepoužíva dnf správca balíkov, používa mňam správca balíkov. Pokiaľ teda používate CentOS / RHEL 7, zmeňte sa dnf do mňam, ako je vyznačené na snímke obrazovky nižšie. Nie sú potrebné žiadne ďalšie zmeny.

The názov Táto možnosť sa používa na zistenie dnf alebo mňam modul názov balíka, ktorý sa pokúšate nainštalovať. V tomto prípade to bude httpd balíček.

The štát Táto možnosť sa používa na zistenie dnf alebo mňam modulujte akciu (t.j.e. nainštalovať, aktualizovať, odstrániť) by mal prevziať daný balík. V tomto prípade je akcia prítomný.

Podporované hodnoty štát možnosti sú:

prítomný - nainštaluje balík, ak ešte nie je nainštalovaný.

najnovšie - nainštaluje balík, ak ešte nie je nainštalovaný; ak je už nainštalovaný, modul skontroluje dostupnosť aktualizácií; ak je k dispozícii aktualizovaná verzia balíka, nainštaluje sa nová verzia.

neprítomný - odstráni balík, ak je nainštalovaný.

Ak update_cache možnosť je nastavená na Pravdaže, vyrovnávacia pamäť úložiska balíkov DNF / YUM sa aktualizuje pred inštaláciou balíka.

Spustiť install_package.yaml príručky, a to nasledovne:

$ ansible-playbook playbooks / install_package.yaml

Ako vidíte, príručka install_package.yaml prebehol úspešne.

Ako vidíte, httpd balík je nainštalovaný na mojom hostiteľovi CentOS 8, ktorý som pridal na svoj server hostitelia inventárny súbor.

$ sudo dnf zoznam nainštalovaný grep httpd

Ak ste na CentOS / RHEL 7, použite mňam správca balíkov namiesto dnf správca balíkov na overenie, či je balík nainštalovaný.

$ sudo yum zoznam nainštalovaný grep httpd

Inštalácia viacerých softvérových balíkov pomocou slučky with_items

Predchádzajúca časť tohto článku vám ukázala, ako nainštalovať jeden softvérový balík na hostiteľa CentOS / RHEL pomocou aplikácie Ansible dnf/mňam modul. Táto časť vám ukáže, ako nainštalovať viac softvérových balíkov na hostiteľov CentOS / RHEL pomocou aplikácie Ansible s_položkami slučka.

Najskôr vytvorte nový playbook install_packages.yaml, nasledovne:

$ nano playbooks / install_packages.yaml

Zadajte nasledujúce riadky do install_packages.yaml spis.

- hostitelia: všetci
užívateľ: zodpovedný
stať sa: Pravda
úlohy:
- name: Inštalácia všetkých balíkov
dnf:
meno: 'item'
stav: prítomný
update_cache: Pravda
with_items:
httpd
php
vsftpd

Po dokončení stlačte + X, nasledovaný Y a , zachrániť install_packages.yaml spis.

Tu som definoval názvy balíkov (httpd, php, vsftpd), ktorú chcem nainštalovať pomocou s_položkami slučka.

Názov balíka som nahradil premennou položka. The položka premenná bude aktualizovaná s názvom balíka v každej iterácii.

Spustiť install_packages.yaml príručky, a to nasledovne:

$ ansible-playbook playbooks / install_packages.yaml

Ako vidíte, príručka install_packages.yaml prebehol úspešne.

The httpd, php, a vsftpd balíčky sú nainštalované na mojom hostiteľovi CentOS 8, ako vidíte na snímke obrazovky nižšie.

$ sudo dnf zoznam nainštalovaný grep httpd
$ sudo dnf zoznam nainštalovaný grep php
$ sudo dnf zoznam nainštalovaný grep vsftpd

Inštalácia viacerých softvérových balíkov pomocou slučkovej slučky

Počnúc možným 2.5, odporúčaný spôsob použitia slučiek v príručke je použitie slučka kľúčové slovo, namiesto s_ položkami kľúčové slovo. Preto som videl varovnú správu, keď som spustil install_packages.yaml príručky v predchádzajúcej časti tohto článku.

Práca so slučkami pomocou slučka kľúčové slovo je veľmi jednoduché.

Najskôr otvorte príručku install_packages.yaml (z predchádzajúceho príkladu):

$ nano playbooks / install_packages.yaml

V install_packages.yaml playbook, stačí nahradiť tento výraz s_položkami s pojmom slučka, ako je vyznačené na snímke obrazovky nižšie. Nemusíte nič meniť.

Po dokončení stlačte + X, nasledovaný Y a , zachrániť install_packages.yaml spis.

Spustiť install_packages.yaml príručky, a to nasledovne:

$ ansible-playbook playbooks / install_packages.yaml

Ako vidíte, úloha Nainštalujte všetky balíčky bežal dnf/mňam modul celkovo trikrát; raz za každú slučku položka.

The httpd, php, a vsftpd balíčky sú nainštalované na mojom hostiteľovi CentOS 8, ako vidíte na snímke obrazovky nižšie.

$ sudo dnf zoznam nainštalovaný grep httpd
$ sudo dnf zoznam nainštalovaný grep php
$ sudo dnf zoznam nainštalovaný grep vsftpd

Inštalácia viacerých softvérových balíkov pomocou syntaxe poľa

Predchádzajúce časti tohto článku vám ukázali, ako používať s_položkami a slučka slučky Ansible pre inštaláciu viacerých softvérových balíkov na CentOS / RHEL 7 alebo 8 bez opakovania kódu. Táto časť vám ukáže, ako robiť to isté s jednoduchšou syntaxou poľa.

Najskôr otvorte install_packages.yaml príručky, a to nasledovne:

$ nano playbooks / install_packages.yaml

Odstrániť s_položkami alebo slučka oddiel od úlohy a zmeniť názov možnosť ['httpd', 'php', vsftpd '], ako je vyznačené na snímke obrazovky nižšie.

Po dokončení stlačte + X, nasledovaný Y a , zachrániť install_packages.yaml hracia kniha.

Tu každý uvedený reťazec v hranatých zátvorkách ([]) je prvok poľa (v mojom prípade názov softvérového balíka). Každý prvok poľa by mal byť oddelený čiarkou (,). Môžete pridať toľko prvkov poľa, koľko chcete. Pridal som iba tri prvky, httpd, php, a vsftpd.

Spustiť install_packages.yaml príručky, a to nasledovne:

$ ansible-playbook playbooks / install_packages.yaml

Ako vidíte, softvérové ​​balíčky httpd, php, a vsftpd sú nainštalované na mojom hostiteľovi CentOS 8.

$ sudo dnf zoznam nainštalovaný grep httpd
$ sudo dnf zoznam nainštalovaný grep php
$ sudo dnf zoznam nainštalovaný grep vsftpd

Záver

Tento článok vám ukázal, ako používať s_ položkami a slučka slučky, rovnako ako syntax poľa, s Ansible mňam/dnf modul na inštaláciu viacerých softvérových balíkov na hostiteľov CentOS / RHEL 7 alebo 8.

Ďalšie informácie nájdete v oficiálnej dokumentácii programu Ansible.

[1] Oficiálna dokumentácia slučiek Ansible
[2] Oficiálna dokumentácia Ansible with_items
[3] Oficiálna dokumentácia modulu Ansible dnf
[4] Oficiálna dokumentácia modulu Ansible yum

Hry Nainštalujte si najnovší Dolphin Emulator pre Gamecube a Wii na Linuxe
Nainštalujte si najnovší Dolphin Emulator pre Gamecube a Wii na Linuxe
Emulátor Dolphin vám umožní hrať vybrané hry Gamecube a Wii na osobných počítačoch Linux (PC). Emulátor Dolphin, ktorý je voľne dostupným emulátorom ...
Hry Ako používať GameConqueror Cheat Engine v Linuxe
Ako používať GameConqueror Cheat Engine v Linuxe
Tento článok obsahuje sprievodcu používaním cheatovacieho modulu GameConqueror v systéme Linux. Mnoho používateľov, ktorí hrajú hry v systéme Windows,...
Hry Najlepšie emulátory herných konzol pre systém Linux
Najlepšie emulátory herných konzol pre systém Linux
V tomto článku je uvedený zoznam populárneho softvéru na emuláciu herných konzol, ktorý je k dispozícii pre systém Linux. Emulácia je vrstva kompatibi...