В чём разница между ролью и playbook'ом в Ansible?

В Ansible playbook — это основной файл, описывающий последовательность задач (tasks), которые нужно выполнить на целевых хостах.

Короткий ответ

Что ответить на собеседовании

В Ansible playbook — это основной файл, описывающий последовательность задач (tasks), которые нужно выполнить на целевых хостах. Playbook содержит plays, где указываются хосты, роли или задачи, переменные и другие параметры.

Подробный разбор

Ответ с пояснениями

В Ansible playbook — это основной файл, описывающий последовательность задач (tasks), которые нужно выполнить на целевых хостах. Playbook содержит plays, где указываются хосты, роли или задачи, переменные и другие параметры.

Роль (role) — это структурированный способ организации задач, файлов, шаблонов и переменных, который позволяет переиспользовать и делить конфигурацию на логические блоки. Роль обычно содержит директории tasks, handlers, templates, files, vars и meta.

Проще говоря:

  • Playbook описывает что и где делать — последовательность действий на хостах.
  • Роль — это как реализовать часть конфигурации, модуль с набором задач и ресурсов, который можно подключать в playbook.

Пример использования роли в playbook:

- hosts: webservers
  roles:
    - nginx

Здесь playbook вызывает роль nginx, которая содержит все необходимые задачи и файлы для установки и настройки Nginx.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее