Objectif
Se connecter pour la première fois à plusieurs serveurs Debian avec Ansible et exécuter des commandes ad-hoc, sans encore utiliser de fichier d’inventaire ni de clé SSH.
Environnement disponible
Vous disposez de :
- 1 serveur de contrôle avec Ansible installé
- 2 clients Debian
ansible-client1ansible-client2
Informations de connexion
- Utilisateur :
root - Mot de passe :
formation
Ce que vous allez réaliser
- Localiser les IP des deux clients
- Tester le contact radio avec le module
ping(authentification par mot de passe) - Vérifier l’uptime des deux machines avec le module
command - Installer
curlavec le moduleapt, et observer l’idempotence en relançant la commande
Conseils
- Pas de fichier d’inventaire pour ce TP : on tape les IP directement, séparées par des virgules.
- Notez bien la virgule finale après une IP unique, même seule — sans elle, Ansible essaie d’interpréter l’adresse comme un nom de fichier d’inventaire.
- Relancez la commande
aptune seconde fois pour bien observer la différence de résultat.
🧪 Lab · membre · 10 min
🧪 Lancer le labVoir la solutionMasquer la solution
Localiser les IP des deux clients depuis le serveur de contrôle
ping ansible-client1
ping ansible-client2
Premier contact radio avec le module ping, en s’authentifiant par mot de passe (-k demande le mot de passe SSH, -u précise l’utilisateur)
ansible <IP_client1>,<IP_client2>, -m ping -u root -k
Vous devriez voir deux réponses SUCCESS avec "ping": "pong".
Vérifier l’uptime des deux machines avec le module command :
ansible <IP_client1>,<IP_client2>, -m command -a "uptime" -u root -k
Vous devriez voir deux réponses SUCCESS avec “ping”: “pong”.
Installer curl avec le module apt (nécessite –become pour les droits root)
ansible <IP_client1>,<IP_client2>, -m apt -a "name=curl state=present" -u root -k --become
Regardez le champ "changed" dans le résultat : true si curl n’était pas installé, false s’il l’était déjà.
Relancer exactement la même commande
ansible <IP_client1>,<IP_client2>, -m apt -a "name=curl state=present" -u root -k --become
Cette fois, "changed": false sur les deux machines : curl est déjà présent, Ansible n’a rien eu besoin de refaire. C’est votre première observation concrète de l’idempotence, avant qu’on la détaille en section 3.