Plus facile à lire avec un fond crème, une teinte, plus de contraste ou un texte plus grand ? Choisissez vos couleurs et votre texte, une fois pour toutes les pages.

Leçon gratuite

Les bases d’Ansible

La leçon complète est à lire ici. Créez un compte gratuit pour la pratiquer dans un labo en direct.

Labo de machine virtuelle6 min de lecture4 commandes

Ce que tu vas faire

Installer une machine à la main prend du temps, et personne ne se souvient de toutes les étapes. Ansible est un outil où tu écris, dans un fichier appelé playbook, comment la machine doit être. Ansible fait ensuite en sorte qu’elle soit comme ça. Tu vas regarder un projet, lire un playbook, le lancer et poser une question à Ansible sur la machine. Tu ne finiras pas le playbook : c’est la tâche du lab.

Avant de commencer

Remarque

Appuie sur Démarrer le lab dans la barre en haut de cette leçon. Ce lab est une machine Ubuntu entière, rien que pour toi. Elle met donc un peu plus de temps à démarrer qu’un conteneur. Chaque bouton Exécuter ci-dessous tape sa commande dans le terminal de la machine, l’une après l’autre. Si l’un d’eux dit que la machine démarre encore, attends quelques secondes et appuie de nouveau. Pour les voir agir, ou pour taper tes propres commandes, appuie sur Ouvrir le terminal (nouvel onglet) dans la barre.

1. Regarde le projet

Le lab laisse un dossier, ansible-lab, dans ton dossier personnel. ls -l liste son contenu. site.yml est le playbook. inventory.ini dit quelles machines Ansible gère (seulement celle-ci). ansible.cfg contient ses réglages. templates garde un fichier avec un trou à compléter.

Commande
ls -l ansible-lab

Affichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.

2. Lis le playbook

Un playbook est une liste de tâches, écrites en YAML. Celui-ci a une seule tâche, qui affiche un message, et une variable, site_name, qui vaut Riverside College. En dessous, trois lignes TODO marquent la place des trois travaux du lab.

Commande
cat ansible-lab/site.yml

Affichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.

3. Lance-le

ansible-playbook lit le playbook et fait ce qu’il dit. Les dernières lignes forment le bilan : ok=2 veut dire que deux tâches se sont bien passées, et changed=0 veut dire que rien n’a changé, car afficher un message ne change rien. Quand la machine est dans le bon état, un bon playbook affiche changed=0 à chaque lancement. On dit qu’il est idempotent.

Commande
ansible-playbook -i ansible-lab/inventory.ini ansible-lab/site.yml

Affichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.

4. Pose une question à un module

Chaque tâche utilise un module, un petit programme qui fait une seule chose. stat regarde un fichier ou un dossier. Si on l’interroge sur /etc/ansible-lab, le dossier que le lab veut créer, il répond "exists": false et "changed": false : il a regardé et n’a rien touché.

Commande
ansible localhost -i ansible-lab/inventory.ini -m ansible.builtin.stat -a path=/etc/ansible-lab

Affichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.

Maintenant, fais le lab

Astuce

Tu as vu ce qui manque : un paquet, un fichier et un fichier d’unité (le fichier qui décrit un service pour systemd). Les ajouter au playbook, c’est la tâche de ce lab. Ouvre README.md dans ton dossier personnel avec cat README.md dans le terminal. Il explique quoi faire et ne donne aucune réponse.

Pour les enseignants

Astuce

Cette leçon est un petit exemple de leçon travaillée dans un lab : les étapes et les boutons Exécuter forment la leçon, et le lab est la copie de chaque élève. Ici, c’est un lab de machine virtuelle : chaque élève a sa propre machine Ubuntu avec Ansible, et un bouton Exécuter tape dans son terminal et montre ce qui s’est affiché. Le lab a une vérification qui lance deux fois le playbook de l’élève et note ce qu’il a créé, et si le second lancement n’a rien changé. Copie la leçon dans ton propre module et modifie-la, ou crée-en une depuis zéro avec le menu Lab de l’éditeur de leçons.

À propos de ce labo et de sa source: Lab Ansible : configurer une machine avec un playbook, dans le navigateur

Vous enseignez à une classe ? Proposez ces leçons à vos élèves avec correction et un labo pour chaque élève.