Ansible

So aktivieren Sie das EPEL-Repository auf CentOS mit Ansible

So aktivieren Sie das EPEL-Repository auf CentOS mit Ansible
In diesem Artikel zeige ich Ihnen, wie Sie das EPEL-Repository auf CentOS mit Ansible aktivieren. Also lasst uns anfangen.

Voraussetzungen

So aktivieren Sie das EPEL-Repository auf CentOS 7- oder CentOS 8-Computern mit Ansible:

  1. Ansible muss auf Ihrem Computer installiert sein.
  2. Sie müssen CentOS 7- oder CentOS 8-Computer für die Ansible-Automatisierung konfiguriert haben.

Es gibt viele Artikel auf LinuxHint, die sich mit der Installation von Ansible und der Konfiguration von Hosts für die Ansible-Automatisierung beschäftigen. Sie können diese Artikel bei Bedarf für Ihre Zwecke überprüfen.

Aktivieren des EPEL-Repository auf CentOS-Hosts

Erstellen Sie zunächst ein Projektverzeichnis ~/projekt mit folgendem Befehl:

$ mkdir -pv ~/project/playbooks

Navigieren Sie zum ~/projekt Verzeichnis mit folgendem Befehl:

$ cd ~/projekt

Erstellen Sie eine neue Datei Gastgeber im Projektverzeichnis und öffnen Sie es mit dem Nano-Texteditor wie folgt:

$ Nano-Hosts

Eine leere Datei Gastgeber sollte mit dem Nano-Texteditor erstellt und geöffnet werden.

Geben Sie die IP-Adressen oder DNS-Namen der CentOS 7- und CentOS 8-Zielcomputer (auf denen Sie das EPEL-Repository aktivieren möchten) in das Centos Abschnitt der Gastgeber Datei wie folgt:

[centos]
192.168.20.169
192.168.20.222

Hier, 192.168.20.169 ist die IP-Adresse meiner virtuellen CentOS 8-Maschine und 192.168.20.222 ist die IP-Adresse meiner virtuellen CentOS 7-Maschine. Diese werden bei dir anders sein. Stellen Sie sicher, dass Sie die Beispiel-IP-Adressen von nun an durch Ihre eigene Liste ersetzen.

HINWEIS: Sie finden die IP-Adressen Ihrer CentOS-Hosts mit dem folgenden Befehl:

$ Hostname -I

Wenn auf Ihren CentOS-Hosts DNS-Namen konfiguriert sind, sollten Sie diese mit dem folgenden Befehl finden können:

$ Hostname -A

Der endgültige Gastgeber Datei sollte so aussehen, wie im Screenshot unten gezeigt.

Speichern Sie nun die Hosts-Datei, indem Sie drücken + X gefolgt von Ja und .

Erstellen Sie eine Ansible-Konfigurationsdatei ansible.cfg wie folgt:

$ nano ansible.cfg

Geben Sie die folgenden Zeilen in die Ansible ein.cfg-Datei:

[Standardwerte]
Inventar=./Gastgeber

Wenn Sie diesen Schritt abgeschlossen haben, speichern Sie die Datei, indem Sie drücken + X gefolgt von Ja und .

Erstellen Sie jetzt ein neues Ansible-Playbook enable_epel_repo.yaml in dem Spielbücher/ Verzeichnis wie folgt:

$ Nano-Playbooks/enable_epel_repo.yaml

Geben Sie als Nächstes die folgenden Codes in das enable_epel_repo.yaml Datei:

- Gastgeber: Centos
Benutzer: ansible
Aufgaben:
- Name: EPEL-Repository auf CentOS 8 aktivieren
dnf:
Name: epel-release
Zustand: aktuell
wahr werden
wann: ansible_facts['os_family'] == 'RedHat' und ansible_facts
['distribution_major_version'] == '8'
- Name: EPEL-Repository auf CentOS 7 aktivieren
lecker:
Name: epel-release
Zustand: aktuell
wahr werden
wann: ansible_facts['os_family'] == 'RedHat' und ansible_facts
['distribution_major_version'] == '7'

