Согласно документам Ansible, Playbook является:
... основа для действительно простой системы управления конфигурацией и многопроцессорной системы развертывания, в отличие от уже существующей, и той, которая очень хорошо подходит для развертывания сложных приложений.
И снова, согласно тем же документам, Роли являются:
... способы автоматической загрузки определенных vars_files, задач и обработчиков на основе известной файловой структуры. Группировка контента по ролям также позволяет легко распределять роли с другими пользователями.
Однако различие между этими и их различными вариантами использования не сразу становится очевидным для меня. Например, если я настрою свой файл /etc/ansible/hosts
, чтобы выглядеть так:
[databases]
mydb01.example.org
mydb02.example.org
[mail_servers]
mymail01.example.org
mymail_dr.example.org
... то что это за "[databases]
" запись... роль? Или имя файла YAML для Playbook где-нибудь? Или что-то еще?!?
Если кто-то может объяснить мне различия в них, мое понимание Ansible будет значительно улучшаться!
- Playbook vs Role vs
[databases]
и аналогичные записи в/etc/ansible/hosts
- Если в файлах YAML определены книги, то где определены роли?
- Помимо
ansible.cfg
, живущего на сервере Ansible, как мне добавить/настроить Ansible с доступными Playbooks/Roles? Например, когда я запускаюansible-playbook someplaybook.yaml
, как Ansible знает, где найти эту книгу?