Je n'ai pas fait de post récemment sur Ansible ... parce qu'avoir travaillé dans une société qui m'a fait quasiment faire toutes les installations via Ansible, ca m'a fait largement dépasser les bases ...

Je connais maintenant bien la structure des rôles ansible :

Ansible/host_vars
Ansible/roles/baculum
Ansible/roles/baculum/defaults
Ansible/roles/baculum/files
Ansible/roles/baculum/tasks
Ansible/roles/baculum/templates
Ansible/roles/baculum/handlers

Mais je vais vous dire ce que j'aime le plus dans ansible, et pourquoi je le préfère à puppet :

Simplicité d'installation (ansible, ssh, clef, et python plus quelques modules éventuels) la ou puppet il faut un agent, valider la liaison avec un certificat ...

Certains diront que si on signe la comm entre le puppet master et le puppet node, c'est super cool question sécurité hein ? mais pour vous ssh, ca fait quoi ? un café dégueulasse ?

Bref, pas d'avantage précis d'un coté ou de l'autre ici.

Ansible reste plus simple et plus accessible que Puppet, ça c'est certain par contre. Le templating de Puppet permet peut être un peu plus que jinja2 et même la je ne le parierai pas :)

Bref, pour Ansible une fois que vous avez digéré la structure d'un rôle, la définition de variables (par défaut, ou par hôte), l'utilisation des handlers, pour faire des déclenchements de tache conditionnelles, ou encore le templating pour la création de fichier hautement customisable, vous avez votre outil d'installation et paramétrage de choix !

Après si vous préférez Puppet, sachant qu'il existe des agents puppet pour windows et donc la possibilité d'automatiser certaines taches windows en restant dans votre environnement d'automatisation ...

Ben oui, la on a un petit plus pour Puppet. Vivement ssh sur windows ! ou mieux vivement qu'on en ait fini avec windows. Mais en fait Ansible communique avec window via WinRM et Powershell, modulo un petit setup expliqué sur le site d'Ansible, ahahah ;)

Voila voila !