ansible
Ansible

Comment utiliser ansible pour mettre à jour CentOS/RedHat

Mettre à jour les serveurs Redhat est une tâche essentielle pour maintenir la sécurité et la stabilité de votre infrastructure informatique.

Cependant, cela peut être une tâche fastidieuse et chronophage, surtout si vous devez gérer plusieurs serveurs en même temps. Heureusement, Ansible, un outil de gestion de configuration et d’automatisation, peut vous aider à simplifier ce processus.

Dans cet article, nous vous expliquerons comment mettre à jour les serveurs Redhat avec Ansible, étape par étape.

Ansible
Ansible

Étape 1: Configurer votre environnement Ansible

Avant de pouvoir mettre à jour vos serveurs Redhat avec Ansible, vous devez configurer votre environnement Ansible. Voici comment procéder :

– Installez Ansible sur votre machine de contrôle.
– Ajoutez les serveurs que vous souhaitez gérer à votre fichier d’inventaire Ansible.
– Créez un fichier de configuration Ansible pour définir les variables et les paramètres nécessaires.

Dans cette article nous allons voir uniquement la 3éme étape.

Étape 2: Créer un playbook Ansible

Maintenant que notre environnement Ansible est configuré, nous pouvons créer un playbook pour mettre à jour vos serveurs Redhat/CentOS. Voici un exemple de playbook que vous pouvez utiliser:

# vi update.yaml
---
- hosts: "{{servers}}
  remote_user: ansible
  become: yes
  gather_facts: no
  tasks:
   - name: Security update
     dnf:
       name: "*"
       state: latest
       update_cache: true
   - name: Bugfix update
     dnf:
       name: "*"
       state: latest
       update_cache: true

Voici l’explication du playbook :

– La première ligne ( — ) indique le début d’une liste de tâches. Le tiret indique que chaque élément est une tâche à part entière.
« hosts » indique les serveurs cibles sur lesquels les tâches seront exécutées. La variable « {{servers}} » sera remplacée par le nom des serveurs définis dans l’inventaire Ansible ou dans la ligne de commande.
« remote_user » indique l’utilisateur à utiliser pour la connexion distante aux serveurs cibles. Dans ce cas, « ansible » est l’utilisateur qui se connectera aux serveurs.
« become » indique que l’utilisateur doit avoir les droits d’administration pour effectuer certaines tâches. Dans ce cas, l’utilisateur « ansible » utilisera la commande « sudo » pour obtenir les droits administratifs.
« gather_facts » indique si Ansible doit collecter des informations sur le système cible avant d’exécuter les tâches. Dans ce cas, la valeur est « no », ce qui signifie que ces informations ne seront pas collectées.
« tasks » contient une liste de tâches à effectuer sur les serveurs cibles :


La première tâche est nommée « Security update » et utilise le module « dnf«  pour effectuer une mise à jour de sécurité de tous les packages sur les serveurs cibles. Le paramètre « state » est défini sur « latest » pour que les dernières versions des packages soient installées. La mise à jour du cache de package est activée avec le paramètre « update_cache » défini sur « true ».
La seconde tâche est nommée « Bugfix update » et utilise également le module « dnf » pour effectuer une mise à jour de bugfix de tous les packages sur les serveurs cibles. Les paramètres sont les mêmes que pour la première tâche.

Étape 3: Exécuter le playbook Ansible

Maintenant que notre playbook est prêt, lancez le avec la commande ci-dessous :

# ansible-playbook -v update.yaml -e servers=linuxvm

Linuxvm est le nom le l’ensemble des machines Linux que j’ai mis sur l’inventaire :

[linuxvm]
server1
server2

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *