Utilisation d'Ansible pour la mise à jour de CentOS RedHat : Simplifiez la gestion de vos serveurs !

Ansible est un outil open source d'automatisation, d'orchestration et de configuration automatique. Il permet de provisionner des machines virtuelles, des réseaux et des infrastructures cloud. Il offre de nombreux modules pour automatiser les tâches. Pour commencer, nous allons installer Ansible sur CentOS.

Pour l'installation d'Ansible, vous pouvez utiliser un script shell disponible sur GitHub appelé install-ansible.sh. Ce script facilite l'installation d'Ansible en installant toutes les dépendances nécessaires.

Préparation de l'environnement avec 3 VMs

Avant de pouvoir utiliser Ansible, nous devons préparer notre environnement avec trois machines virtuelles (VM) : une machine Ansible, un serveur web et un serveur de base de données. Ces VM nous permettront de tester notre configuration Ansible.

Ansible utilise SSH pour se connecter aux machines cibles. L'authentification basée sur les clés SSH est utilisée pour permettre à Ansible de se connecter sans mot de passe. Nous allons donc commencer par générer une paire de clés SSH sur notre machine Ansible.

Une fois la paire de clés SSH générée, nous devons accepter les clés SSH publiques des machines cibles. Cela permettra à Ansible de se connecter aux machines cibles sans avoir à saisir le mot de passe à chaque fois.

Pour envoyer la clé SSH publique de la machine Ansible vers les machines cibles, nous pouvons utiliser la commande suivante :

ssh-copy-id @

Nous devons également créer un fichier ansible.cfg pour gérer nos projets Ansible. Ce fichier contient des paramètres de configuration tels que la localisation de l'inventaire, le chemin vers les rôles Ansible, etc.

Le fichier inventory.ini est utilisé pour déclarer les adresses IP ou les FQDN (Fully Qualified Domain Names) des machines cibles.

Création d'un playbook Ansible

Un playbook Ansible est un fichier YAML contenant les tâches à exécuter sur les machines cibles. Nous allons créer un playbook pour mettre à jour les machines CentOS / Red Hat.

Voici un exemple de playbook Ansible pour mettre à jour les machines CentOS / Red Hat :

yaml
  • name: Mise à jour des machines CentOS / Red Hat
    hosts: all
    become: true
    tasks:
    - name: Vérifier si la mise à jour est disponible
    command: yum check-update
    register: update_available
    changed_when: update_available.stdout != ""
    failed_when: false- name: Mettre à jour les packages
    command: yum update -y
    when: update_available.changedCe playbook vérifie d'abord si des mises à jour sont disponibles en exécutant la commande "yum check-update". Si des mises à jour sont disponibles, il exécute ensuite la commande "yum update -y" pour mettre à jour les packages.

Déploiement de l'agent WAPT Linux avec Ansible

Nous pouvons également utiliser Ansible pour déployer l'agent WAPT sur des postes Debian Linux ou CentOS. Pour cela, nous allons utiliser des rôles Ansible.

Voici les étapes pour déployer l'agent WAPT Linux avec Ansible :

  • Installer le rôle Ansible tranquilit.waptagent en utilisant la commande suivante :
ansible-galaxy install tranquilit.waptagent
  • Utiliser une clé SSH déployée sur les postes ou en générer une et la copier.
  • Éditer le fichier d'inventaire Ansible et ajouter les hôtes Linux.
  • Créer un playbook deploywaptagent.yml avec le rôle tranquilit.waptagent.
  • Renseigner correctement les variables dans le playbook, telles que wapt_server_url, wapt_repo_url, wapt_crt.
  • Lancer le playbook avec la commande ansible-playbook.

Voici un exemple de playbook Ansible pour déployer l'agent WAPT Linux :

yaml
  • name: Déploiement de l'agent WAPT Linux
    hosts: all
    become: true
    roles:
    - tranquilit.waptagent
    vars:
    wapt_server_url: "https://wapt.example.com"
    wapt_repo_url: "https://repo.example.com"
    wapt_crt: "/path/to/wapt.crt"

