Vitaly
А путь такой есть?
George
опять бсда?
Anonymous
путь такой есть - да
George
включи более вербозный режим
Anonymous
там -vvvv
checkdiff
А простым gzip -d распаковывается?
Anonymous
пока что сделал через шел отак: gunzip -c db_dump_file.sql.gz | mysql -u root -p db_name
Oleksandr
можно просто zcat - дело вкуса
Anonymous
в идеале хотел через модуль импортировать
Gleb
Умные люди используют LDAP 😉 Но раз ты хочешь запилить такое - значит, у тебя своя атмосфера. Тогда самое лучшее, что можно сделать - выкинуть эту заумь и написать просто и понятно: цикл создания групп, после него цикл добавления пользователей.
а не очень сложная реализация получается?🙄 - на серверы доступ нужен для 3-5 человек, в компании несколько сотен пользователей и пачка виндоадминов которые вообще ничего знать не должны даже про большую часть серверов, но при этом нужны либо сложные политики по разграничению уровней доступа и про них всегда надо помнить либо держать отдельную систему куда синхронизировать из другой данные - опять же гемор какой то. Чем проще получается учитывая количество манипуляций? При том что история про "уволился и надо забрать доступ" вообще прохладная т.кю в 8 случаев из 10 сетевого доступа то все равно не будет у уволенного, хотя и запустить 1 плейбук раз в год как бы не видится огромной проблемой. Я в общем то не против схемы с лдапом, но я не вижу никакой простоты решения без учета того что вокруг лдапа нужно еще миллион действий с аудитом и прочим. Я понимаю конечно что про безопасность думать никто не любит, но схема с осознаным нажатием на кнопку запуска плейбука хотя бы заставит помнить о том что в принципе у кого-то куда-то доступ есть и это реально проще и безопаснее чем использовать общедоступный лдап и уж тем более проще если держать второй инстанс с юзерами только для доступа к серверам. А заввязывать на этих 3 человек еще и администрирование лдапа опять же не в тему - там еще штук 5 виндоадминов сидит для этого. Я уж не говорю про то что делать кластер даже из виндового ад сомнительное удовольствие, а уж все остальные решения вообще тошноту вызывают(openldap мертворожденный, альфа версия redhat identity management в виде freeipa(к комерческой версии притензий нет вообще) которая может от любого чиха развалиться тоже такое себе удовлльсвтие, а все осталньое стоит таких денег что писать страшно), а ведь придется обеспечить работу из нескольких дц тк без сетевого доступа до этой бд на сервер будет очень тяжело попасть. Ладно если это дев или тестирование, но с продакшеном такая тема вообще не выглядит простой по сравнению с плейбуком из пары тасков и списком юзеров. При этом я не говорю что ansible в данном случае это правильный путь, но оно как-то сильно проще и безопаснее выглядит. Конкретно мое мнение - людям вообще делать нечего на серверах, а если что-то надо подебажить на живую, на пару-другую серверов можно и ролью вкатить, не?
Anonymous
потратить время написать плейбук, и уволить тех кто нихера не делает
Anonymous
но ansible и windows это геморрой редкий
George
а не очень сложная реализация получается?🙄 - на серверы доступ нужен для 3-5 человек, в компании несколько сотен пользователей и пачка виндоадминов которые вообще ничего знать не должны даже про большую часть серверов, но при этом нужны либо сложные политики по разграничению уровней доступа и про них всегда надо помнить либо держать отдельную систему куда синхронизировать из другой данные - опять же гемор какой то. Чем проще получается учитывая количество манипуляций? При том что история про "уволился и надо забрать доступ" вообще прохладная т.кю в 8 случаев из 10 сетевого доступа то все равно не будет у уволенного, хотя и запустить 1 плейбук раз в год как бы не видится огромной проблемой. Я в общем то не против схемы с лдапом, но я не вижу никакой простоты решения без учета того что вокруг лдапа нужно еще миллион действий с аудитом и прочим. Я понимаю конечно что про безопасность думать никто не любит, но схема с осознаным нажатием на кнопку запуска плейбука хотя бы заставит помнить о том что в принципе у кого-то куда-то доступ есть и это реально проще и безопаснее чем использовать общедоступный лдап и уж тем более проще если держать второй инстанс с юзерами только для доступа к серверам. А заввязывать на этих 3 человек еще и администрирование лдапа опять же не в тему - там еще штук 5 виндоадминов сидит для этого. Я уж не говорю про то что делать кластер даже из виндового ад сомнительное удовольствие, а уж все остальные решения вообще тошноту вызывают(openldap мертворожденный, альфа версия redhat identity management в виде freeipa(к комерческой версии притензий нет вообще) которая может от любого чиха развалиться тоже такое себе удовлльсвтие, а все осталньое стоит таких денег что писать страшно), а ведь придется обеспечить работу из нескольких дц тк без сетевого доступа до этой бд на сервер будет очень тяжело попасть. Ладно если это дев или тестирование, но с продакшеном такая тема вообще не выглядит простой по сравнению с плейбуком из пары тасков и списком юзеров. При этом я не говорю что ansible в данном случае это правильный путь, но оно как-то сильно проще и безопаснее выглядит. Конкретно мое мнение - людям вообще делать нечего на серверах, а если что-то надо подебажить на живую, на пару-другую серверов можно и ролью вкатить, не?
ок, дополнительный критерий - мульти ДЦ
George
согласен, что лдап растянуть красиво на много дц... боль
Gleb
ну винда с ад в этом плане самое доступное решение, но все равно чего делать с балансом между безопасностью и удобствами? я не хочу что бы суперадмин лдапа получил доступ в любую группу
George
а так у тебя суперадмин плейбука получает доступ в любую группу
George
и у тебя нет процесса, согласно которому, ты грохаешь левые ссш ключи на тачках
George
в лдапе такое возможно сделать
George
Зависит от написания роли, конечно.
Вопрос не только и не сколько роли, а конфигурации сервера вообще
inqfen
Вообще под конец оффтопа моё мнение - управление правами должно быть из единого источника. И проще обеспечивать безопасность учеток только админов лдап, чем и админов лдап и ещё и тех, у кого доступ к тому плейбуку с правами
inqfen
Да и серверы могут прекрасно через керберос аутентификацию и через лдап авторизацию проводить, и добавлять в нужные группы юзеров, тогда и создавать никого не надо
Anonymous
а не очень сложная реализация получается?🙄 - на серверы доступ нужен для 3-5 человек, в компании несколько сотен пользователей и пачка виндоадминов которые вообще ничего знать не должны даже про большую часть серверов, но при этом нужны либо сложные политики по разграничению уровней доступа и про них всегда надо помнить либо держать отдельную систему куда синхронизировать из другой данные - опять же гемор какой то. Чем проще получается учитывая количество манипуляций? При том что история про "уволился и надо забрать доступ" вообще прохладная т.кю в 8 случаев из 10 сетевого доступа то все равно не будет у уволенного, хотя и запустить 1 плейбук раз в год как бы не видится огромной проблемой. Я в общем то не против схемы с лдапом, но я не вижу никакой простоты решения без учета того что вокруг лдапа нужно еще миллион действий с аудитом и прочим. Я понимаю конечно что про безопасность думать никто не любит, но схема с осознаным нажатием на кнопку запуска плейбука хотя бы заставит помнить о том что в принципе у кого-то куда-то доступ есть и это реально проще и безопаснее чем использовать общедоступный лдап и уж тем более проще если держать второй инстанс с юзерами только для доступа к серверам. А заввязывать на этих 3 человек еще и администрирование лдапа опять же не в тему - там еще штук 5 виндоадминов сидит для этого. Я уж не говорю про то что делать кластер даже из виндового ад сомнительное удовольствие, а уж все остальные решения вообще тошноту вызывают(openldap мертворожденный, альфа версия redhat identity management в виде freeipa(к комерческой версии притензий нет вообще) которая может от любого чиха развалиться тоже такое себе удовлльсвтие, а все осталньое стоит таких денег что писать страшно), а ведь придется обеспечить работу из нескольких дц тк без сетевого доступа до этой бд на сервер будет очень тяжело попасть. Ладно если это дев или тестирование, но с продакшеном такая тема вообще не выглядит простой по сравнению с плейбуком из пары тасков и списком юзеров. При этом я не говорю что ansible в данном случае это правильный путь, но оно как-то сильно проще и безопаснее выглядит. Конкретно мое мнение - людям вообще делать нечего на серверах, а если что-то надо подебажить на живую, на пару-другую серверов можно и ролью вкатить, не?
Благодаря таким велосипедистам костыльщикам. Спрос на адекватных ИТ специалистов никогда не пропадём. Ведь таким всегда - когда в руках молоток, вокруг все кажется гвоздями
Anonymous
Я тут до сих пор виду одного из много работ назад, коллегу подобного типа ) что задаёт сюда вопросы. Где всегда какой то извращённый садо мазо кейс
Gleb
ну зачем на личности переходить из-за одного примера причем вполне имеющего место быть, я как будто через сообщение пишу дичь. Я без претензий и угроз интересуюсь, ну не каждый день какой то аноним называет " не профессионалом "
John
Парни, подскажите как в jinja2 темплейте получить эти vars'ы? static_route: - network: 10.0.1.0/24 next-hop: 10.0.0.2 distance: 1 - network: 10.0.2.0/24 next-hop: 10.0.0.2 distance: 1 Такая конструкция {% for value in static_route -%} {{ value }} {%- endfor %} дает {'network':•'10.0.1.0/24',•'next-hop':•'10.0.0.2',•'distance':•1}{'network':•'10.0.2.0/24',•'next-hop':•'10.0.0.2',•'distance':•1} а как получить next-hop? мне в конечном счете надо получить две строки вида: set protocol static route {{network}} next-hop {{next-hop}} distance {{distance}}
Vladislav 👻
value.next-hop
Sergey
etc.
Vladislav 👻
Вот только из-за минуса будет ошибка
John
value.next-hop
не работает Error in your values input filed: unsupported operand type(s) for -: 'Undefined' and 'Undefined'
Sergey
поэтому см.выше 😉
Sergey
потому что ключи словарей не надо после точки писать
Vladislav 👻
В ансибле можно же 😬
John
value['network']
c нетворком проблем нет, а вот с остальным - есть)
Sergey
В ансибле можно же 😬
Да, ты сейчас отличный пример видел
Vladislav 👻
Вот только из-за минуса будет ошибка
Vladislav 👻
Потому что не надо минус юзать
Vladislav 👻
А прямое обращение в словарь не делает обработку наличия ключа
John
? value['distance']
блин, а так работает. Мне казалось я так пробовал) Спасибо))
Sergey
А прямое обращение в словарь не делает обработку наличия ключа
Честно сказать, я это всегда сам обрабатываю (default там всякий, omit, вот это вот всё)
Vladislav 👻
Ошибка будет при обращении
Vladislav 👻
Приходится обрабатывать их серии if key in value
John
а как сделать что бы все было чики-пуки?)
Sergey
Ошибка будет при обращении
dict['кощей бессмертный'] | default('баба-яга') примерно так, причём default-значения удобно сложить в роль
Vladislav 👻
Не работало
Vladislav 👻
Если ключа нет
Sergey
Не работало
Когда перестало-то? O_o
Vladislav 👻
Без понятия, у меня не работало что-то
Sergey
Без понятия, у меня не работало что-то
https://docs.ansible.com/ansible/latest/user_guide/playbooks_filters.html#defaulting-undefined-variables
George
Не работало
оно с ошибкой падает? дай выхлоп
George
наверняка чертов пихтон
Vladislav 👻
Попозже посмотрю
John
Парни, а в group_vars/all.yml как можно инклудить? а то у меня он жирнеет на глазах, хотелось бы разложить в group_vars/include/var1.yml var2.yml, а в all.yml просто указать include va1.yml var2.yml и др.
George
так же тоже можно
George
group_vars/all.yml -> group_vars/all/1.yaml, 2.yaml etc.
George
или нет?
John
ого, я не знал что так тоже можно)
Sergey
или нет?
Можно. Dir-based group vars
Vladislav 👻
https://habr.com/ru/post/453520/
Vladislav 👻
У нас уже потестили, деплой дагов с 45 сек до 15 сократили 👻
Anonymous
чтобы не плодить все в одном месте
Sergey
У нас уже потестили, деплой дагов с 45 сек до 15 сократили 👻
А если pipelining включить, то без плясок с бубном ускоришь
Timur
А если pipelining включить, то без плясок с бубном ускоришь
Слушай, много раз уже разбирали ведь. Зачем повторять-то ложный тезис?
Sergey
Слушай, много раз уже разбирали ведь. Зачем повторять-то ложный тезис?
Чтобы не делали из митогена серебрянную пулю. Он не production-ready.
Vladislav 👻
Честно сказать, я это всегда сам обрабатываю (default там всякий, omit, вот это вот всё)
хм и правда работает 🤔 странно, точно помню, у меня в темплейте не работало
Aлексей
Привет, кто может подсказать как создать пользователя БД через ansible ( postgresql_user) не понимаю как передать пароль
Aлексей
Я ниче там не понял
Aлексей