Как запустить несколько playbooks в соответствии с Ansible?

Я работаю над несколькими загрузочными играми Ansible, чтобы развернуть новый экземпляр сервера. Существует около 15 различных плейбуков, которые мне нужно выполнить в определенном порядке, чтобы успешно развернуть сервер.

Моя первоначальная мысль заключалась в том, чтобы написать сценарий оболочки, который выполняет ansible-playbook playbook_name.yml и дублирует его по одной записи для каждой пьесы, которую мне нужно запустить.

Есть ли более разумный /лучший способ сделать это, используя мастер-книгу, и если да, то на что это будет похоже (примеры оцениваются).

Я мог бы написать один монолитный плей-лист, который сделает все, но есть некоторые пьесы, которые запускаются сначала как root, а затем как пользователь sudo позже.

9 голосов | спросил nulltek 21 Jpm1000000pmThu, 21 Jan 2016 21:52:52 +030016 2016, 21:52:52

2 ответа


13

Создайте множество суб-книжек и объедините их с помощью операторов include.

- include: playbook-one.yml
- include: playbook-two.yml

Если ваши проигрыватели должны работать в порядке, и если все они являются обязательными, создайте основную книгу и включите файлы с задачами. Учебник должен всегда быть закрытым процессом.

ответил el_wichtel 10 FebruaryEurope/MoscowbWed, 10 Feb 2016 02:15:15 +0300000000amWed, 10 Feb 2016 02:15:15 +030016 2016, 02:15:15
3

Для более новых версий Ansilbe вы можете создавать множество суб-плейбуков и суммировать их с помощью операторов import_playbook:

---
- import_playbook: A-systemd-networkd.yml
- import_playbook: B-fail2ban-ssh.yml
- import_playbook: C-enable-watchdog.yml
ответил Peter Senna 26 Maypm18 2018, 20:08:49

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132