GNU/Linux >> Tutoriels Linux >  >> Rocky Linux

Comment installer Ansible (outil d'automatisation) sur Rocky Linux 8

Ansible est un outil d'automatisation gratuit et open-source sponsorisé par Red Hat. En utilisant ansible, nous pouvons gérer et configurer les systèmes Linux et Windows sans aucune installation d'agent sur eux. Il fonctionne essentiellement sur le protocole ssh et peut configurer plus de cent serveurs à la fois. Dans la terminologie ansible, le système sur lequel Ansible est installé est appelé hôte/nœud de contrôle et les systèmes gérés par ansible sont appelés hôtes gérés.

Dans cet article, nous expliquerons comment installer la dernière version d'Ansible sur Rocky Linux 8. Voici les détails de la configuration de mon laboratoire Ansible :

  • Nœud de contrôle – 192.168.1.170 – Minimal Rocky Linux 8
  • Hôte géré 1 – 192.168.1.121 – Ubuntu 20.04 LTS
  • Hôte géré 2 – 192.168.1.122 – Rocky Linux 8
  • utilisateur sysops avec droits d'administrateur

Installer Ansible via la commande dnf

1) Mettre à jour le système

Pour mettre à jour Rocky Linux 8, exécutez sous la commande dnf.

$ sudo dnf update -y

Une fois toutes les mises à jour installées, redémarrez votre système une fois.

$ sudo reboot

2) Configurer le référentiel EPEL

Le package Ansible et ses dépendances ne sont pas disponibles dans les référentiels de packages Rocky Linux 8 par défaut. Donc, pour installer ansible via dnf , nous devons d'abord configurer le référentiel EPEL.

Exécutez les commandes suivantes,

$ sudo dnf install -y epel-release

3) Installer Ansible avec la commande dnf

Nous sommes maintenant prêts à installer ansible avec la commande dnf, exécutez

$ sudo dnf install ansible -y

Une fois ansible et ses dépendances installés avec succès. Vérifiez sa version en exécutant la commande suivante,

$ ansible --version

Installation Ansible avec pip

Si vous recherchez la dernière version d'Ansible, installez ansible avec pip. Reportez-vous aux étapes suivantes.

Remarque :Au moment de la rédaction de cet article, ansible 4.3.0 est disponible

1) Installez toutes les mises à jour

Installez toutes les mises à jour disponibles à l'aide de la commande ci-dessous,

$ sudo dnf update -y

Redémarrez le système une fois après avoir installé les mises à jour,

$ reboot

2) Installez Python 3.8 et d'autres dépendances

Exécutez les commandes suivantes pour installer Python 3.8 et d'autres dépendances

$ sudo  dnf module -y install python38
$ sudo alternatives --config python

Tapez 3 et appuyez sur Entrée

3) Installez la dernière version d'Ansible avec pip

Exécutez les commandes suivantes l'une après l'autre pour installer ansible,

$ sudo pip3 install setuptools-rust wheel
$ sudo pip3 install --upgrade pip
$ sudo python -m pip install ansible

La sortie de la commande python ci-dessus aimerait ci-dessous :

La sortie ci-dessus confirme qu'Ansible a été installé avec succès. Vérifions la version Ansible en utilisant la commande ansible suivante,

$ ansible --version

Vérifier l'installation d'Ansible

Chaque fois qu'Ansible est installé avec la commande dnf ou yum, son fichier de configuration par défaut "ansible.cfg" est créé automatiquement sous le dossier "/etc/ansible". Mais lorsque nous l'installons avec pip, nous devons créer son fichier de configuration manuellement.

Il est recommandé de créer ansible.cfg pour chaque projet. À des fins de démonstration, je crée un projet d'automatisation. Exécutez la commande mkdir suivante,

$ mkdir automation
$ cd automation

Créez le fichier ansible.cfg avec le contenu suivant,

$ vi ansible.cfg
[defaults]
inventory      = /home/sysops/auotmation/inventory
remote_user = sysops
host_key_checking = False

[privilege_escalation]
become=True
become_method=sudo
become_user=root
become_ask_pass=False

Enregistrez et quittez le fichier.

Créez maintenant un fichier d'inventaire sous le projet d'automatisation (dossier) avec le contenu suivant.

$ vi inventory
[prod]
192.168.1.121

[test]
192.168.1.122

Enregistrez et fermez le fichier.

Si vous avez remarqué attentivement le fichier ansible.cfg, j'ai utilisé remote_user comme "sysops". Créons donc des clés ssh pour l'utilisateur sysops et partageons-les entre les hôtes gérés.

$ ssh-keygen

Partagez les clés SSH à l'aide de la commande ssh-copy-id,

$ ssh-copy-id [email protected]
$ ssh-copy-id [email protected]

Remarque :exécutez la commande suivante sur chaque hôte géré pour exécuter toutes les commandes sans demander de mot de passe,

# echo "sysops ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/sysops

Vérifiez la connectivité du nœud de contrôle aux hôtes gérés à l'aide du module ping,

$ cd automation/
$ ansible -i inventory all -m ping

Créons un exemple de playbook (web.yaml) pour installer nginx et php sur des hôtes gérés,

$ vi web.yaml
---
- name: Play to Packages
  hosts:
    - test
    - prod
  tasks:
  - name: Install php and nginx
    package:
      name:
        - php
        - nginx
      state: present

Enregistrez et fermez le fichier.

Exécutez le playbook en utilisant sous la commande ansible-playbook,

$ ansible-playbook -i inventory web.yaml

La sortie de la commande ci-dessus aimerait ci-dessous

Excellent, la sortie ci-dessus confirme que le playbook a été exécuté avec succès et confirme également qu'Ansible est installé correctement.

C'est tout de ce post. Je pense que cet article vous aide à installer et à utiliser Ansible sur Rocky Linux 8. Veuillez partager vos commentaires et vos questions dans la section des commentaires ci-dessous.

Lecture recommandée :  Comment utiliser les gestionnaires dans Ansible Playbook


Rocky Linux
  1. Comment installer Python 3.9 sur Rocky Linux 8

  2. Comment installer Centreon Monitoring Tool sur Rocky Linux 8

  3. Comment installer Rocky Linux 8.4

  4. Comment installer Docker CE sur Rocky Linux 8

  5. Comment installer Redis sur Rocky Linux 8

Comment installer Python 3.9 sur Rocky Linux

Comment installer PHP 8 sur Rocky Linux 8

Comment installer Nginx sur Rocky Linux 8

Comment installer Node.js sur Rocky Linux 8

Comment installer Rust sur Rocky Linux 8

Comment installer AngularJS sur Rocky Linux 8