Comment activer le référentiel EPEL sur CentOS avec Anible

Comment activer le référentiel EPEL sur CentOS avec Anible
Dans cet article, je vais vous montrer comment activer le référentiel EPEL sur CENTOS en utilisant Ansible. Alors, commençons.

Conditions préalables

Pour activer le référentiel EPEL sur les machines CentOS 7 ou CentOS 8 avec ANSIBLE:

  1. Vous devez avoir une installation sur votre ordinateur.
  2. Vous devez avoir des machines CentOS 7 ou CentOS 8 configurées pour une automatisation ANSIBLE.

Il existe de nombreux articles sur Linuxhint dédiés à l'installation de Ansible et à la configuration des hôtes pour ANSIBLE AUTOMATION. Vous voudrez peut-être vérifier ces articles si nécessaire, pour vos besoins.

Activation du référentiel EPEL sur les hôtes CentOS

Tout d'abord, créez un répertoire de projet ~ / Projet avec la commande suivante:

$ mkdir -pv ~ / projet / livres de jeu

Accédez à la ~ / Projet Répertoire avec la commande suivante:

$ CD ~ / Projet

Créer un nouveau fichier hôtes Dans le répertoire du projet et l'ouvrir avec l'éditeur de texte Nano comme suit:

$ hôtes nano

Un fichier vide hôtes devrait être créé et ouvert avec l'éditeur de texte Nano.

Tapez les adresses IP ou les noms DNS des machines cibles CentOS 7 et CentOS 8 (où vous souhaitez activer le référentiel EPEL) dans le centos Section de la hôtes Fichier, comme suit:

[Centos]
192.168.20.169
192.168.20.222

Ici, 192.168.20.169 est l'adresse IP de ma machine virtuelle CentOS 8 et 192.168.20.222 est l'adresse IP de ma machine virtuelle Centos 7. Ceux-ci seront différents pour vous. Assurez-vous de remplacer l'exemple d'adresses IP par votre propre liste à partir de maintenant.

NOTE: Vous pouvez trouver les adresses IP de vos hôtes CentOS avec la commande suivante:

$ hostname -i

Si vos hôtes CentOS ont des noms DNS configurés, vous devriez pouvoir les trouver avec la commande suivante:

$ hostname -a

Le final hôtes Le fichier doit ressembler comme indiqué dans la capture d'écran ci-dessous.

Maintenant, enregistrez le fichier hôte en appuyant sur + X suivie par Y et .

Créer un fichier de configuration anible anable.CFG comme suit:

$ nano anible.CFG

Tapez les lignes suivantes dans l'ANSIBLE.Fichier CFG:

[Par défaut]
inventaire =./ hôtes

Une fois que vous avez terminé cette étape, enregistrez le fichier en appuyant sur + X suivie par Y et .

Maintenant, créez un nouveau manuel ANSIBLE activer_epel_repo.yaml dans le Playbooks / Répertoire comme suit:

$ Nano PlayBooks / activy_epel_repo.yaml

Ensuite, saisissez les codes suivants dans le activer_epel_repo.yaml déposer:

- Hôtes: centos
Utilisateur: ANSIBLE
Tâches:
- Nom: Activer le référentiel EPEL sur Centos 8
DNF:
Nom: EPEL-Release
État: dernier
devenir vrai
Quand: ANSIBLE_FACTS ['OS_FAMILY'] == 'Redhat' et ANSIBLE_FACTS
['distribution_major_version'] == '8'
- Nom: Activer le référentiel EPEL sur Centos 7
Miam:
Nom: EPEL-Release
État: dernier
devenir vrai
Quand: ANSIBLE_FACTS ['OS_FAMILY'] == 'Redhat' et ANSIBLE_FACTS
['distribution_major_version'] == '7'

Dans ce code:

Hôtes: centos, sélectionne uniquement les hôtes dans le centos groupe du hôtes déposer.

Utilisateur: ANSIBLE, Le nom d'utilisateur SSH des hôtes (où ANIBLE exécutera les tâches) anable.

J'ai défini 2 Tâches ici. Un pour Centos 8 hôtes et un pour Centos 7 hôtes. La raison pour laquelle je l'ai fait de cette façon est que le gestionnaire de package par défaut pour CentOS 8 est DNF, et Centos 7 est miam. Une tâche (première tâche) utilisera le gestionnaire de packages DNF et s'exécutera uniquement sur les hôtes CentOS 8. L'autre tâche (dernière tâche) utilisera le gestionnaire de packages YUM et s'exécutera uniquement sur les hôtes CentOS 7.

Ces deux tâches sont presque identiques. Les seules différences sont les modules de gestionnaire de packages (DNF et Miam) utilisé dans les tâches et le code de vérification de la version CentOS.

DNF et Miam Les modules anibles acceptent les mêmes paramètres.

Ici, Nom: EPEL-Release, Le package à installer est le EPEL-libération.

État: dernier, le paquet EPEL-libération devrait être installé. Si le package est déjà installé et qu'une version mise à jour est disponible, le package sera mis à jour.

Quand: condition, si la condition est vrai, Ensuite, la tâche s'exécutera. Sinon, la tâche ne fonctionnera pas.

anible_facts, utilisé pour accéder aux variables hôtes anibles.

anible_facts ['os_family'] == 'redhat', vérifie si le système d'exploitation hôte est Centos ou Redhat.

ANSIBLE_FACTS ['Distribution_major_version'] == '8', Vérifie si la version du système d'exploitation hôte est 8 (CentOS 8 ou Redhat 8, dans ce cas).

ANSIBLE_FACTS ['Distribution_major_version'] == '7', Vérifie si la version du système d'exploitation hôte est 7 (CentOS 7 ou Redhat 7, dans ce cas).

Ensuite, sauvegarde activer_epel_repo.yaml fichier en appuyant sur + X suivie par Y et .

Maintenant, vous pouvez exécuter le manuel ANSIBLE comme suit:

$ anible-playbook PlayBooks / activy_epel_repo.yaml

Le playbook doit fonctionner sans aucune erreur et le référentiel EPEL doit être activé sur les hôtes CentOS 7 et CentOS 8.

Comme vous pouvez le voir, le référentiel EPEL est activé dans mon hôte CentOS 8.

Comme vous pouvez le voir, le référentiel EPEL est activé dans mon hôte CentOS 7.

C'est donc ainsi que vous activez le référentiel EPEL sur CentOS en utilisant Anible. Merci d'avoir lu cet article.