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
pippour installer une version spécifique si nécessaire.