George
George
Max
sbog
Max
Угу.
читабельнее расфасовать файлы по дистрам. так можно даже паковать только актуральные клиентам.
George
Угу.
Поставляйте софт образами виртуалок ))) ладно. Шучу. Понимаю боль коробочной разработки. Но вообще сколько я видел разрабов - они устанавливали типовые конфигурации. И требовали типовое железо - ось
Max
George
Иначе "софт данную конфигурацию не поддерживает и идите.... Нафихь"
Max
🚽 я слился.
sbog
Не везде получается докер. Есть кастомеры, которые не хотят. Есть софт, которому не очень нужно - условно, нужна baremetal нода большая. Ну и все равно есть базы, которые не любят совать в докер, там начинается целая история всегда.
По поводу "поддерживает/не поддерживает" - это ж опять к заказчику. Условно, к тебе приходит человек и говорит "есть N денег и надо вот такое и больше никакое". Кейс достаточно частый, когда есть взаимодействие с внешними клиентами у этого человека. И ты или делаешь, как ему надо, или отказываешься от денег. Когда у тебя есть универсальный набор, откатанный на предыдущих десяти кастомерах, то к копипасту сводится конфигурация. А когда его нет, то приходится роли допиливать. Вы ж не думаете, коллеги, что я такой взял и решил все запихнуть в конфиги просто так? Я годами шел через эту боль, прежде чем стал использовать то, что есть.
George
Мне кажется, что опять проблема административная решается техническими средствами
George
Вот завтра приходит заказчик с Солярис и говорит - хочу. Вашу действия ?
George
Нормальная практика - у клиента есть - виртуальная среда. Вмварь. Опенштак. Докер. Шмокер. Поставляете софт блоками. Крупными. Как оно внутри - не дело заказчика. Кастомер ведь не лезет в ядро линукса ? Не лезет. Вот и все
George
Просто иначе это не промышленное написание софта... А уровень ручной работы мастера
Дорого. И не факт, что нужно
George
Повторюсь. Мы такое проходили. Была одна уникальная платформа на хадупе. Продается как коробочный софт. Не мы как клиенты говорили - типо мы хотим центось, версию такую-то. А подрядчик говорит - нужно то-то и то-то и система будет работать и решать ваши задачи.
George
Потому что поддерживая зоопарк - вы увеличиваете стоимость поддержки - клиент менее доволен, компания менее конкурентноспособна. Да, истина где-то посередине. Понятно, почему саас сервисы выстрелили. Нет этого всего гемора
George
Dixi
sbog
Нормальная практика - у клиента есть - виртуальная среда. Вмварь. Опенштак. Докер. Шмокер. Поставляете софт блоками. Крупными. Как оно внутри - не дело заказчика. Кастомер ведь не лезет в ядро линукса ? Не лезет. Вот и все
У меня аутсорс. Приходят разные люди. Очень много приходят сарафанным радио. Хотят, как правило, получить стейдж/прод со своим софтом, CI, какие-то типовые вещи типа централизованного логирования, возможности аудита и т.п. Запросы типовые, но нюансы бывают. Нужно средство, которое сводит к минимуму написание и к максимуму конфигурирование. Написал что-то неправильно - оно в идеале валидируется до применения. При этом есть задача не "написать идеально", а "получить деньги и сделать хорошо". Параллельно есть набор людей, которые не обладают экспертизой достаточно хорошего уровня, нужно минимизировать их неправильный код.
И тут начинается ряд историй. Когда можно в докер или куб упаковать - это одна история, она вообще не про ансибл. А когда нужно бареметал или много нюансов - тут всегда ансибл, но надо минимизировать импакт в написание ролей.
sbog
Поэтому практика - это хорошо, но деньги просто очень хочется заработать. И на этом фоне оказывается, что бизнес делает то, что просят, а не то, что в практиках.
Alex
У меня аутсорс. Приходят разные люди. Очень много приходят сарафанным радио. Хотят, как правило, получить стейдж/прод со своим софтом, CI, какие-то типовые вещи типа централизованного логирования, возможности аудита и т.п. Запросы типовые, но нюансы бывают. Нужно средство, которое сводит к минимуму написание и к максимуму конфигурирование. Написал что-то неправильно - оно в идеале валидируется до применения. При этом есть задача не "написать идеально", а "получить деньги и сделать хорошо". Параллельно есть набор людей, которые не обладают экспертизой достаточно хорошего уровня, нужно минимизировать их неправильный код.
И тут начинается ряд историй. Когда можно в докер или куб упаковать - это одна история, она вообще не про ансибл. А когда нужно бареметал или много нюансов - тут всегда ансибл, но надо минимизировать импакт в написание ролей.
тогда уж лучше
templates/{{ CLIENT }}/{{ DISTRO }}/etc/ssh/sshd_config.j2
Alex
а не городить всех клиентов в один конфиг
sbog
sbog
И, кстати, говоря об OpenStack - вы гляньте на kolla-ansible. Вот там прямо в полный рост стоит проблема того, что надо уметь ставиться на кучу дистров, кучу версий дистров, кучу версий софта, оно между собой не полностью совместимо etc.
sbog
И это еще самое рабочее решение. Раньше это все делалось Puppet-ом, я еще паппетные апстримные манифесты пилил для этого.
Alex
> Нарушаем DRY. Рано или поздно меняется один конфиг и не меняется другой.
с таким же успехом меняете одному клиенту, а меняется у всех
sbog
Max
У меня аутсорс. Приходят разные люди. Очень много приходят сарафанным радио. Хотят, как правило, получить стейдж/прод со своим софтом, CI, какие-то типовые вещи типа централизованного логирования, возможности аудита и т.п. Запросы типовые, но нюансы бывают. Нужно средство, которое сводит к минимуму написание и к максимуму конфигурирование. Написал что-то неправильно - оно в идеале валидируется до применения. При этом есть задача не "написать идеально", а "получить деньги и сделать хорошо". Параллельно есть набор людей, которые не обладают экспертизой достаточно хорошего уровня, нужно минимизировать их неправильный код.
И тут начинается ряд историй. Когда можно в докер или куб упаковать - это одна история, она вообще не про ансибл. А когда нужно бареметал или много нюансов - тут всегда ансибл, но надо минимизировать импакт в написание ролей.
то что я понимаю из этого:
вы не понимаете, что максимум конфигурации - это максимум расхода вашей фирме.
время ваших интеграторов - убивает вашу маржу.
(может я не все тонкости понял, но толстости - точно понял).
sbog
Max
sbog
Max
имхо, ессно.
Max
именно из-за галерности фирмы и постоянных context-switches разрабов.
Max
короче, девопса вам не хватает.
sbog
Ну вот я тоже так думал раньше. И пришел к выводу, что делать так, как я делаю сейчас, оптимальнее, посчитав, сколько времени тогда уходило и сколько сейчас.
Max
Max
а с т.з. масштабирования вашей фирмы - это эпик фейл.
Max
даже если у вас идут продажи, и фирма зарабатывает сейчас какие-то там тугрики.
sbog
Это сильный оффтоп, на самом деле. Я бы рад рассказать про то, как вообще бизнес идет и что правильно на мой взгляд, а что нет, но это не вяжется с тематикой чата.
Max
Max
я не шифруюсь, мне можно написать 🙊
sbog
В личку тогда лучше
Alex
подскажите, а у slurp есть какие то особенности со спец символами в файле? Ибо после
{{ file_base64 | b64decode }}
я получаю совсем другое содержимое
•°•
Котоны, а где вы хостите роли внутри компании?
интересует не гит, а что-то типо приватной галакси или как артифактори, ток для ролей
sbog
А зачем, если можно тащить из гита через ansible-galaxy?
George
Gleb
sbog
•°•
Gleb
ты можешь даже клонить без веток перед выкаткой, проблема реально надуманная
•°•
А такой кейс: гит открыт всем людям в компании. Но нужна авторизация обязательно.
Мы деплоим в AWS и в некоторых случаях (почти всегда) роли хочется просто скачать без авторизации.
Для этого и хранилище. А так придется ключ носить.
Gleb
если в ролях креды зашифруй их волтом тем же
Gleb
и пусть смотрят скок душе угодно
•°•
А как вам такое: складывать роли в артифактори в качестве tar.gz, а потом забирать с помощью галакси?
•°•
Костыльно?
Павел
Max
Костыльно?
не просто костыльно. поясни преимущество над
ansible-galaxy install -r reqs.myplaybook.yml
ansible-playbook -i inv myplaybook.yml
когда в reqs.myplaybook.yml прописаны все роли с урлами и версиями.
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 я не очень знаю, то лучше все же спрошу
Lamobot
Доброго дня, хочу странного...наверное, есть список логинов, которые отсутствуют в AD группе, хочу их всех закинуть в группу при помощи ansible, немного погуглил и наткнулся на такую конструкцию(https://pastebin.com/iDY1FR8Q), если я ей загоню список логинов в name то прокатит или как лучше реализвать ? Так как дело с продом, да и AD я не очень знаю, то лучше все же спрошу
Список в name не получится, скорее всего, но в цикле прогнать этот модуль по всем юзерам можно.
Ivan
Art
Aleks
Доброго времени суток. Помогите пожалуйста. Установил awx, создал плейбук: по ssh коннекчусь к cisco2960 и даю команду и результат вывожу на экран (register debug). Плейбук отрабатывает, но вывод не приходит. В чем может быть причина?
Dmitriy
ну, я все же надеялся что кто то сталкивался с подобным и скажет "вот тебе роль гоовая, проверено" :) хорошо, спасибо, может кто еще появится, пока начну неспеша читать про тестовый контроллер домена
Alexander