Ce playbook utilise le rôle tranquilit.waptagent pour installer l'agent WAPT sur les postes cibles. Les variables wapt_server_url, wapt_repo_url et wapt_crt sont renseignées pour spécifier l'URL du serveur WAPT, l'URL du dépôt WAPT et le chemin vers le fichier de certificat WAPT.

Configuration de l'environnement Ansible

Pour utiliser Ansible, nous avons besoin de deux types de machines : la machine de contrôle et la machine esclave.

La machine de contrôle est la machine à partir de laquelle nous exécutons les tâches Ansible. Elle doit disposer de Python 2 (version 2.7) ou Python 3 (version 3.5 et supérieures) et ne prend pas en charge Windows. Il est recommandé d'exécuter Ansible à proximité des machines gérées.

L'installation d'Ansible peut être effectuée de différentes manières en fonction du système d'exploitation. Par exemple, sur Ubuntu, vous pouvez mettre à jour les dépôts APT, installer software-properties-common, ajouter le référentiel Ansible et installer Ansible avec apt. Sur RHEL, CentOS ou Fedora, vous pouvez installer Ansible avec yum. Vous pouvez également l'installer depuis pip en installant d'abord pip, puis en installant Ansible avec pip.

Pour les machines esclaves, elles doivent avoir une communication SSH et disposer de Python 2 (version 2.6 ou supérieure) ou Python 3 (version 3.5 ou supérieure). Vous pouvez utiliser Vagrant pour provisionner les machines esclaves. Il suffit d'installer Vagrant selon le système d'exploitation, de configurer le fichier Vagrantfile pour décrire les machines esclaves et de les personnaliser si nécessaire. Ensuite, vous pouvez provisionner les machines esclaves en utilisant la commande "vagrant up".

En conclusion, Ansible est un outil puissant pour automatiser la gestion et la configuration des machines. Il est facile à utiliser et offre de nombreuses fonctionnalités pour simplifier les tâches d'administration système. En utilisant Ansible, vous pouvez mettre à jour CentOS / Red Hat de manière efficace et automatisée, tout en assurant une infrastructure complète et stable.

Tout ce qu'il faut savoir : questions et réponses

Pourquoi on utilise Ansible ?

Ansible est utilisé pour consolider, gérer et automatiser les ressources sur plusieurs systèmes à partir d'une seule plateforme. Cela permet d'éviter une gestion individuelle de chaque système et facilite la gestion du code, du cycle de vie et des modifications grâce à des inventaires, des playbooks et des rôles.

Quel type de connexion Ansible Peut-il utiliser ?

Ansible utilise le protocole SSH pour se connecter aux serveurs et exécuter des tâches. Par défaut, il utilise des clés SSH avec ssh-agent et se connecte aux machines distantes en utilisant votre nom d'utilisateur actif.

Où Devez-vous installer Ansible pour mettre en place un outil d'automatisation fonctionnel ?

Pour mettre en place un outil d'automatisation fonctionnel, vous devez installer Ansible sur le node manager, en suivant les prérequis spécifiés.

C'est quoi Ansible Awx ?

Ansible AWX est un tableau de bord Open Source permettant de planifier et déployer des playbooks, automatisant ainsi la gestion et le suivi des systèmes. Il sert de base à Ansible Tower, un outil plus avancé et commercial.

Maintenant que tu as fini de lire Utilisation d'Ansible pour la mise à jour de CentOS RedHat : Simplifiez la gestion de vos serveurs !, nous t'invitons à explorer davantage la catégorie Linux. Tu y trouveras d'autres articles intéressants qui élargiront tes connaissances et te tiendront informé. Ne cesse pas de lire et de découvrir plus!

Index
  1. Préparation de l'environnement avec 3 VMs
  2. Création d'un playbook Ansible
  3. Déploiement de l'agent WAPT Linux avec Ansible
  4. Configuration de l'environnement Ansible
  • Tout ce qu'il faut savoir : questions et réponses
    1. Pourquoi on utilise Ansible ?
    2. Quel type de connexion Ansible Peut-il utiliser ?
    3. Où Devez-vous installer Ansible pour mettre en place un outil d'automatisation fonctionnel ?
    4. C'est quoi Ansible Awx ?
  • Laisser un commentaire

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

    Go up