In diesem Code:

Gastgeber: Centos, wählt nur die Hosts in der Centos Gruppe aus der Gastgeber Datei.

Benutzer: ansible, der SSH-Benutzername des Hosts (wo Ansible die Aufgaben ausführt) lautet ansible.

Ich habe 2 . definiert Aufgaben Hier. Eine für CentOS 8-Hosts und eine für CentOS 7-Hosts. Der Grund, warum ich es so gemacht habe, ist, dass der Standardpaketmanager für CentOS 8 DNF und CentOS 7 YUM ist. Eine Aufgabe (erste Aufgabe) verwendet den DNF-Paketmanager und wird nur auf CentOS 8-Hosts ausgeführt. Die andere Aufgabe (letzte Aufgabe) verwendet den YUM-Paketmanager und wird nur auf CentOS 7-Hosts ausgeführt.

Diese beiden Aufgaben sind fast identisch. Die einzigen Unterschiede sind die Paketmanager-Module (dnf und lecker) in den Aufgaben und im CentOS-Versionsprüfcode verwendet.

dnf und lecker Ansible-Module akzeptieren die gleichen Parameter.

Hier, Name: epel-release, Das zu installierende Paket ist das epel-release.

Zustand: aktuell, das paket epel-release sollte installiert werden. Wenn das Paket bereits installiert ist und eine aktualisierte Version verfügbar ist, wird das Paket aktualisiert.

Wann: Bedingung, wenn die Bedingung ist wahr, dann wird die Aufgabe ausgeführt. Andernfalls wird die Aufgabe nicht ausgeführt.

ansible_facts, verwendet, um auf die Ansible-Hostvariablen zuzugreifen.

ansible_facts['os_family'] == 'RedHat', prüft, ob das Host-Betriebssystem CentOS oder RedHat ist.

ansible_facts['distribution_major_version'] == '8', prüft, ob die Host-Betriebssystemversion 8 ist (in diesem Fall CentOS 8 oder RedHat 8).

ansible_facts['distribution_major_version'] == '7', prüft, ob die Host-OS-Version 7 ist (in diesem Fall CentOS 7 oder RedHat 7).

Dann speichern enable_epel_repo.yaml Datei durch Drücken von + X gefolgt von Ja und .

Nun können Sie das Ansible Playbook wie folgt ausführen:

$ ansible-playbook playbooks/enable_epel_repo.yaml

Das Playbook sollte fehlerfrei laufen und das EPEL-Repository sollte sowohl auf den CentOS 7- als auch auf den CentOS 8-Hosts aktiviert sein.

Wie Sie sehen können, ist das EPEL-Repository auf meinem CentOS 8-Host aktiviert.

Wie Sie sehen können, ist das EPEL-Repository auf meinem CentOS 7-Host aktiviert.

So aktivieren Sie das EPEL-Repository auf CentOS mit Ansible. Danke, dass du diesen Artikel gelesen hast.

Top 5 ergonomische Computermaus-Produkte für Linux
Verursacht längere Computernutzung Schmerzen im Handgelenk oder in den Fingern?? Leiden Sie unter steifen Gelenken und müssen ständig die Hände schütt...
So ändern Sie die Maus- und Touchpad-Einstellungen mit Xinput in Linux
Die meisten Linux-Distributionen werden standardmäßig mit der Bibliothek „libinput“ ausgeliefert, um Eingabeereignisse auf einem System zu verarbeiten...
Weisen Sie Ihre Maustasten mit der X-Mouse Button Control für verschiedene Software unterschiedlich zu
Vielleicht benötigen Sie ein Tool, mit dem sich die Steuerung Ihrer Maus bei jeder von Ihnen verwendeten Anwendung ändern kann. In diesem Fall können ...