Несколько плейбуков в одном файле
Обработайте web, затем db в одном файле.
«Несколько плейбуков в одном файле» — бесплатный урок DevOps Bootcamp на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения DevOps Bootcamp, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс DevOps Bootcamp содержит 4 уроков всего.
Больше одного плей
Плейбук — это список YAML, поэтому он может содержать несколько плей. Каждый плей обращается к собственной группе хостов. 🎭
Зачем разделять на плей
Для разных уровней нужны разные действия. Один плей настраивает веб-серверы, другой конфигурирует хосты базы данных.
Каждый плей начинается с дефиса
Новый дефис на верхнем уровне начинает новый плей. Так Ansible понимает, где закончился один плей и начался следующий.
- name: Web play
hosts: web
tasks: []
- name: DB play
hosts: db
tasks: []Сначала веб-серверы, затем база данных
Плей выполняются в порядке, заданном в файле. Плей web полностью завершится до того, как начнётся плей db.
Независимые строки хостов
У каждого плей есть собственное значение хостов. Они могут указывать на полностью разные группы, которые никак не пересекаются.
- hosts: web
tasks: []
- hosts: db
tasks: []Отдельные настройки для каждого плей
Ключи уровня плей, такие как повышение привилегий или переменные, применяются только к этому плей. Следующий плей начинает работу со своими независимыми настройками.
Факты для каждого плей
По умолчанию каждый плей собирает факты о собственных хостах до запуска задач, поэтому плей базы данных получает сведения о машинах базы данных.
Оркестрация стека
Несколько плей позволяют одному файлу оркестрировать целый стек: настроить базу данных, затем приложение, а затем балансировщик нагрузки. 🏗️
Файл из трёх плей
Здесь три плей последовательно обращаются к трём группам. Одна команда разворачивает всё окружение.
- hosts: db
tasks: []
- hosts: app
tasks: []
- hosts: lb
tasks: []Одна команда, много уровней
Запуск по-прежнему выполняется одним вызовом ansible-playbook. Ansible сам проходит все плей сверху вниз.
Сохраняйте фокус каждого плей
Дайте каждому плей одну понятную задачу и одну группу хостов. Сфокусированные плей делают большой плейбук удобным для чтения и повторного использования.
Быстрая проверка
Подтвердим, как выполняются несколько плей.
Итоги
Один файл может содержать много плей, у каждого из которых свои хосты и настройки. Они выполняются по порядку и оркестрируют весь стек. ✅
Часто задаваемые вопросы
Урок «Несколько плейбуков в одном файле» бесплатный?
Да — полный текст урока «Несколько плейбуков в одном файле» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс DevOps Bootcamp, подпишись на CoddyKit PRO. Курс DevOps Bootcamp содержит 4 уроков всего.
Чему я научусь в уроке «Несколько плейбуков в одном файле»?
Обработайте web, затем db в одном файле. Ты практикуешь DevOps Bootcamp с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать DevOps Bootcamp?
Предыдущий опыт не требуется. DevOps Bootcamp на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.
Сколько времени занимает урок «Несколько плейбуков в одном файле»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке DevOps Bootcamp?
Да. Каждый урок DevOps Bootcamp включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Плей = узлы + задачи
- Именование задач для понятного вывода
- Несколько плейбуков в одном файле
- Порядок задач и последовательное выполнение