Ansible

Jak włączyć repozytorium EPEL w CentOS z Ansible?

Jak włączyć repozytorium EPEL w CentOS z Ansible?
W tym artykule pokażę, jak włączyć repozytorium EPEL na CentOS za pomocą Ansible. Więc zacznijmy.

Warunki wstępne

Aby włączyć repozytorium EPEL na komputerach CentOS 7 lub CentOS 8 z Ansible:

  1. Musisz mieć zainstalowany Ansible na swoim komputerze.
  2. Musisz mieć komputery CentOS 7 lub CentOS 8 skonfigurowane do automatyzacji Ansible.

Istnieje wiele artykułów na LinuxHint poświęconych instalowaniu Ansible i konfigurowaniu hostów do automatyzacji Ansible. Możesz sprawdzić te artykuły, jeśli to konieczne, do swoich celów.

Włączanie repozytorium EPEL na hostach CentOS

Najpierw utwórz katalog projektu ~/projekt za pomocą następującego polecenia:

$ mkdir -pv ~/projekt/podręczniki

Przejdź do to ~/projekt katalog za pomocą następującego polecenia:

$ cd ~/projekt

Utwórz nowy plik zastępy niebieskie w katalogu projektu i otwórz go za pomocą edytora tekstu nano w następujący sposób:

$nano hosty

Pusty plik zastępy niebieskie należy utworzyć i otworzyć za pomocą edytora tekstu nano.

Wpisz adresy IP lub nazwy DNS docelowych maszyn CentOS 7 i CentOS 8 (w których chcesz włączyć repozytorium EPEL) w polu centos sekcja zastępy niebieskie plik w następujący sposób:

[centos]
192.168.20.169
192.168.20.222

Tutaj, 192.168.20.169 to adres IP mojej maszyny wirtualnej CentOS 8 i 192.168.20.222 to adres IP mojej maszyny wirtualnej CentOS 7. To będzie dla ciebie inne. Pamiętaj, aby od teraz zastąpić przykładowe adresy IP własną listą.

UWAGA: Możesz znaleźć adresy IP swoich hostów CentOS za pomocą następującego polecenia:

$ nazwa hosta -I

Jeśli twoje hosty CentOS mają skonfigurowane nazwy DNS, powinieneś być w stanie je znaleźć za pomocą następującego polecenia:

$ nazwa hosta -A

Finał zastępy niebieskie plik powinien wyglądać tak, jak pokazano na poniższym zrzucie ekranu.

Teraz zapisz plik hosts, naciskając + X śledzony przez Tak i .

Utwórz plik konfiguracyjny Ansible ansibl.cfg następująco:

$ nano ansibl.cfg

Wpisz następujące wiersze w ansible.plik cfg:

[domyślne]
inwentarz=./zastępy niebieskie

Po wykonaniu tego kroku zapisz plik, naciskając + X śledzony przez Tak i .

Teraz utwórz nowy podręcznik Ansible enable_epel_repo.jamla w podręczniki/ katalog w następujący sposób:

$ Poradniki nano/enable_epel_repo.jamla

Następnie wpisz następujące kody w enable_epel_repo.jamla plik:

- gospodarze: centos
użytkownik: ansible
zadania:
- nazwa: Włącz repozytorium EPEL w CentOS 8
dnf:
nazwa: epel-release
stan: najnowszy
stać się prawdziwym
kiedy: ansible_facts['os_family'] == 'RedHat' i ansible_facts
['distribution_major_version'] == '8'
- nazwa: Włącz repozytorium EPEL w CentOS 7
mniam:
nazwa: epel-release
stan: najnowszy
stać się prawdziwym
kiedy: ansible_facts['os_family'] == 'RedHat' i ansible_facts
['distribution_major_version'] == '7'

W tym kodzie:

gospodarze: centos, wybiera tylko hosty w centos grupa z zastępy niebieskie plik.

użytkownik: ansible, nazwa użytkownika SSH hostów (gdzie Ansible będzie uruchamiać zadania) będzie ansibl.

Zdefiniowałem 2 zadania tutaj. Jeden dla hostów CentOS 8 i jeden dla hostów CentOS 7. Powodem, dla którego zrobiłem to w ten sposób, jest to, że domyślnym menedżerem pakietów dla CentOS 8 jest DNF, a CentOS 7 to MNIAM. Jedno zadanie (pierwsze zadanie) użyje menedżera pakietów DNF i będzie działać tylko na hostach CentOS 8. Drugie zadanie (ostatnie zadanie) użyje menedżera pakietów YUM i będzie działać tylko na hostach CentOS 7.

Te dwa zadania są prawie identyczne. Jedyne różnice to moduły menedżera pakietów (dnf i mniam) używane w zadaniach i kodzie sprawdzania wersji CentOSOS.

dnf i mniam Moduły Ansible akceptują te same parametry.

Tutaj, nazwa: epel-release, pakiet do zainstalowania to epel-uwolnienie.

stan: najnowszy, paczka epel-uwolnienie powinien być zainstalowany. Jeśli pakiet jest już zainstalowany i dostępna jest zaktualizowana wersja, pakiet zostanie zaktualizowany.

kiedy: stan, jeśli stan: schorzenie jest prawdziwe, wtedy zadanie zostanie uruchomione. W przeciwnym razie zadanie nie zostanie uruchomione.

ansible_facts, używany do uzyskiwania dostępu do zmiennych hosta Ansible.

ansible_facts['os_family'] == 'RedHat', sprawdza, czy system operacyjny hosta to CentOS lub RedHat.

ansible_facts['distribution_major_version'] == '8', sprawdza, czy wersja systemu operacyjnego hosta to 8 (w tym przypadku CentOS 8 lub RedHat 8).

ansible_facts['distribution_major_version'] == '7', sprawdza, czy wersja systemu operacyjnego hosta to 7 (w tym przypadku CentOS 7 lub RedHat 7).

Następnie zapisz enable_epel_repo.jamla plik, naciskając + X śledzony przez Tak i .

Teraz możesz uruchomić podręcznik Ansible w następujący sposób:

$ ansible-playbook playbooks/enable_epel_repo.jamla

Poradnik powinien działać bez żadnych błędów, a repozytorium EPEL powinno być włączone zarówno na hostach CentOS 7, jak i CentOS 8.

Jak widać, repozytorium EPEL jest włączone na moim hoście CentOS 8.

Jak widać, repozytorium EPEL jest włączone na moim hoście CentOS 7.

W ten sposób włączasz repozytorium EPEL na CentOS za pomocą Ansible. Dziękujemy za przeczytanie tego artykułu.

Gry Najlepsze emulatory konsoli do gier dla systemu Linux
Najlepsze emulatory konsoli do gier dla systemu Linux
W tym artykule wymienimy popularne oprogramowanie do emulacji konsoli do gier dostępne dla systemu Linux. Emulacja to warstwa kompatybilności oprogram...
Gry Najlepsze dystrybucje Linuksa do gier w 2021 r
Najlepsze dystrybucje Linuksa do gier w 2021 r
System operacyjny Linux przeszedł długą drogę od pierwotnego, prostego, serwerowego wyglądu. Ten system operacyjny znacznie się poprawił w ostatnich l...
Gry Jak przechwytywać i przesyłać strumieniowo sesję gry w systemie Linux
Jak przechwytywać i przesyłać strumieniowo sesję gry w systemie Linux
W przeszłości granie w gry było uważane tylko za hobby, ale z czasem branża gier odnotowała ogromny wzrost pod względem technologii i liczby graczy. P...