Max
Тогда по тому же принципу можно свести количество переменных к минимуму
не "можно", а фкинг "нужно", энтропия, господа - наш враг. око Саурона не дремлет.
sbog
Много. Очень много
Попробуйте поменьше на большом количестве кастомеров.
Max
Попробуйте поменьше на большом количестве кастомеров.
я предложил вариант, ты его проскочил.
Max
Угу.
читабельнее расфасовать файлы по дистрам. так можно даже паковать только актуральные клиентам.
George
Угу.
Поставляйте софт образами виртуалок ))) ладно. Шучу. Понимаю боль коробочной разработки. Но вообще сколько я видел разрабов - они устанавливали типовые конфигурации. И требовали типовое железо - ось
George
Иначе "софт данную конфигурацию не поддерживает и идите.... Нафихь"
Max
🚽 я слился.
sbog
Не везде получается докер. Есть кастомеры, которые не хотят. Есть софт, которому не очень нужно - условно, нужна baremetal нода большая. Ну и все равно есть базы, которые не любят совать в докер, там начинается целая история всегда. По поводу "поддерживает/не поддерживает" - это ж опять к заказчику. Условно, к тебе приходит человек и говорит "есть N денег и надо вот такое и больше никакое". Кейс достаточно частый, когда есть взаимодействие с внешними клиентами у этого человека. И ты или делаешь, как ему надо, или отказываешься от денег. Когда у тебя есть универсальный набор, откатанный на предыдущих десяти кастомерах, то к копипасту сводится конфигурация. А когда его нет, то приходится роли допиливать. Вы ж не думаете, коллеги, что я такой взял и решил все запихнуть в конфиги просто так? Я годами шел через эту боль, прежде чем стал использовать то, что есть.
George
Мне кажется, что опять проблема административная решается техническими средствами
George
Вот завтра приходит заказчик с Солярис и говорит - хочу. Вашу действия ?
sbog
Вот завтра приходит заказчик с Солярис и говорит - хочу. Вашу действия ?
Не имеем экспертизы, к сожалению. Поэтому не можем обеспечить должный уровень качества. Вот серьезно, без шуток.
George
Нормальная практика - у клиента есть - виртуальная среда. Вмварь. Опенштак. Докер. Шмокер. Поставляете софт блоками. Крупными. Как оно внутри - не дело заказчика. Кастомер ведь не лезет в ядро линукса ? Не лезет. Вот и все
George
Просто иначе это не промышленное написание софта... А уровень ручной работы мастера Дорого. И не факт, что нужно
George
Повторюсь. Мы такое проходили. Была одна уникальная платформа на хадупе. Продается как коробочный софт. Не мы как клиенты говорили - типо мы хотим центось, версию такую-то. А подрядчик говорит - нужно то-то и то-то и система будет работать и решать ваши задачи.
George
Потому что поддерживая зоопарк - вы увеличиваете стоимость поддержки - клиент менее доволен, компания менее конкурентноспособна. Да, истина где-то посередине. Понятно, почему саас сервисы выстрелили. Нет этого всего гемора
George
Dixi
sbog
Нормальная практика - у клиента есть - виртуальная среда. Вмварь. Опенштак. Докер. Шмокер. Поставляете софт блоками. Крупными. Как оно внутри - не дело заказчика. Кастомер ведь не лезет в ядро линукса ? Не лезет. Вот и все
У меня аутсорс. Приходят разные люди. Очень много приходят сарафанным радио. Хотят, как правило, получить стейдж/прод со своим софтом, CI, какие-то типовые вещи типа централизованного логирования, возможности аудита и т.п. Запросы типовые, но нюансы бывают. Нужно средство, которое сводит к минимуму написание и к максимуму конфигурирование. Написал что-то неправильно - оно в идеале валидируется до применения. При этом есть задача не "написать идеально", а "получить деньги и сделать хорошо". Параллельно есть набор людей, которые не обладают экспертизой достаточно хорошего уровня, нужно минимизировать их неправильный код. И тут начинается ряд историй. Когда можно в докер или куб упаковать - это одна история, она вообще не про ансибл. А когда нужно бареметал или много нюансов - тут всегда ансибл, но надо минимизировать импакт в написание ролей.
sbog
Поэтому практика - это хорошо, но деньги просто очень хочется заработать. И на этом фоне оказывается, что бизнес делает то, что просят, а не то, что в практиках.
Alex
У меня аутсорс. Приходят разные люди. Очень много приходят сарафанным радио. Хотят, как правило, получить стейдж/прод со своим софтом, CI, какие-то типовые вещи типа централизованного логирования, возможности аудита и т.п. Запросы типовые, но нюансы бывают. Нужно средство, которое сводит к минимуму написание и к максимуму конфигурирование. Написал что-то неправильно - оно в идеале валидируется до применения. При этом есть задача не "написать идеально", а "получить деньги и сделать хорошо". Параллельно есть набор людей, которые не обладают экспертизой достаточно хорошего уровня, нужно минимизировать их неправильный код. И тут начинается ряд историй. Когда можно в докер или куб упаковать - это одна история, она вообще не про ансибл. А когда нужно бареметал или много нюансов - тут всегда ансибл, но надо минимизировать импакт в написание ролей.
тогда уж лучше templates/{{ CLIENT }}/{{ DISTRO }}/etc/ssh/sshd_config.j2
Alex
а не городить всех клиентов в один конфиг
sbog
тогда уж лучше templates/{{ CLIENT }}/{{ DISTRO }}/etc/ssh/sshd_config.j2
Нарушаем DRY. Рано или поздно меняется один конфиг и не меняется другой.
sbog
И, кстати, говоря об OpenStack - вы гляньте на kolla-ansible. Вот там прямо в полный рост стоит проблема того, что надо уметь ставиться на кучу дистров, кучу версий дистров, кучу версий софта, оно между собой не полностью совместимо etc.
sbog
И это еще самое рабочее решение. Раньше это все делалось Puppet-ом, я еще паппетные апстримные манифесты пилил для этого.
Alex
> Нарушаем DRY. Рано или поздно меняется один конфиг и не меняется другой. с таким же успехом меняете одному клиенту, а меняется у всех
sbog
> Нарушаем DRY. Рано или поздно меняется один конфиг и не меняется другой. с таким же успехом меняете одному клиенту, а меняется у всех
Не меняется, потому что у вас переменные разделены на уровне конфигураций, а не на уровне роли.
Max
У меня аутсорс. Приходят разные люди. Очень много приходят сарафанным радио. Хотят, как правило, получить стейдж/прод со своим софтом, CI, какие-то типовые вещи типа централизованного логирования, возможности аудита и т.п. Запросы типовые, но нюансы бывают. Нужно средство, которое сводит к минимуму написание и к максимуму конфигурирование. Написал что-то неправильно - оно в идеале валидируется до применения. При этом есть задача не "написать идеально", а "получить деньги и сделать хорошо". Параллельно есть набор людей, которые не обладают экспертизой достаточно хорошего уровня, нужно минимизировать их неправильный код. И тут начинается ряд историй. Когда можно в докер или куб упаковать - это одна история, она вообще не про ансибл. А когда нужно бареметал или много нюансов - тут всегда ансибл, но надо минимизировать импакт в написание ролей.
то что я понимаю из этого: вы не понимаете, что максимум конфигурации - это максимум расхода вашей фирме. время ваших интеграторов - убивает вашу маржу. (может я не все тонкости понял, но толстости - точно понял).
sbog
то что я понимаю из этого: вы не понимаете, что максимум конфигурации - это максимум расхода вашей фирме. время ваших интеграторов - убивает вашу маржу. (может я не все тонкости понял, но толстости - точно понял).
Угу. И на опыте - дописывание роли тянет максимум времени. Часто потому что ее писал один человек, а дописывает другой. Или потому что забывается то, что писалось и надо заново в код втыкать.
Max
И, кстати, говоря об OpenStack - вы гляньте на kolla-ansible. Вот там прямо в полный рост стоит проблема того, что надо уметь ставиться на кучу дистров, кучу версий дистров, кучу версий софта, оно между собой не полностью совместимо etc.
блин опеншлак - это один из наиболее вопиющих проектов "как не управлять опен сорсным проектом". постоянные склоки между SIGами, лебедь, рак и щука.
Max
Угу. И на опыте - дописывание роли тянет максимум времени. Часто потому что ее писал один человек, а дописывает другой. Или потому что забывается то, что писалось и надо заново в код втыкать.
вы сохраняете глубину контекста всех задач таким вашим мета - подходом. это вам вместо снижения стоимости будущих изменений "благодаря" параметризации, эту стоимость повышает. у вас может сто́ит открытым текстом решить, что для вас важнее KISS чем DRY.
Max
имхо, ессно.
Max
именно из-за галерности фирмы и постоянных context-switches разрабов.
Max
короче, девопса вам не хватает.
sbog
Ну вот я тоже так думал раньше. И пришел к выводу, что делать так, как я делаю сейчас, оптимальнее, посчитав, сколько времени тогда уходило и сколько сейчас.
sbog
короче, девопса вам не хватает.
А у нас никого, кроме них и нет
Max
Ну вот я тоже так думал раньше. И пришел к выводу, что делать так, как я делаю сейчас, оптимальнее, посчитав, сколько времени тогда уходило и сколько сейчас.
это оптимальнее для тебя лично. ты "при деле", вдупляешь и все на тебе висит. это классический случай скиллового "амбара".
Max
а с т.з. масштабирования вашей фирмы - это эпик фейл.
Max
даже если у вас идут продажи, и фирма зарабатывает сейчас какие-то там тугрики.
sbog
Это сильный оффтоп, на самом деле. Я бы рад рассказать про то, как вообще бизнес идет и что правильно на мой взгляд, а что нет, но это не вяжется с тематикой чата.
Max
я не шифруюсь, мне можно написать 🙊
sbog
В личку тогда лучше
Alex
подскажите, а у slurp есть какие то особенности со спец символами в файле? Ибо после {{ file_base64 | b64decode }} я получаю совсем другое содержимое
•°•
Котоны, а где вы хостите роли внутри компании? интересует не гит, а что-то типо приватной галакси или как артифактори, ток для ролей
sbog
А зачем, если можно тащить из гита через ansible-galaxy?
•°•
А зачем, если можно тащить из гита через ansible-galaxy?
1. В гите всё: все ветки, вся история... 2. Не хочется деплоить из гита. А это бестпрактис - через галакси забирать из гита?
Gleb
ты можешь даже клонить без веток перед выкаткой, проблема реально надуманная
•°•
А такой кейс: гит открыт всем людям в компании. Но нужна авторизация обязательно. Мы деплоим в AWS и в некоторых случаях (почти всегда) роли хочется просто скачать без авторизации. Для этого и хранилище. А так придется ключ носить.
Gleb
если в ролях креды зашифруй их волтом тем же
Gleb
и пусть смотрят скок душе угодно
•°•
А как вам такое: складывать роли в артифактори в качестве tar.gz, а потом забирать с помощью галакси?
•°•
Костыльно?
•°•
у гита есть авторизация под токеном - не подходит?
Подходит, в целом. Но согласись, хорошо, когда ты не используешь авторизацию, когда она не нужна.
Max
Костыльно?
не просто костыльно. поясни преимущество над ansible-galaxy install -r reqs.myplaybook.yml ansible-playbook -i inv myplaybook.yml когда в reqs.myplaybook.yml прописаны все роли с урлами и версиями.
Max
Подходит, в целом. Но согласись, хорошо, когда ты не используешь авторизацию, когда она не нужна.
тавтологичненько. если авторизация не нужна, можно настроить гит быть доступным для всех (на почитать), а для пописа́ть уже нужно авторизироваться.
Max
это делается очень легко на любом гит сервере.
Andrey
и это правильно делать с тз того что авторизация может понадобиться через полгода и включить ее будет просто, без изменения архитектуры
Яша
fatal: [PC008]: UNREACHABLE! => {"changed": false, "msg": "ssl: HTTPSConnectionPool(host='pc008', port=5986): Max retries exceeded with url: /wsman (Caused by ConnectTimeoutError(<urllib3.connection.VerifiedHTTPSConnection object at 0x7f8dc9ef8ef0>, 'Connection to pc008 timed out. (connect timeout=61)'))", "unreachable": true}
Яша
кто-нибудь сталкивался с такой ошибкой?
666 rur
У тебя коннект по таймауту отлетел судя по тексту)
Яша
да. не обратил внимание на порт, он по 5986 стучится, а винрм на 5985 только настроен =\ подсказали. спс
•°•
@Mahatmasamatman @naughtius_max в целом согласен. Спасибо.
Dmitriy
Доброго дня, хочу странного...наверное, есть список логинов, которые отсутствуют в AD группе, хочу их всех закинуть в группу при помощи ansible, немного погуглил и наткнулся на такую конструкцию(https://pastebin.com/iDY1FR8Q), если я ей загоню список логинов в name то прокатит или как лучше реализвать ? Так как дело с продом, да и AD я не очень знаю, то лучше все же спрошу
Dmitriy
Список в name не получится, скорее всего, но в цикле прогнать этот модуль по всем юзерам можно.
ну да, это понятно, with_items использую, тут больше вопрос кто реально с таким сталкивался и реализовывал, не хотелось бы эксперименты на бою проводить :)
Aleks
Доброго времени суток. Помогите пожалуйста. Установил awx, создал плейбук: по ssh коннекчусь к cisco2960 и даю команду и результат вывожу на экран (register debug). Плейбук отрабатывает, но вывод не приходит. В чем может быть причина?
Dmitriy
ну, я все же надеялся что кто то сталкивался с подобным и скажет "вот тебе роль гоовая, проверено" :) хорошо, спасибо, может кто еще появится, пока начну неспеша читать про тестовый контроллер домена