Андрей
Тут вообще похоже на задачу офисного админа просто настроить по крон запуск шел скрита
Андрей
который будет делать git pull и ansible-playbook
Timur
Ну, и тут как бы ансибл кроном запускается, а не ищет какие-то непонятные плейбуки, которые нужно запустить
tati_v_p
Откуда тогда ансибл должен узнать о наличии каких-то файлов, и что ему нужно их выполнить? Если он сам не запущен
там(на удаленном хосте) есть плейбук, который чекает директорию и через шелл выполняет все файлы из этой папки. А этот плейбук запускается только тогда, когда в этой директории появляются новые плейбуки.
Андрей
Timur
Какой удаленный хост? Какую директорию и где он чекает? Вы же сказали, что никакого доступа удаленного нет, а запуск локален?
tati_v_p
который будет делать git pull и ansible-playbook
в самом упрощенном виде. Только код из гита не может быть доставлен на удаленный хост напрямую и в реальном времени
Aleksey
здесь явно ошибка в дизайне
tati_v_p
ничего не изобретала, это было уже само
Sergey
здесь явно ошибка в дизайне
ты в слове "странное" сделал 8 ошибок ;-)
Aleksey
ничего не изобретала, это было уже само
это паттерн из 90-х годов: винда и ftp директория с тасками
tati_v_p
мне в текущей ситуации, нужно сделать однновременный запуск сразу нескольких плейбуков. Схема с выполнением 1 одновременного плейбука уже есть, и она устраивает.
Sebor▂▅▇█▓▒░
ничего не изобретала, это было уже само
простор, чтобы сделать нормально
Sergey
ничего не изобретала, это было уже само
Прошу без обид - эту конструкцию лучше сжечь и закопать.
Timur
Sebor▂▅▇█▓▒░
Для этого есть роли
эээй, не повторяйте за мной!
tati_v_p
В любом случае, благодарна каждому участнику за троллинг и понимание)
John
лимит по хостам. как указать диапазон? хосты именуются с 1 по 10000 нужно взять с 1956 по 2043. Есть вариант?
Timur
В любом случае, благодарна каждому участнику за троллинг и понимание)
Слушайте, я старательно пытался понять вашу задачу. Но вы так и не изложили нормально ее суть
Aleksey
В любом случае, благодарна каждому участнику за троллинг и понимание)
не обижайтесь. лучше эту задачу решить заново. в вашей схеме ансибл точно не нужен.
Sebor▂▅▇█▓▒░
В любом случае, благодарна каждому участнику за троллинг и понимание)
троллинг был минимальный, вопросы и предложения были по делу
John
ansible-playbook play.yaml -l {1956..2043} не канает..
Timur
Одновременный запуск нескольких плейбук - это не роль
Timur
Это бред
tati_v_p
троллинг был минимальный, вопросы и предложения были по делу
предложение по поводу роли протестирую на практике
Ivan
мне в текущей ситуации, нужно сделать однновременный запуск сразу нескольких плейбуков. Схема с выполнением 1 одновременного плейбука уже есть, и она устраивает.
если нужно-нужно прям одновременное, то запускайте параллельно несколько ансибл-команд в разных потоках каждая со своей плейбукой, но это выглядит очень еретично и сколько вы соберете граблей в реализации этого дела - терра инкогнита
Ivan
ансибл сам все что можно и нужно запараллелит
я пока нашел вот это "You can run tasks in parallel but not plays. A play is denoted by the 'hosts' directive - in your example you have defined a single play with multiple async tasks." Так же примеры показывают, что одновременно запускаются таски, а не плейбуки https://medium.com/developer-space/parallel-playbook-execution-in-ansible-30799ccda4e0
Ivan
собственно вот пример с таким вопросом и с таким ответом про несколько плейбуков запущеных праллельно https://unix.stackexchange.com/questions/512254/how-to-run-playbooks-in-ansible-parallel
Ivan
Но я согласен, что архитектурно решение выглядит донельзя криво.
Aleksey
я пока нашел вот это "You can run tasks in parallel but not plays. A play is denoted by the 'hosts' directive - in your example you have defined a single play with multiple async tasks." Так же примеры показывают, что одновременно запускаются таски, а не плейбуки https://medium.com/developer-space/parallel-playbook-execution-in-ansible-30799ccda4e0
вы будете настаивать на способе увеличения числа потоков исполнения не за счет настроек одного плейбука, а за счет независимого запуска нескольких экземпляров этого же плейбука? мне просто интересно с какой целью. да, в сети все как на заборе. занятно услышать конкретное обоснование
Ivan
вы будете настаивать на способе увеличения числа потоков исполнения не за счет настроек одного плейбука, а за счет независимого запуска нескольких экземпляров этого же плейбука? мне просто интересно с какой целью. да, в сети все как на заборе. занятно услышать конкретное обоснование
я не знаю зачем это может быть нужно. я вижу, что есть вопрос про параллельный запуск плейбуков. Не знаю зачем это, вижу, что подобные вопросы возникают и ответ на них такой. Настаивать ни на чем не собираюсь
Aleksey
Но я согласен, что архитектурно решение выглядит донельзя криво.
даже более: если эти плейбуки не запускаются с целю что-то задосить, то это вообще ни в какой рациональной области не сдалось нафиг
Lamobot
лимит по хостам. как указать диапазон? хосты именуются с 1 по 10000 нужно взять с 1956 по 2043. Есть вариант?
https://docs.ansible.com/ansible/latest/user_guide/intro_patterns.html#using-group-position-in-patterns ansible-playbook play.yaml -l groupname[1955:2042]
John
https://docs.ansible.com/ansible/latest/user_guide/intro_patterns.html#using-group-position-in-patterns ansible-playbook play.yaml -l groupname[1955:2042]
ага, но получилось только так --limit=`echo {1950..2055}.apm.ozon-dostavka.ru | tr \ ,`
Full
Народ, а можно ли таске задать число попыток? Конкретно, у меня файл на датастор не залился из-за таймаута. Есть ли способ указать число попыток, например?
Full
Точно, спасибо.
Dnzl
Через экстра варс передай
а как он сам в интерактивном режиме передасть ssh-copy-id?
Grek 🇺🇦
пропиши такой таск, и в переменных передавай логин\пароль но, по идее это сработает если конфигурировать 1 хост или на всех хостах одинаковые польхователи
Alexander
Добрый день. Раскатываю плейбук на кластер из нескольких зоокиперов. В конце плейбука сервис рестартуется. Можно ли добавить как-то паузу при выполнении задачи _между_ хостами, чтобы каждый следующий рестарт выполнялся через несколько секунд после предыдущего?
Alexander
Чтобы успели переизбрать лидера. Посмотрел роли зоокипера на гитхабе, никто такое не практикует, даж странно
Lamobot
И для этого понадобится отдельный плей в конце вашего плейбука, который рестартнет все хосты по очереди с паузой.
Full
Пока писал - сам понял. Всем спасибо. :)
k
Пока писал - сам понял. Всем спасибо. :)
Лучшая битва та, которой не было %)
George
А просто "установить зукипер"
Отделение Bereke Bank
есть удаленный хост, при поступлении новых файлов в директорию с плейбуками, ансибл их должен запустить.
ну это просто. 1) поднимаем кубернетес 2) пушим в репу с плейбуками 3) CI/CD билдит образ 4) запускаем в кубере kind: Job в том количестве и параметрами которые вам нужны 5) они работают +- параллельно Только вам нужен Kubernetes)
George
Кубернетес в каждый дом!
Logan
есть удаленный хост, при поступлении новых файлов в директорию с плейбуками, ансибл их должен запустить.
lsyncd можно заставить следить за файлами в директории. Обычно он для синхронизации папок, но вообще софтина многогранная
Terry
ну как не смог, Смог, но не совсем
Deniss
вечер добрый или день
Deniss
к вопросу о наших паразитах
Deniss
- hosts: localhost become: no gather_facts: false vars_files: - /vars/vmware_credentials.yml почему так не работает?
Deniss
ERROR! vars file /vars/vmware_credentials.yml was not found Could not find file on the Ansible Controller. If you are using a module and expect the file to exist on the remote, see the remote_src option
Deniss
что это черт хочет? а когда указываешь полный путь, то все хорошо
Maksim
- hosts: localhost become: no gather_facts: false vars_files: - /vars/vmware_credentials.yml почему так не работает?
Попробуй просто название файла вписать, без предыдущего каталога vars
Deniss
same
Deniss
тоже самое
Oleg Y.
- hosts: localhost become: no gather_facts: false vars_files: - vars/vmware_credentials.yml
Deniss
то есть чисто для понимания у меня сделано roles/api/tasks/main.yml roles/api/vars/main.yml
Oleg Y.
чисто для понимания где находится vmware_credentials.yml относительно плейбука?