Selon la documentation Ansible, un Playbook est:
... la base d'un système de gestion de configuration et de déploiement multi-machines vraiment simple, contrairement à tout ce qui existe déjà, et qui est très bien adapté au déploiement d'applications complexes.
Et, encore une fois, selon ces mêmes documents, les rôles sont:
... moyens de charger automatiquement certains fichiers vars_files, tâches et gestionnaires basés sur une structure de fichiers connue. Le regroupement du contenu par rôles permet également de partager facilement les rôles avec d'autres utilisateurs.
Cependant, la distinction entre ceux-ci et leurs différents cas d'utilisation n'est pas immédiatement évidente pour moi. Par exemple, si je configure mon /etc/ansible/hosts
fichier pour qu'il ressemble à:
[databases]
mydb01.example.org
mydb02.example.org
[mail_servers]
mymail01.example.org
mymail_dr.example.org
... alors qu'est-ce que cette " [databases]
" entrée ... un rôle ? Ou le nom d'un fichier YAML de playbook quelque part? Ou autre chose?!?
Si quelqu'un pouvait m'expliquer les différences à ce sujet, ma compréhension d'Ansible serait grandement améliorée!
- Playbook vs Role vs
[databases]
et entrées similaires dans/etc/ansible/hosts
- Si les Playbooks sont définis à l'intérieur des fichiers YAML, où sont définis les rôles?
- En plus de la
ansible.cfg
vie sur le serveur Ansible, comment ajouter / configurer Ansible avec les playbooks / rôles disponibles? Par exemple, lorsque je coursansible-playbook someplaybook.yaml
, comment Ansible sait-il où trouver ce playbook?
tasks
faire des trucs. playbooks
organiser et lancer des tâches. roles
organiser des groupes de tâches, de gestionnaires, etc. qui exécutent une fonction particulière. Certains playbook
sont nécessaires pour lancer le role
(s). Comment appelleriez-vous une collection de roles
et playbooks
? Disons par exemple celui qui gère la configuration de tous les hébergeurs de votre site?