Алексей
Хотел узнать, ansible при использовании copy копирует файл в любом случае? Или можно какие то гарды поставить? чем template отличается от copy кроме как шаблонизированием? https://stackoverflow.com/questions/37675262/what-is-the-difference-between-ansible-template-module-and-copy-module нашёл тут описание различий, получается в любом случае файл копируется
Алексей
есть ли функционал кеширования файлов на таргет нодах?
Alf 🙀
ваши вопросы выглядят так как будто вы собираетесь не правильно делать средства доставки.
Alf 🙀
я в доках не нашел
http://docs.ansible.com/ansible/latest/playbooks_intro.html#handlers-running-operations-on-change вот тут хорошо с примерами детально
matt
спасибо
Алексей
Мне достался сделанный ансибл, но он меня очень печалит своей скоростью. Основную часть времени 90% занимают copy 45 хостов за ~20 минут - это жесть
Alf 🙀
не делайте копи
Алексей
Потому что Ансибл - это не про раскладывание файлов.
А конфигурация ПО не предполагает файлы раскладывать?
Alf 🙀
Мне достался сделанный ансибл, но он меня очень печалит своей скоростью. Основную часть времени 90% занимают copy 45 хостов за ~20 минут - это жесть
на самом деле есть легкое недопонимание что вам именно не нравится. если вы делаете копи на 45 тачек в один выстрел с одной машинки, ну так чего вы хотели? ресурсы сети они не безграничные. больше чем может вынести ваша сетевая карта вы вынести с нее не сможете, а при наличии 45 одновременных(допустим) ссх соедениний результат будет вполне себе предсказуем
Alf 🙀
А конфигурация ПО не предполагает файлы раскладывать?
конфигурация по предполагает раскладывать файлы конфигурации
Алексей
конфигурация по предполагает раскладывать файлы конфигурации
вот файлики конфигурации и копируются и раскладываются
Sergey
А конфигурация ПО не предполагает файлы раскладывать?
Чаще нет, чем да. Шаблонизация - да. Но и ресурсы хоста и использование джампхостов - тоже имеют значение. Плюс количество форков по умолчанию равно не слишком много - кажется, пять (хотя я могу ошибаться).
Alf 🙀
вот файлики конфигурации и копируются и раскладываются
пихай все в шаблон. передать шаблон дешевле чем передавать файлик по сцп
Sergey
А что про раскладывание?
Что-то ещё, которое обсуждается на другом канале 😊
Алексей
пихай все в шаблон. передать шаблон дешевле чем передавать файлик по сцп
Вот я и пытаюсь понять чем теплейт от копи отличается. Судя по описанию на стаке - ничем кроме шаблонизации. Но вы сказали дешевле - значит чем-то отличается. Почему дешевле?
Алексей
Если есть мнение, что chef/puppet решают задачу лучше - можно прямо ими и пользоваться 😉
Я бы воспользовался, но корпоративные правила не разрешают. Так что разбираюсь с тем что есть
Sergey
Вот я и пытаюсь понять чем теплейт от копи отличается. Судя по описанию на стаке - ничем кроме шаблонизации. Но вы сказали дешевле - значит чем-то отличается. Почему дешевле?
Для этого мне обычно помогает посмотреть исходники модуля и сделать свои собственные выводы - https://github.com/ansible/ansible/blob/devel/lib/ansible/modules/files/copy.py, https://github.com/ansible/ansible/blob/devel/lib/ansible/modules/files/template.py
Sergey
Я рад за вас.
Ну я же не могу никому указывать, что делать (в смысле могу, но это фигня получится) - могу только делиться своим опытом, вот и делюсь.
Алексей
если вы можете кратко описать различия, то меня это устроит и мы не будем выясянть тут всякую фигню. Если нет, то спасибо за ссылки, пойду посмотрю.
Sergey
Как минимум одно различие сходу скажу - Copy - модуль, template на самом деле action_plugin (https://github.com/ansible/ansible/blob/devel/lib/ansible/plugins/action/template.py)
Alf 🙀
если вы можете кратко описать различия, то меня это устроит и мы не будем выясянть тут всякую фигню. Если нет, то спасибо за ссылки, пойду посмотрю.
предполагается что копи открывает отдельный сцп коннект на машинку. темплейт при этом передается внутри уже открытой ссш сессии и рендерится на стороне клиента.
Алексей
Попробую на темплейты заменить, посмотрю насколько поможет.
Sergey
Это в облаке?
Alf 🙀
Благодарю, а темплейты не кешируются на хостах? Зачем по 10 раз передавать одно и тоже?
тебе не надо кешировать темплейт. если его итоговый рендер не был изменен то темплейт не будет применяться
k4k
Я извиняюсь, есть linux админы?
Алексей
Я извиняюсь, есть linux админы?
тут вероятно большинство
k4k
ru_sysadmin
Благодарю
Denis 災 nobody
питон, что с него взять..
Pavel
earn переводится как зарабатывает
Denis 災 nobody
может, там циклическое что-то
Denis 災 nobody
можно по идее через gdb цепануться и глянуть что сидит
Alf 🙀
если у меня есть допустим [eu_app] app1 ansible_host=10.1.0.1 app2 ansible_host=10.1.0.2 [us_app] app1 ansible_host=172.16.0.1 app2 ansible_host=172.16.0.2 будет ли такой инвентори работать?
Alf 🙀
Дада само собой
Sergey
ну и амазон настойчиво не рекомендует управлять машины в облаке извне его
Sergey
ибо боль и унижение ждёт ввиду скорости
Pavel
А ктонить на инаентори в ямле перескочил?
maniac
я нединамические куски перевел. от скуки скорее чем от надобности.
Alf 🙀
maniac
ну это как в ini только в yaml
Pavel
что такое инвентори в ямле?
Ну там теперь можно свою инфру в ямл писать
Alf 🙀
а все нашел. выглядит как говно имхо.
Pavel
Как по мне читать удобней
Alf 🙀
это если у вас меньше сотенки машинок
Pavel
:)
Pavel
Сотня машинок и в ини не оч
Alf 🙀
так то да
Alf 🙀
children: # key order does not matter, indentation does other_group: children: group_x: hosts: test5 vars: g2_var2: value3 hosts: test4: ansible_host: 127.0.0.1 хоть убей не понятно чего хотели
Evgeny
Если разбить логически по файлам и папкам с внятными названиями то и 1000 нормально получается, т.к каждый отдельный файл не такой большой :)
maniac
у ямла есть наследование структур
Sergey
у ямла есть наследование структур
оно не сильно поможет в данном случае
maniac
простите, не заметил никакого конкретного случая. я просто говорил о преимуществах yaml перед ini
k4k
ребят, ансибл хосты берет только из /etc/ansible/hosts
k4k
или можно определять ещё где?
maniac
где угодно, передать в значении ключа -i
k4k
а по умолчанию он в файл не тыкается, как например с ролями в vars/main.yml?
k4k
и ещё один вопрос: как аnsible работает с виндоус-машинами, в случае с линукс через ssh это понятно
maniac
через winrm, посмотри в доку же
Pavel
Кстати, круглая дата:
Pavel
Tadeusz
666
Tadeusz
я календарь переверну и снова 666
Pavel
Да я про это число)))
Sergey
покинуть чат что ли, сломать вам малину
Igor
Ansible - для слуг Люцифера!
Igor
Во имя Несущего Свет конечно же!