Aller au contenu

Installation d'Ansible

Ansible peut être installé sur Linux, macOS ou Windows (via WSL). Cette section explique comment installer Ansible sur différentes plateformes et vérifier que tout fonctionne correctement.

Prérequis

Avant d’installer Ansible, assurez-vous d’avoir : - Une machine avec Python 3.8 ou supérieur. - Une connexion SSH fonctionnelle vers les hôtes cibles. - Les privilèges nécessaires pour installer des paquets (sudo sur Linux).

Installation sur Ubuntu/Debian

Pour installer Ansible sur Ubuntu ou Debian, utilisez le gestionnaire de paquets apt.

Exemple de commandes :

sudo apt update
sudo apt install software-properties-common
sudo add-apt-repository --yes --update ppa:ansible/ansible
sudo apt install ansible

Vérifiez l’installation :

ansible --version

Exemple de sortie :

ansible [core 2.16.0] config file = /etc/ansible/ansible.cfg python version = 3.10.12 text

Installation sur CentOS/RHEL

Pour CentOS ou RHEL, utilisez dnf ou yum.

Exemple :

sudo dnf install epel-release
sudo dnf install ansible

Ou avec yum :

sudo yum install epel-release
sudo yum install ansible

Vérifiez avec :

ansible --version

Installation sur macOS

Sur macOS, utilisez Homebrew :

brew install ansible

Vérifiez l’installation :

ansible --version

Installation via pip

Pour une installation flexible sur n’importe quelle plateforme, utilisez pip (le gestionnaire de paquets Python).

Exemple :

pip3 install ansible

Pour installer une version spécifique :

pip3 install ansible==2.16.0

Configuration initiale

Après l’installation, configurez votre inventaire dans /etc/ansible/hosts ou dans un fichier personnalisé.

Exemple d’inventaire simple :

[webservers]
web1 ansible_host=192.168.1.10 ansible_user=admin
web2 ansible_host=192.168.1.11 ansible_user=admin

Testez la connectivité avec :

ansible -i inventory.ini all -m ping

Sortie attendue :

web1 | SUCCESS => { "changed": false, "ping": "pong" } text

Installation des collections

Ansible utilise des collections pour regrouper modules et roles. Installez une collection depuis Ansible Galaxy :

ansible-galaxy collection install community.general

Configuration SSH

Assurez-vous que SSH est configuré correctement : - Les clés SSH sont générées (ssh-keygen). - Les clés publiques sont copiées sur les hôtes (ssh-copy-id user@host). - Le fichier ~/.ssh/config peut être utilisé pour simplifier les connexions.

Exemple de fichier SSH :

Host web1
  HostName 192.168.1.10
  User admin
  IdentityFile ~/.ssh/id_rsa

Problèmes courants

  • Permission denied : Vérifiez les clés SSH ou les permissions.
  • Module introuvable : Assurez-vous que Python est installé sur les hôtes cibles.
  • Version mismatch : Utilisez pip pour installer une version spécifique si nécessaire.

Ressources supplémentaires