So aktivieren Sie das Epel -Repository auf CentOs mit Ansible

So aktivieren Sie das Epel -Repository auf CentOs mit Ansible
In diesem Artikel werde ich Ihnen zeigen. Also lasst uns anfangen.

Voraussetzungen

Um das Epel -Repository auf CentOS 7 oder CentOS 8 -Maschinen mit Ansible zu aktivieren:

  1. Sie müssen Ansible auf Ihrem Computer installieren lassen.
  2. Sie müssen CentOS 7 oder CentOS 8 -Maschinen für die Ansible Automation konfigurieren haben.

Es gibt viele Artikel unter LinuxHint, die der Installation von Ansible und Konfigurieren von Hosts für Ansible Automation gewidmet sind. Möglicherweise möchten Sie diese Artikel bei Bedarf für Ihre Zwecke überprüfen.

Aktivieren des Epel -Repositorys auf CentOS -Hosts

Erstellen Sie zunächst ein Projektverzeichnis ~/Projekt mit dem folgenden Befehl:

$ mkdir -pv ~/project/playbooks

Navigieren zum ~/Projekt Verzeichnis mit dem folgenden Befehl:

$ cd ~/project

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

$ nano Gastgeber

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

Geben Sie die IP -Adressen oder DNS -Namen der Maschinen der Target CentOS 7 und CentOS 8 (in denen Sie das EPEL -Repository aktivieren möchten) ein ein 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 Maschine meiner Centos 8 und ist 192.168.20.222 ist die IP -Adresse meiner virtuellen Maschine meiner CentOS 7. Diese werden für Sie unterschiedlich sein. Stellen Sie sicher, dass Sie die Beispiel -IP -Adressen von nun an durch Ihre eigene Liste ersetzen.

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

$ hostname -i

Wenn Ihre CentOS -Hosts DNS -Namen konfiguriert haben, sollten Sie sie mit dem folgenden Befehl finden können:

$ hostname -a

Das endgültige Gastgeber Die Datei sollte wie im Screenshot unten angezeigt werden.

Speichern Sie nun die Hosts -Datei durch Drücken + X gefolgt von Y Und .

Erstellen Sie eine ansible Konfigurationsdatei Ansible.CFG folgendermaßen:

$ nano ansible.CFG

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

[Standardeinstellungen]
Inventar =./Hosts

Sobald Sie diesen Schritt abgeschlossen haben, speichern Sie die Datei durch Drücken + X gefolgt von Y Und .

Erstellen Sie nun ein neues Ansible Playbook enable_epel_repo.Yaml im Playbooks/ Verzeichnis wie folgt:

$ nano playbooks/enable_epel_repo.Yaml

Geben Sie als nächstes die folgenden Codes in die enable_epel_repo.Yaml Datei:

- Gastgeber: Centos
Benutzer: Ansible
Aufgaben:
- Name: Aktivieren Sie das Epel -Repository auf CentOS 8
DNF:
Name: Epel-Release
Staat: Neueste
wahr werden
Wann: Ansible_Facts ['os_family'] == 'redhat' und ansible_facts
['Distribution_major_version'] == '8'
- Name: Aktivieren Sie das Epel -Repository auf CentOS 7
Yum:
Name: Epel-Release
Staat: Neueste
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 aus Centos Gruppe aus dem Gastgeber Datei.

Benutzer: Ansible, Der SSH -Benutzername der Gastgeber (wo Ansible die Aufgaben ausführen wird) wird sein Ansible.

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

Diese beiden Aufgaben sind fast identisch. Die einzigen Unterschiede sind die Paket -Manager -Module (DNF Und Yum) In den Aufgaben und im CentOS -Versionsüberprüfungscode verwendet.

DNF Und Yum Ansible -Module akzeptieren die gleichen Parameter.

Hier, Name: Epel-Release, Das zu installierende Paket ist das Epel-Release.

Staat: Neueste, 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: Zustand, Wenn der Zustand Ist WAHR, Dann wird die Aufgabe ausgeführt. Andernfalls wird die Aufgabe nicht ausgeführt.

ansible_facts, Wird verwendet, um auf die Ansible -Host -Variablen zuzugreifen.

ansible_facts ['os_family'] == 'redhat' ', Überprüft, ob das Host -Betriebssystem CentOS oder Redhat ist.

ansible_facts ['Distribution_major_version'] == '8', Überprüft, ob die Host -Betriebssystemversion 8 ist (Centos 8 oder Redhat 8 in diesem Fall).

ansible_facts ['Distribution_major_version'] == '7', Überprüft, ob die Host -Betriebssystemversion 7 ist (CentOS 7 oder Redhat 7, in diesem Fall).

Dann sparen enable_epel_repo.Yaml Datei durch Drücken + X gefolgt von Y Und .

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

$ Ansible-Playbook-Playbooks/enable_epel_repo.Yaml

Das Spielbuch sollte ohne Fehler ausgeführt werden und das Epel -Repository sollte sowohl auf den Hosts der CentOS 7 als auch für CentOs 8 aktiviert werden.

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

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

So aktivieren Sie das Epel -Repository auf CentOs mithilfe von Ansible. Danke, dass du diesen Artikel gelesen hast.