Александр
когда выполняется роль ( которая app_name: portainer) там почему-то recovery_db: true. Хотя в defaults у меня стоит recovery_db: false. В общем мне надо чтобы в первой роли при выполнении переменая была recovery_db: false
Александр
в vars у меня стоит false
Lamobot
Есть куча мест куда можно переменные положить: https://docs.ansible.com/ansible/latest/user_guide/playbooks_variables.html#variable-precedence-where-should-i-put-a-variable
Lamobot
Проверяйте, host/group vars, роль итд
Lamobot
инвентари
Lamobot
grep -r 'recovery_db' *
Svyatoslav
Привет! Хочу обновить Ansible без будущих проблем. У меня сейчас: python version = 2.6.6 ansible 2.3.0.0 Нашел в документации, что только ansible 2.4 прекращает поддержку python 2.5. Может кто подскажет, если обновлюсь до ansible 2.8 будут ли проблемы с его использованием в python 2.6.6?
Sem
Нет
Svyatoslav
Нет
это исходя из опыта или знаний?
Sem
Из опыта, 2.9 работает с 2 питом нормально
Vlad
В 2.6 вроде проблемы с ssh и старым ssl
Кирилл
добрый день посоветуйте плз по решению есть основной сервер и и дублирующий на обоих nginx + php-fpm задача в том, чтобы иметь идентичные конфиги на обоих серверах и состояние nginx php-fpm как мне это видится плейбук + конфиги хранятся на хосте, откуда происходит управление. если необходимо внести изменения в настройки - конфиг редактируется на управляющем хосте, затем проигрывается ansible playbook, который доставляет конфиги на оба сервера, проверяет корректность применения через nginx -t и php-fpm -t и релоадит сервисы в случае успеха. корректно ли будет использовать в таком кейсе ansible или я придумываю велосипед?
Tadeusz
в целом, да, но рестарт php-fpm != сброс коннекта?
Кирилл
если применение конфигурации через reload будет приводить к сбросу коннекта в php-fpm - это допустимые потери
Кирилл
конфиг же надо применить в конце концов )
Svyatoslav
В 2.6 вроде проблемы с ssh и старым ssl
а конкретнее как это выражается? сейчас у меня проблем с ssh нет
Alex
Конечно.
У нас 2.9 нормально работает на centos6/rhel6
Svyatoslav
У нас 2.9 нормально работает на centos6/rhel6
Спасибо! Просто где то натыкался на stackoverflow.com что у кого то проблемы были с некоторыми модулями
Alex
Спасибо! Просто где то натыкался на stackoverflow.com что у кого то проблемы были с некоторыми модулями
Вполне может быть. Хотя можно поставить и 3й питон. Единственное с yum модулем будет пролет
Alex
Придется явно использовать 2й питон
Svyatoslav
Вполне может быть. Хотя можно поставить и 3й питон. Единственное с yum модулем будет пролет
ты имеешь ввиду, что python3 использовать в centos6 по умолчанию? Это категорически не рекомендую, параллельно можно ставить, причем по умолчанию будет python2, а исключать полностью python2 заменив его 3 версией нет.
Alex
Я сейчас так делаю в centos7
Svyatoslav
ну понятно, я в centos6 ставил их параллельно, проблем не было, а вот с использованием ансибла с двумя разными версиями пайтона просто не было такого опыта.
Oleg
Привет всем. Может кто подсказать. Есть ли возиожность в плейбуке заменить дефолтный шаблон роли на другой? (требуются доп параметры в конфиге, которые не учтены в роли).
Гайрат
Что вы имеете в виду под дефолтным шаблоном роли?
Oleg
Что вы имеете в виду под дефолтным шаблоном роли?
У роли есть папка templates в ней лежат шаблоны. Вот скажем мне нужно шаблон app.conf.j2 заменить немного другим (добавить две строки в конфиг) . Т.е. положить свой шаблон скажем в ./templates/app.conf.j2 а не в папке роли (которая глобальна для всех плейбуков) .
Oleg
И конечно что бы роль подхватила этот шаблон, а не свой дефолтный.
Отделение Bereke Bank
И конечно что бы роль подхватила этот шаблон, а не свой дефолтный.
Соответствующая таска должна уметь брать src из переменной
Отделение Bereke Bank
И конечно что бы роль подхватила этот шаблон, а не свой дефолтный.
https://github.com/nginxinc/ansible-role-nginx/blob/master/tasks/conf/template-config.yml#L11 типа вот так
Oleg
Соответствующая таска должна уметь брать src из переменной
У шаблона имеется ввиду? Но увы. Там имена файлов прописаны. А путь не указан (т.е. дефоотный).
Oleg
https://github.com/nginxinc/ansible-role-nginx/blob/master/tasks/conf/template-config.yml#L11 типа вот так
Это тпонятно. Но переменные не предусмотркны. Роль не моя. Вариант только переписывать роль? Переопределить порядок поиска шаблонов никак?
Sergey
Никак. Там не одна переменная, а довольно развесистая клюква под капотом.
Sergey
Ну и традиционно:
Sergey
Вообще объектная модель Ансибла предполагает одно ответственное за роль лицо. Либо ты, либо добрый дядя из Интернета. А если результаты работы доброго дяди из Интернета не устраивают - git в помощь жи :-)
Гайрат
Форкай и властвуй. (с)
Fire
Понял. Ок. Спасибо.
Форкаешь роль и меняешь там шаблон, можно пр в апстрим пульнуть, возможно примут.
Dmitry
Приветики. Митоген, шелл команда (find), 60+ хостов. Отваливается по Connection timed out Какая-то может известная проблема?
Tim
А есть какой-то чатик по вагранту? В поиске не находится, есть вопрос
Sergey
А если серьёзно - видимо, find долго работает и ничего не выводит.
Dmitry
без него все норм... может там таймауты разные?
Dmitry
или число воркеров как-то иначе управляется
Dmitry
ну и нет, не может этот файнд слишком долго работать... видимо нужно дебажить
Sergey
Под твоим грусти пстом должна быть перекличка митогенофилов :-) Только его никто не дебажит, он либо работает, либо выбрасывается - как дешёвая китайская техника.
Dmitry
inqfen
а, ну я не некрофил, тут ничего не скажу
Dmitry
Под твоим грусти пстом должна быть перекличка митогенофилов :-) Только его никто не дебажит, он либо работает, либо выбрасывается - как дешёвая китайская техника.
мне в общем главное, что бы если уж заработает - работал т.е. то, что он мне дает - мне важно, слишком много теряется на всяких служебных тасках, а мне важна каждая секунда возможно что-то можно заменить на скрипт просто, но пока ищу пути попроще 😉
Dmitry
а, ну я не некрофил, тут ничего не скажу
может быть причиной? мне не сложно на 3-м попробовать
inqfen
Возможно заработает с версией посвежее, но не 3.8, например с 3.6-3.7. Митоген не со всеми версиями нормально работает, это у него есть такое
Dmitry
да выключен ясное дело не, у меня сейчас именно проблема во всяких "фактах", которые я тасками собираю, типа куда симлинк кажет, есть ли файл и т.п.. т.е. простые операции, которые без митогена занимают 0.8-0.9 секунды, а с ним - 0.2-0.3
Dmitry
Сколько на плейбуке прирост с митогеном?
для самого важного по времени у меня случая как раз нет никаких тяжелых операций, получается без митогена 8 секунд, с ним - 4 секунды. Ну, что бы было понимание, я стремлюсь к 1-2 секундам
Dmitry
правда это с одним хостом... а вот с полным набором боевых хостов пока не получается попробовать
Alexandr
подскажите пожалуйста . при вызове API
Alexandr
pbex = PlaybookExecutor(playbooks=context.CLIARGS['args'], inventory=inventory, variable_manager=variable_manager, loader=loader, passwords=passwords) results = pbex.run()
Alexandr
можно ли как то лог сохранить и запустить это в silent mode?
Alex
TASK [Gathering Facts] *** fatal: [app_master]: FAILED! => changed=false ansible_facts: {} failed_modules: setup: failed: true msg: 'Ansible requires a minimum of Python2 version 2.6 or Python3 version 3.5. Current version: 3.4.2 (default, Oct 8 2014, 10:45:20) [GCC 4.9.1]' а это такие требовния только у setup модуля? Все остальное вроде нормально работает
Nicolai
Про митоген. Там же на сайте написано. ` Ansible 2.3-2.8 are supported along with Python 2.6, 2.7, 3.6 and 3.7. Verify your installation is running one of these versions by checking ansible --version output.
[IPT] Dmitry
а можно сделать как-то так? list: - sublist_with: name - dict1: key1: value1 key2: value2 - dict2: key1: value1 key2: value2
Sergey
а можно сделать как-то так? list: - sublist_with: name - dict1: key1: value1 key2: value2 - dict2: key1: value1 key2: value2
Нет. Подпиши слева у каждого элемента название структуры данных, которую он выражает, и всё станет понятно.
[IPT] Dmitry
Нет. Подпиши слева у каждого элемента название структуры данных, которую он выражает, и всё станет понятно.
мне для каждого rule надо как-то одинаковый tag использовать, а по сути как-то так: list_of_rules: - tag: - rule1: key1: value1 key2: value2 - rule2: key1: value1 key2: value2
Гайрат
Здесь rule можно подписать
Гайрат
А tag нет
[IPT] Dmitry
ну я так понимаю, придётся сделать как-то так? list_of_rules: - rule1: key1: value1 key2: value2 tag: same_tag - rule2: key1: value1 key2: value2 tag: same_tag
[IPT] Dmitry
но по логике у меня список тэгов с разными именами, а тэг это список правил
Sergey
ну я так понимаю, придётся сделать как-то так? list_of_rules: - rule1: key1: value1 key2: value2 tag: same_tag - rule2: key1: value1 key2: value2 tag: same_tag
Ты же, если правильно помню, фигачишь что-то для кошмарного сетапа на >3К сетевых дивайсов?