Aller au contenu
Infrastructure as Code medium

Découvrir Ansible : architecture, installation, premières commandes

9 min de lecture

Logo Ansible

Cette première section pose les bases conceptuelles d’Ansible. Vous comprenez comment Ansible voit le monde (déclaratif, sans agent, push SSH), ce qui le distingue des autres outils, et comment l’installer proprement sur votre poste. Pas encore de playbook ici — la pratique commence dans la section Premiers pas. Cible : sysadmin qui découvre Ansible ; ceux qui viennent de Terraform/Puppet repéreront les analogies et limites mises en évidence.

À la fin de cette section, vous saurez :

  • Expliquer ce qu’Ansible fait, ce qu’il ne fait pas, et pourquoi il a remplacé les scripts Bash sur des fleets > 10 serveurs ;
  • Distinguer approche déclarative et approche impérative, et reconnaître l’idempotence dans le PLAY RECAP (changed=0) ;
  • Décrire l’architecture push SSH (control node, managed nodes, modules éphémères, collections, Execution Environments) ;
  • Installer ansible-core proprement avec pipx ou mise sur votre poste de contrôle ;
  • Lancer les 8 commandes essentielles (ansible, ansible-playbook, ansible-doc, ansible-galaxy, ansible-vault, ansible-lint, ansible-config, ansible-inventory) ;
  • Configurer un ansible.cfg minimal et savoir vérifier quel fichier est réellement chargé (ansible --version).

Aucun playbook n’est encore écrit ici — c’est la base conceptuelle et outillée qui rend la suite fluide.

La section couvre 8 guides + 1 quiz. Comptez :

ProfilTemps de lectureMise en pratique
Débutant complet3 à 4 heures1 à 2 heures (installation + premières commandes ad-hoc)
Sysadmin déjà à l’aise1 à 2 heures (lecture transversale)30 minutes (vérification version + ansible.cfg correct)
Vient de Terraform / Puppet1 à 2 heures (focus comparatifs)30 minutes

Si vous êtes pressé, l’encadré « 30 secondes » plus haut trace le chemin minimal pour atteindre votre premier playbook le plus vite possible.


Mon retour d’expérience — pour ceux qui veulent comprendre

Section intitulée « Mon retour d’expérience — pour ceux qui veulent comprendre »

Si l’une des cartes en haut de page vous a déjà orienté, vous êtes parti sur le bon pied. La suite de cette page s’adresse à ceux qui veulent comprendre la philosophie de cette section : pourquoi je m’attarde sur l’idempotence avant la pratique, pourquoi je préfère pipx à apt install ansible, et pourquoi le déclic « déclaratif » est le seul vrai prérequis.

J’ai accompagné plusieurs équipes qui découvraient Ansible — toutes ont commis les mêmes erreurs initiales : confondre Ansible et Terraform, écrire des playbooks qui ressemblaient à du Bash, ne pas comprendre pourquoi command: rejouait à chaque exécution. Ces erreurs disparaissent dès qu’on a fait le déclic mental sur l’idempotence et le déclaratif. Cette section est pensée pour vous faire ce déclic avant la première ligne de code, pas après dix erreurs en prod.

Trois pages pour vous faire le déclic mental : ce qu’Ansible est, ce qu’il n’est pas, et la différence essentielle entre déclaratif et impératif. Sans ce déclic, vous écrivez des playbooks qui ressemblent à du Bash en YAML — et vous passez à côté de la valeur de l’outil.

Avant de pouvoir lancer quoi que ce soit, il faut installer ansible-core et savoir quelles commandes existent. Cette deuxième étape vous donne les méthodes d’installation par distribution, le tour des 8 commandes du quotidien, et la configuration ansible.cfg qui simplifie tous vos appels suivants.

Ansible n’est pas seul. Terraform, Puppet, Chef, Salt couvrent des besoins voisins ou complémentaires. Cette comparaison vous évite les choix par défaut (« on prend Ansible parce que tout le monde le fait »).

Pour aborder Ansible sereinement, trois prérequis : maîtriser Linux, savoir lire du YAML, et avoir déjà manipulé SSH par clé. Ansible se connecte à vos serveurs via le client SSH OpenSSH local — vos ~/.ssh/config, vos clés privées, votre ssh-agent sont les leviers que le moteur Ansible consomme directement.

