Aller au contenu
Infrastructure as Code medium

Premiers pas avec Ansible : du lab vide au premier playbook

10 min de lecture

Logo Ansible

Cette section met en pratique ce que la précédente a expliqué. Vous montez un lab de quatre machines, vous y connectez Ansible, vous lancez vos premières commandes, puis vous écrivez le playbook qui installe un serveur web. Sept guides et un quiz. À la fin, vous disposez d'un environnement de travail qui servira à tout le reste du parcours, et chaque commande y aura été exécutée sur de vraies machines.

Cette section suppose acquise la précédente, Découvrir Ansible : le modèle déclaratif, l'exécution en SSH, et ansible-core installé sur votre poste.

Le reste concerne votre machine, car les quatre serveurs du lab tourneront chez vous. Il vous faut un Linux avec KVM et libvirt opérationnels, la commande virt-install disponible, environ 8 Gio de mémoire libre et 40 Gio d'espace disque. Prévoyez enfin une paire de clés SSH, en Ed25519 de préférence ; si vous n'en avez pas, la page Créer et gérer des clés SSH s'en occupe en quelques minutes.

Ces acquis sont pratiques, pas théoriques : chacun se vérifie en tapant une commande et en regardant ce qu'elle affiche.

  • Provisionner quatre machines AlmaLinux 9 sur KVM en quelques minutes.
  • Préparer un serveur pour qu'Ansible puisse le piloter : compte dédié, clé SSH, sudo, Python.
  • Écrire votre premier inventaire, d'abord au format INI puis en YAML, et vérifier qu'Ansible le lit comme vous l'entendez.
  • Établir la connexion, jusqu'au premier pong obtenu sans saisir de mot de passe.
  • Lancer des commandes ad hoc pour agir sur un groupe de serveurs sans écrire de fichier.
  • Écrire un premier playbook, le relancer, et constater le changed=0 qui prouve son idempotence.
  • Décoder les erreurs des premiers jours, de Permission denied (publickey) aux fautes d'indentation.

Un mot avant de commencer : cette section ne se lit pas, elle se fait. Lire un playbook ne le fait pas tourner, et la compétence se construit en réparant ses propres erreurs de connexion, pas en parcourant celles des autres.

Quatre machines suffisent à couvrir l'essentiel, y compris les objectifs de la certification. Elles vivent sur un réseau libvirt isolé en 10.10.20.0/24, avec des adresses fixes pour que rien ne bouge d'une session à l'autre.

MachineAdresseRôle
control-node.lab10.10.20.10Le poste depuis lequel Ansible pilote les autres
web1.lab10.10.20.21Serveur web, groupe webservers
web2.lab10.10.20.22Second serveur web, même groupe
db1.lab10.10.20.31Base de données, groupe dbservers

Deux détails de cette topologie comptent plus qu'ils n'en ont l'air. Deux machines dans le même groupe, ce qui permet d'exercer les motifs de sélection d'hôtes et de voir Ansible travailler en parallèle. Et un poste de contrôle séparé, qui reproduit la situation réelle où l'on pilote des serveurs distants plutôt que sa propre machine.

Ces guides se suivent, chacun s'appuyant sur le précédent. C'est la seule section du parcours où l'ordre est vraiment contraignant : sans lab, pas de connexion ; sans connexion, pas de playbook.

Ces trois guides ne sont pas des annexes. Ils installent des habitudes qu'il est bien plus facile d'acquérir maintenant que de rattraper plus tard, quand vos playbooks auront grossi.

Ce site vous est utile ?

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

Je maintiens +700 guides gratuits, sans pub ni tracking. Un soutien, même symbolique, m'aide à couvrir l'hébergement et à garder ces ressources gratuites. Merci pour votre appui.

Le formulaire ne s'affiche pas ? Ouvrir Ko-fi dans un onglet.

Abonnez-vous et suivez mon actualité DevSecOps sur LinkedIn