From 821b738a2552bbb39ecf88421e238ace47501d94 Mon Sep 17 00:00:00 2001 From: Jeremy Lecour Date: Tue, 7 Mar 2017 11:24:01 +0100 Subject: [PATCH] =?UTF-8?q?Ansible=20:=20pr=C3=A9cisions=20pour=20les=20mo?= =?UTF-8?q?dules?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- HowtoAnsible.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/HowtoAnsible.md b/HowtoAnsible.md index 562abda0..bc600c1b 100644 --- a/HowtoAnsible.md +++ b/HowtoAnsible.md @@ -67,7 +67,7 @@ jeudi 26 mai 2016, 23:16:01 (UTC+0200) ## Les éléments d'Ansible -L'élément de base d'Ansible est le [module](#modules) : on peut exécuter une tâche (installation de paquets, copie de fichiers, etc.) en exécutant simplement `ansible --module`. +L'élément de base d'Ansible est le [module](#modules) : on peut exécuter une tâche (installation de paquets, copie de fichiers, etc.) en exécutant simplement `ansible -m mon_module`. Pour regrouper plusieurs tâches, on utilise un [playbook](#playbook) : un fichier en syntaxe YAML qui va lister une succession de modules avec des arguments. Au sein d'un playbook, on dispose d'options pratiques comme les [handlers](#handlers) : ils permettent le déclenchement d'une commande sous certaines conditions (redémarrage d'un service par exemple). Si l'on veut organiser de façon poussée les différentes tâches, on utilisera des [roles](#roles) : il s'agit simplement d'inclure dans un playbook des fichiers YAML respectant une structure conventionnelle. @@ -77,7 +77,9 @@ Enfin, pour s'exécuter sur un ensemble de machines, Ansible a besoin d'un [inve -Le module est le garant de l'idempotence : Ansible gérera le succès de l'exécution et indiquera si une vérification ou action concrète a été effectuée. (TODO: à enrichir). +Un module est comme une bibliothèque. Il constitue une couche d'abstraction par rapport au shell et commandes sous-jacentes. C'est cette couche qui permet l'idempotence et le fonctionneent sur plusieurs plateformes. + +Les modules disposent de certains comportements et fonctionnalités communs : indication de succès/erreurs/changements, gestion des [variables](http://docs.ansible.com/ansible/playbooks_variables.html), des [conditions](http://docs.ansible.com/ansible/playbooks_conditionals.html), des [boucles](http://docs.ansible.com/ansible/playbooks_loops.html), des états de sortie… Pour avoir la liste des modules utilisables : `ansible-doc -l`