Timur
да и вроде питон нужен был, да
Питон вообще не нужен
Tadeusz
знач я уже забыл 🙂
Timur
Там целый раздел документации о том, как работать с виндой: https://docs.ansible.com/ansible/2.7/user_guide/windows.html
Tadeusz
ansible_user: username@MY.DOMAIN.COM ansible_password: Password ansible_connection: winrm ansible_winrm_transport: kerberos ага, такое было
Tadeusz
ну и realms прописываешь + kinit...
Anton
да, все верно. у ансибла в репе выложен повершелл скрипт как врубить винрм одним скриптом.
Anton
ну и realms прописываешь + kinit...
вот про это подробнее можно, не очень понимаю
Tadeusz
так глянь выше, там дока вменяемая
Timur
да, все верно. у ансибла в репе выложен повершелл скрипт как врубить винрм одним скриптом.
Там лишь самый простой случай basic авторизации по умолчанию задается
Timur
Далеко не везде это приемлемо
Tadeusz
там с моей (ansible) стороны с пол пинка все завелось
Tadeusz
basic мне не подходил ибо вендовые тачки в домене, да и зачем...
Timur
basic мне не подходил ибо вендовые тачки в домене, да и зачем...
А доменную по winrm нормально настроить уже не так тривиально
Anton
у меня все ок настраивается. :)
Anton
т.е. плейбуки отрабатывают, но иногда падают посередине
Timur
у меня все ок настраивается. :)
Ну, так настройки в студию
Anton
это конерктно баг винрм в винде, но я подумал если тут ансиблд сообщество то кто то уже наступал на это кроме меня и знает как побороть. на гитхабе то есть обсуждения но мне не помогли.
Tadeusz
т.е. плейбуки отрабатывают, но иногда падают посередине
у меня бывало такое что по истечении какого-то времени протухала авторизация в kerberos, kinit’ом решалось
Anton
а поясните за kinit, возможно моя проблема да.
Anton
Ну, так настройки в студию
[some_group:vars] ansible_user='user' ansible_password='password' ansible_port=5986 ansible_connection=winrm ansible_winrm_server_cert_validation=ignore ansible_winrm_operation_timeout_sec=120 ansible_winrm_read_timeout_sec=180 в общем то все, остальное делает скрипт
Tadeusz
ну это для kerberos авторизации, если у тебя что-то работает, значит не твое оно)
Ждун
в ансибле доке все написано
Timur
я както разобрался )
Ну, и молодец. :)
Anton
https://raw.githubusercontent.com/ansible/ansible/devel/examples/scripts/ConfigureRemotingForAnsible.ps1
Anton
вот этой штукой просто включаю winrm
Anton
там беда была именно с тем, что иногда винрм умирает, потому что не может успеть ответить или ломается после очередного запроса.
Anton
Это basic авторизация
да вполне вероятно, мне не принципиально какая :)
Timur
Вот тут гляньте детали: https://docs.microsoft.com/en-us/windows/desktop/winrm/quotas
Anton
ок, спасибо
Tadeusz
winrm get winrm/config
Timur
ну на хост ходит один плейбук ансибл, с чего бы ему не хватать, но я покручу
После завершения плейбуки открытая сессия остается висеть какое-то время
Ждун
https://serverfault.com/questions/907221/windows-ubuntu-bash-hypervisor-winrm-ansible-server-not-found-in-kerberos/907752#907752
Ждун
здесь в свое время описывал свои настройки по работе с керберосом
Ждун
на баг не обращайте внимания, это был еще тот затуп и пару дней тупняка )
Anton
winrm get winrm/config
https://pastebin.com/raw/zLdmdVv1
Anton
После завершения плейбуки открытая сессия остается висеть какое-то время
у меня один плей, вероятно сессия и после таска остается, но странно ибо чаще всего такая ошибка возникает сразу после сбора фактов, или не возникает вообще.
Tadeusz
MaxShellsPerUser = 2147483647 хуя, ты грубанул)
Anton
MaxShellsPerUser = 2147483647 хуя, ты грубанул)
это дефольтное, или то что выставляется скриптом при включении :)
Tadeusz
зло
Anton
зло
походу это некое стандартное значение, не вижу что бы в процессе оно вообще менялось. какое лучше?
Tadeusz
я не знаю даже на что оно может влиять)
Oleg
ребзи, как можно помимо модуля command получить список файлов в каталоге определенного расширения? что бы потом передать в переменную и произвисти с ними определенные действия
Womchik
shell :)
Oleg
find
find использую, но он в переменную передает почему то все( а мне надо только название файла
Oleg
find
вместо названия переменная посдавляет и uid, и atime, и inode и тд. короче всю информацию о файле
Alex
да, фильтруйте по path
Timur
find же не знает, что именно вам нужно знать о файлах
Tadeusz
shell костыльно, но быстро ж )
Timur
shell костыльно, но быстро ж )
Нахрен не нужен шелл для такого
Timur
Тут вопрос концептуальный возник по ансибл-линту. Точнее, по одному из его правил. Вот по этому: https://github.com/ansible/ansible-lint/blob/master/lib/ansiblelint/rules/ComparisonToEmptyStringRule.py
Timur
Собственно, вот дискуссия поднятая на эту тему: https://github.com/ansible/ansible-lint/issues/457
Timur
Речь о том, что в текущей версии ансибл-линт ругается на присутствие в коде conditionals вида: when: my_var != ''
George
по-моему это пиздец
Timur
А более простая конструкция вида when: my_var для строковых переменных корректно не работает
George
либо пускай предложат нормальный вариант сделать то же самое, но по-правильному
Timur
Есть вот такой вариант: when: my_var | length
Timur
Кто что думает на этот счет?
George
!= '' короче на 3 символа
MRY
Всем привет. Не подскажите какой лучше модуль юзать для добавления хостов в инвентори файл после создания VM из темплейта ?
Vadim
add_host
Timur
add_host
Плюсую
MRY
его как лучше юзать до или после wait_for_connection:
MRY
?
Timur
До, разумеется
MRY
ок
MRY
спасибо
Timur
Иначе к чему вы коннектиться будете?
MRY
add_host добавит записи в файл инвентори из которого началось исполнение или же добавит в дефолтный инвентори новые записи ? В официальной документации к модулю нет описания как указать кастомный инвентори файл в который надо добавить новые записи.