Pull to refresh

Comments 22

Всегда впечатляет, сколько усилий люди прилагают к Ansible, чтобы он смог работать с большой инфрой. Снимаю шляпу, без иронии!

Но если вдруг вы устанете от отсутствия нормальных тестов логики, от jinja и логики в ямлях, от выстрелов в ногу глобальным стейтом, то обращайтесь. Построим вам хороший воркфлоу на Puppet, где разработчики смогут продолжать писать ямлы, но не для логики, а для описания желаемого состояния ;)

Всё ещё меньше усилий, чем переехать на Salt или Puppet -)

Мы выбрали Ansible потому что он без агента, в начале нашей истории это было важно, а потому уже переписать все роли например на тот-же puppet было сложнее чем сделать свой ansible-agent, ну и команда уже привыкла к этому времени к нему.

Спасибо за пояснения! Учитывая комментарии ниже стало понятно, почему был выбран такой путь :)

Я правильно понимаю, ansible-agent это аналог ansible-pull?

В первой реализации когда он работал именно с Git у них логика схожа, но только он сам следит за изменениями и не будет отображать информацию по проекту и vault pass в ps.

Не очень понятно, чем именно ansible-pull не устроил? Зачем изобретать свой велосипед?

По моему, вы переварили "кашу", и есть ее придётся только вам.

Мы тоже уже начинаем что-то подозревать))
В любом случае мы взяли ПО с открытым кодом, сделали на его основе что-то полезное (пусть и в ограниченном наборе сценариев) и вернули это сообществу открыв наработку - это важно само по себе

мы с этим решением уже живем 2 года и полет пока нормальный, это все тот-же Asible только который работает на хосте и не дает большой нагрузки

Выбрали Ansible потому что он без агента.... И написали к нему агент :)


Очень круто на самом деле. Было бы интерено взглянуть на код агента и сервера, возможно он пригодится не только вам. Куда-то на гитхаб не думали выложить?

Я так и не понял зачем было городить всё это, что в конце аж страшно за новых людей в проекте. Если можно было на 1м шаге просто ansible ставить puppet агента на хосты?

Ну очевидно же, что получился довольно страшный и запутанный велосипед?)

у нас не было возможности на тот момент что-то ставить(тут уже внутренняя кухня )

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

Реально круто :) Мне нравится когда люди не переписывают все с нуля, а адаптируют существующие решения. Надеюсь ваш агент пригодится и другим.

P.S. Не понимаю душных комментаторов, которые не зная внутренней кухни, пытаются навязать свой опыт (Puppet).

Спасибо. Можете сказать примерную разбивку этих 1000 серверов по группам? Сервера виртуальные или железные?

у нас там и железные и виртуальные.

А группы? например dev postgresql 3 сервера, hadoop 5 серверов. Какие группы серверов в этих 1000 серверах?

у нас очень много разных групп, например кластера: kafka, airflow, и т.д
и отдельно по компонентам hadoop: hive, namenode и т.д

наша философия заключается в том что мы группы пытаемся создавать по назначению серверов, если это кластера то они так-же в отдельной группе

Sign up to leave a comment.