Cinq positions tranchées que cette section assume — chacune issue d’erreurs vues répétées chez les débutants :

  • Le déclic « déclaratif » avant la première ligne de YAML. Sans comprendre l’idempotence, vous écrivez du Bash en YAML — et vous passez à côté de la valeur de l’outil. La page « Déclaratif vs impératif » n’est pas optionnelle.
  • pipx ou mise pour installer, jamais sudo pip ni apt install ansible. Le metapackage ansible dnf/apt est figé sur une version souvent dépassée. pipx isole, mise permet de gérer plusieurs versions — les deux sont les bons choix 2026.
  • Un seul ansible.cfg par projet, racine du repo. Multiplier les ansible.cfg (~/.ansible.cfg + projet + sous-dossier) crée des bugs de configuration impossibles à diagnostiquer. ansible --version doit toujours pointer vers le ansible.cfg que vous attendez.
  • SSH par clé Ed25519, jamais par mot de passe. Ansible consomme votre ~/.ssh/config directement. Une clé Ed25519 + ssh-agent + ~/.ssh/config propre = 80 % du confort de la suite. Apprenez ça avant Ansible, pas pendant.
  • Lire ansible-doc <module> plutôt que la doc web. La doc embarquée correspond exactement à votre version installée. Ce réflexe vous sauvera à l’examen RHCE où vous n’avez pas internet.

Cinq erreurs typiques de débutant — chacune coûteuse à corriger après coup :

  • Confondre Ansible et Terraform. Ansible ne provisionne pas d’EC2, de Load Balancer Azure ni de cluster Kubernetes managé. C’est Terraform qui fait ça. Ansible commence quand la VM existe déjà. Le bon réflexe : Terraform pour le « créer », Ansible pour le « configurer ».
  • Croire qu’un playbook est idempotent par magie. Seuls les modules bien écrits (dnf, template, lineinfile) le sont. shell: ou command: rejouent la commande à chaque run — sans creates: / removes:, votre playbook casse l’idempotence.
  • Installer via sudo pip install ansible. Pollution du Python système, conflits de versions, désinstallation pénible. Pipx ou mise, sans exception. Le apt install ansible Ubuntu pollue moins mais vous fige sur une version souvent dépassée.
  • Apprendre Ansible sur Ubuntu pour passer la RHCE. L’examen tourne sur RHEL — dnf (pas apt), firewalld (pas ufw), SELinux activé. Préparation = même OS que la cible, AlmaLinux 10 ou Rocky 10 minimum.
  • Sauter le quiz de cette section. Six questions vérifient les concepts critiques. Si vous séchez sur 2/6, vous n’êtes pas prêt pour Premiers pas — relisez les pages concernées avant d’avancer.

Vous pouvez basculer sur la section suivante quand vous savez répondre sans hésiter à ces six questions :

  • Quel pré-requis logiciel Ansible attend-il sur les managed nodes ?
  • Quelle commande liste les modules disponibles dans une collection installée ?
  • Que signifie changed=0 dans un PLAY RECAP ?
  • Dans quel ordre Ansible cherche-t-il son fichier ansible.cfg ?
  • Quelle commande chiffre un fichier de variables sensibles ?
  • Quelle est la différence entre ansible-core et le metapackage ansible (paquet dnf) ?

Si vous séchez sur l’une d’elles, la page Le fichier ansible.cfg ou Prise en main de la CLI couvre la réponse en quelques minutes. Le quiz ci-dessous vérifie tout ça systématiquement.

Une fois le quiz passé, vous attaquez la mise en pratique avec la section Premiers pas : préparation du lab KVM, premier inventaire, premières commandes ad-hoc, premier playbook, debug des erreurs typiques.

Ce site vous est utile ?

Sachez que moins de 1% des lecteurs soutiennent ce site.

Je maintiens +700 guides gratuits, sans pub ni tracing. Aujourd'hui, ce site ne couvre même pas mes frais d'hébergement, d'électricité, de matériel, de logiciels, mais surtout de cafés.

Un soutien régulier, même symbolique, m'aide à garder ces ressources gratuites et à continuer de produire des guides de qualité. Merci pour votre appui.

Abonnez-vous et suivez mon actualité DevSecOps sur LinkedIn