Еще такой есть вопрос, обычно плейбуки хостов кладут прямо в корень, неужели

это всем удобно, к примеру сейчас у нас ~4К хостов
это всё разные клиенты самая большая группа это ~30 хостов,
т.е запихать всё хотя бы в 20 разных групп не получится, т.к слишком разные роли/таски ит.д
как обычно в таком случае поступают?
Чисто навскидку чтоб положить плейбуки хостов в отдельный каталог можно нагородить что-то типа этого
вложенность каталога hosts можно увеличить
├── ansible.cfg
├── group_vars
├── hosts Cюда скадывать плейбуки хостов
│ ├── group_vars -> ../group_vars
│ ├── host_vars -> ../host_vars
│ ├── keys -> ../keys
│ └── roles -> ../roles
├── host_vars
├── modules
├── user_ssh.config
├── ssh_example.config
├── roles
└── tasks
├── group_vars -> ../group_vars
├── host_vars -> ../host_vars
├── keys -> ../keys
└── roles -> ../roles
├──stagging Это инвентори
├──prod Это инвентори
├──internal Это инвентори

32 ответов

7 просмотров

Я кладу в каталог playbooks Без разницы где они лежат

можно так https://t.me/pro_ansible/194115

как вариант да, но инвентори хотелось бы поменьше, тк например чтоб быстро пропатчить какой нить условный exim не запускать таск со 100500 инвентори, хотя поди их можно другим плейбуком собрать в кучу )

инвентори вы указываете при запуске

ну в том то и дело если будет много инвентори то их поочерёдно запускать надо будет

аргумент (не сарказм)

а зачем в корне плэйбуки которые повторяют роли в каталоге /roles?

Это плей для роли

ну как то так ansible -i my inventory host -m include_role -a name=ansible_user_create

А если надо несколько ролей ? :)

И да, что то не припомню мелкую m, помню большую и она вроде как для модулей, а не для роли

import_role это и есть же модуль

Вы делаете дичь

დეტექტივი კატა 🐈‍🔎 🕵️ (detektyw kotek)
ну как то так ansible -i my inventory host -m i...

А если у вас роль не одна, а штук 8 и для конкретного запуска вам нужно закомментировать парочку?

Вариант ответа выше, так же был примерно дан, комбинация ролей

დეტექტივი კატა 🐈‍🔎 🕵️ (detektyw kotek)
ну как то так ansible -i my inventory host -m i...

Для чего-то более сложного строка запуска превращается в нечитаемую портянку

ок, но написано роль=плейбук, какие именно хосты указаныв плейбуке? all?

Что напишите Тоти будет

это понятно, но это ни разу не удобно

Удобно, так как у вас прописанное состояние системы

не прописано в этом плейбуке одна роль

где именно прописана ?

»так как у вас прописанное состояние системы это я у вас спрашивать должен

ну вы же говорите , что прописана одна роль, где именно ? Если вы говорите , что одна, вы же это где то уже увидели правда ?

ну и где там написано одна ?

название запуска роли совпадает сназванием

ну все верно, иначе она не запустится

но она одна

нет =)

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

Обсуждают сегодня

if (user?.choseType === 'oneDay') { await ctx.reply( 'Добро пожаловать в команду «Магнита»! Правда, на один день ☺️ ', ); await ctx.s...
Kokni
1
Читаю сейчас [нет, уже больше не читаю!] курсовую о Булгакове, написанную, похоже, с помощью ChatGPT. Это удивительный психоделический опыт. Текст в основном написан в стиле б...
✨ Uni [🌊 В отпуске]
1
Это фейк @cruppto_newbot?
Antskup
13
всем салют сегодня утро заметил что бот не может отправлять фотки по url. ручками в браузере ссылка норм открывает фотки. падает ошибка 'Bad Request: failed to send message ...
Vasya Ivanov
9
ребят, привет. за какое время бот полученную заявку на вступление в группу может принять \отклонить? Помню речь была про 5 минут, сейчас как?
Роман Ромашин :)
10
Доброго времени суток. Правильно ли я понимаю, что с введением новой платежной единицы stars, я просто могу оставить текущую платёжку от Юкассы, которая выполняется на сайте с...
Prokhor Chulkov
7
вопрос: кто как решает вопрос с динамической подгрузкой скриптов для отдельных страниц с включенным turbo router?
Sergei Toroptsev
25
Добрый день! Не подскажете как к модели Категории Шопоголика добавить отношение Тейлора. Пробовал по документации, но не получается. Мб уже кто-то делал?
Николай Афанасенко
6
@veranikaEU получилось? Можно увидеть рабочий код?
Alex Kom
8
Сonst magicTgHTML = (text, entities) => { let processedText = text; let offsetShift = 0; entities.forEach(entity => { const { offset, length, type, url, ...
Андрей
1
Карта сайта