Predpoklady
Povolenie úložiska EPEL na počítačoch CentOS 7 alebo CentOS 8 s programom Ansible:
- Musíte mať v počítači nainštalovaný program Ansible.
- Musíte mať počítače CentOS 7 alebo CentOS 8 nakonfigurované na 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. Ak je to potrebné, môžete si tieto články skontrolovať.
Povolenie úložiska EPEL na hostiteľoch CentOS
Najskôr vytvorte adresár projektu ~ / projekt nasledujúcim príkazom:
$ mkdir -pv ~ / project / playbooks
Prejdite na ikonu ~ / projekt adresár s nasledujúcim príkazom:
$ cd ~ / projekt
Vytvorte nový súbor hostitelia v adresári projektu a otvorte ho v nano textovom editore takto:
$ nano hostitelia
Prázdny súbor hostitelia by mali byť vytvorené a otvorené pomocou nano textového editora.
Zadajte IP adresy alebo názvy DNS cieľových počítačov CentOS 7 a CentOS 8 (kde chcete povoliť úložisko EPEL) do centos časť hostitelia súboru, a to nasledovne:
[centos]192.168.20.169
192.168.20.222
Tu, 192.168.20.169 je IP adresa môjho virtuálneho stroja CentOS 8 a 192.168.20.222 je IP adresa môjho virtuálneho stroja CentOS 7. Tieto budú pre vás odlišné. Uistite sa, že odteraz nahradíte vzorové adresy IP vlastným zoznamom.
POZNÁMKA: Adresy IP svojich hostiteľov CentOS nájdete pomocou nasledujúceho príkazu:
$ hostname -I
Ak majú vaši hostitelia CentOS nakonfigurované názvy DNS, mali by ste ich nájsť pomocou nasledujúceho príkazu:
$ hostname -A
Finálny hostitelia súbor by mal vyzerať tak, ako je to znázornené na snímke obrazovky nižšie.
Teraz uložte súbor hostiteľov stlačením
Vytvorte konfiguračný súbor Ansible zodpovedné.porov nasledovne:
$ nano zodpovedné.porov
Zadajte nasledujúce riadky do tabuľky.súbor cfg:
[predvolené hodnoty]inventár =./ hostitelia
Po dokončení tohto kroku uložte súbor stlačením
Teraz vytvorte nový playbook Ansible enable_epel_repo.yaml v knihy o hre / adresár takto:
$ nano playbooks / enable_epel_repo.yaml
Ďalej zadajte nasledujúce kódy do enable_epel_repo.yaml spis:
- hostitelia: centosužívateľ: zodpovedný
úlohy:
- name: Povoliť úložisko EPEL v systéme CentOS 8
dnf:
názov: uvoľnenie epelu
stav: najnovšie
stať sa: Pravda
keď: ansible_facts ['os_family'] == 'RedHat' a ansible_facts
['distribution_major_version'] == '8'
- názov: Povoliť úložisko EPEL v systéme CentOS 7
mňam:
názov: uvoľnenie epelu
stav: najnovšie
stať sa: Pravda
keď: ansible_facts ['os_family'] == 'RedHat' a ansible_facts
['distribution_major_version'] == '7'
V tomto kóde:
hostitelia: centos, vyberie iba hostiteľov v priečinku centos skupina z hostitelia spis.
užívateľ: zodpovedný, používateľské meno SSH hostiteľov (kde úlohy bude spúšťať Ansible) bude zodpovedné.
Definoval som 2 úlohy tu. Jeden pre hostiteľov CentOS 8 a jeden pre hostiteľov CentOS 7. Dôvod, prečo som to urobil týmto spôsobom, je ten, že predvolený správca balíkov pre CentOS 8 je DNF a CentOS 7 je YUM. Jedna úloha (prvá úloha) použije správcu balíkov DNF a bude bežať iba na hostiteľoch CentOS 8. Druhá úloha (posledná úloha) bude používať správcu balíkov YUM a bude bežať iba na hostiteľoch CentOS 7.
Tieto dve úlohy sú takmer identické. Jediné rozdiely sú v moduloch správcu balíkov (dnf a mňam) použité v úlohách a kód na kontrolu verzie CentOS.
dnf a mňam Možné moduly akceptujú rovnaké parametre.
Tu, názov: uvoľnenie epelu, balík, ktorý sa má nainštalovať, je uvoľnenie epelu.
stav: najnovšie, balík uvoľnenie epelu by mali byť nainštalované. Ak je balík už nainštalovaný a je k dispozícii aktualizovaná verzia, aktualizuje sa.
kedy: stav, ak stav je pravda, potom sa úloha spustí. V opačnom prípade sa úloha nespustí.
ansible_facts, slúži na prístup k premenným hostiteľa Ansible.
ansible_facts ['os_family'] == 'RedHat', skontroluje, či je hostiteľským OS CentOS alebo RedHat.
ansible_facts ['distribution_major_version'] == '8', skontroluje, či je verzia hostiteľského OS 8 (v tomto prípade CentOS 8 alebo RedHat 8).
ansible_facts ['distribution_major_version'] == '7', kontroluje, či je verzia hostiteľského OS 7 (v tomto prípade CentOS 7 alebo RedHat 7).
Potom uložte enable_epel_repo.yaml súbor stlačením
Teraz môžete playbook Ansible spustiť nasledovne:
$ ansible-playbook playbooks / enable_epel_repo.yaml
Playbook by mal bežať bez akýchkoľvek chýb a úložisko EPEL by malo byť povolené na hostiteľoch CentOS 7 aj CentOS 8.
Ako vidíte, úložisko EPEL je povolené v mojom hostiteľovi CentOS 8.
Ako vidíte, úložisko EPEL je povolené v mojom hostiteľovi CentOS 7.
Takto povolíte úložisko EPEL v CentOS pomocou programu Ansible. Ďakujeme, že ste si prečítali tento článok.