Vadim
hostvars['a-b']
Vladimir
hostvars['a-b']
не не помогло
Vadim
не не помогло
а a-b - это имя переменной? Тогда нужно hostvars[inventory_hostname]['a-b']
Maxim
Привет! А кто знает как заставить падать with_fileglob если файлов нет которые пытаемся копировать?
Maxim
сейчас он просто warning пишет
Maxim
или может есть какое другое решение моей задачи - нужно копирнуть файлы (files/custom) только если они есть в директории files, иначе взять дефолтные конфиги (files/default)
Sergey
with_first_found
Maxim
with_first_found
спасибл, но решил по другому
Maxim
или может есть какое другое решение моей задачи - нужно копирнуть файлы (files/custom) только если они есть в директории files, иначе взять дефолтные конфиги (files/default)
сделал через block-rescue, убрал вообще with_fileglob, использую модуль copy с правильными src,desc (где слеш в конце, где нет)
Anton
по писать в чат можно и в других флудильнях
слушай, а зачем питон? гоняй в докере
Vladislav 👻
как-то сложно
Valery
Здравствуйте! Кто-то уже покупал книгу "Запускаем Ansible (ISBN 978-5-97060-513-4; Язык издания: Русский). https://www.ozon.ru/context/detail/id/145346326/ Может кто-то поделиться данной книгой ? Спасибо.
Valery
Valery
Вопрос снят, всем спасибо. Залил сюда может кому-то пригодиться.
Ievgen
есть подозрение, что вся переводная литература устаревает до момента выхода (
Valery
есть подозрение, что вся переводная литература устаревает до момента выхода (
Согласен что лучше читать первоисточник. Для ознакомления можно почитать и перевод ... концепция кардинально не успевает обновиться.
Alexey
для начинающих подойдет
No1
а env на время таски работает, если другого не задано?
No1
типа дефолтное поведение?
Div
Привет народ. Каким способом в template j2 проверить, существует ли директория / файл?
brestows
а что надо сделать ?
Div
проверить, существует ли директория и добавить в тэмплэйт строку
brestows
это проще сделать коде и передать переменную true/false на основании которой включить или не вклчить строку в шаблон
brestows
{% if file_exists %} ..... {% endif %}
brestows
как то так
brestows
где file_exists boolean переменаая
Div
понял. спасибо за идею.
brestows
есть еще ignore missing но это немного другое чаще используется когда надо подключить дополнительный файл и нет гарантии что он существует
brestows
тогда указываем ignore missing
brestows
что бы не было проблем если подключаемый файл отсутствует
bebebe
ignore missing да, немного для другого
Anonymous
Коллеги, а хорошей роли для postgres + pgbouncer не посоветуете ? Чтобы репликацияи распределение коннектов были.
Anonymous
Вроде бы нужный - как раз про ansible спрашиваю :) Но там тоже спрошу, спасибо.
bebebe
Вроде бы нужный - как раз про ansible спрашиваю :) Но там тоже спрошу, спасибо.
а да, прощу прощения, криво прочитал 😉 мне пришлось велосипедить свой
Anonymous
Смотрел, потому и спрашиваю.
bebebe
в ansible-galaxy было 3,5 роли в которых нужного функционала не было (год назад)
Anonymous
Хотелось бы чего-то наподобии этого: https://habr.com/company/etagi/blog/314000/
Anonymous
в galaxy patroni есть. Думаю - стоит её брать или нет.
Vladimir
Я думаю комплексной такой роли явно нет
manefesto
ну я как то читал про patroni. не очень вдохновил он меня
Vladimir
Все будет декомпазированно, тут мне кажется легче самому написать и подглядывать иногда в гелакси
manefesto
+1
Vladimir
Между всеми + у Вас должны быть отдельная роль, а вот как связывать их это второй вопрос, в худшем случае жестоко хардкодить в вары или консулы всякие :)
inqfen
всем привет
Vladimir
Про + я подразумевал отдельная роль для postgresql отдельно для haproxy отдельно для keepalived
inqfen
backup_target="{{ target_directory }}/{{ db_name }}-{{ ansible_date_time.date }}-{{ ansible_date_time.hour }}:{{ ansible_date_time.minute }}" есть такая ужасная конструкция
Anonymous
Про + я подразумевал отдельная роль для postgresql отдельно для haproxy отдельно для keepalived
А как из роли в роль передавать переменные ? Пока я просто меняю под себя + для изолированных тасков у меня еще своя роль есть
inqfen
эти date/hour/minue как-то можно вложить в одно чтение словаря?
manefesto
ansible_date_time.epoch
manefesto
http://www.mydailytutorials.com/working-date-timestamp-ansible/
Vadim
-debug: var="foo.date" vars: foo: date: bar
inqfen
ansible_date_time.epoch
ну там-то секунды эпохи будут
manefesto
ansible_date_time.time это время
inqfen
без даты
Vladimir
Ну и вообще это путь в никуда
Anonymous
А что ты хочешь передать ?
Ну например в haproxy мне нужно передать имена pgbouncer Понятно, что можно переменной, но было бы круто передавать автоматом. Или вот мне нужно было создавать каталог /backup, до того, как запустится elastic, т.к. без него он не запускается.
Anonymous
В любом случае спасибо. Сейчас видимо лучший путь - быстрый, т.е. свою роль накидать. А там буду учиться уже ) К слову, я понимаю, что имена хостов - скорее всего можно передать через парсинг ансибла инвентори. Может оно так и лучше.
Vladimir
Ну и по сути тут всегда нужен по нормальному сервис дисквери, а хранить в варах можно все связи но это такое
citius
но вообще пока на практике пришел к тому, что комплексные роли зло, лучше делать простые, типа ставить патрони, ставить хапрокси, потом это воедино собирать либо отдельной ролью-конфигуратором, либо в плейбуках.
Anonymous
Значит буду отдельно собирать.
citius
а этот плейбук в паблике есть ? Чтобы своё не придумывать.
есть. я вообще говоря обманул, вот моя статья. https://habr.com/post/322036/ вы на другую ссылались.
Vitaly
Господа, а пользуется кто ansible для управления cisco?
citius
keepalived кстати, после эксплуатации, тоже не советую использовать. сейчас регаю сервера в консуле и трафик отправляю через его сервис дискавери на живые хапрокси. а хапрокси уже кидает на мастера базы.
Vladimir
Да мне кажется тут вопрос и не должно остаться что надо юзать консул всегда
Gleb
скорее он что то не смог
Gleb
он там пг баунсер не советует случаем?
Vladimir
Именно его и советует
Anonymous
Консул или что там в составе кубера(etcd вроде) - следующий шаг. И что теперь - ставить https://github.com/yandex/odyssey, которому всего неделя от роду ?)
citius
Тут наоборот не советуют haproxy https://t.me/pgsql/82551
нормально все хапрокси отрабатывает, нет проблем. в случае фейловера надо просто закрывать соединения принудительно, у хапрокси есть эта опция.