G72K
чо? куда?
Ну вот у вас есть где-то внутри import config.libsonnet, в перед запуском делаете ln -s prod.libsonnet config.libsonnet
Rainbow
Andor
Andor
например у меня несколько кубер-кластеров, и графану мне надо деплоить в один, а в другие - не надо
G72K
В идеале должен быть сиай, в котором плагины экспозят различные таски и (хуй знает каким, я не придумал еще) внятным управлением кондишионалами, чтобы все это можно было более-менее лаконично-декларативно описать, но писать эти плагины еще более ебануться (стоит только посмотреть на всякие доступные для дженкинса вещи их апи)
Весь СИАЙ хочется одной большой программой , но модульной ) на этапе генерации манифестов я не хочу гадать, анализировать , читать ридми или общаться с людьми, чтобы знать что вот конкретно этот докер имадж он на Яве, а значит надо добавить jmx_exporter сайдкар, но только если разработчики не запилили нативный экспорт прометеус метрик, я хочу это просто ЗНАТЬ, потому что система типов и объект прилетевший сверху этого мега пайплайны говорит мне об этом
G72K
Ну и визаулизация всего это дааа. Мои куцые знания функциональщины подсказывают, что если писать на аппликативных функторах (что б это не значило, надо читать книгу по Хаскелю срочно), то до выполнения первого шага будут известны заранее все возможные ветки и шаги (навроде состояний парсеров) а значит можно свизуализировать весь пайплайн заранее. Если на монадах то только по ходу выполнения похоже
Rainbow
Rainbow
херни которые пытаются догадаться что делать и вгоняют в рамки
Rainbow
Я про то, что в таких кейсах в cd вообще никто не вмешивается и админов даже нет
G72K
Rainbow
G72K
Rainbow
чем ближе приложение к serverless тем проще - у меня так выходит. Только конкретно куда-то на aws я не закидываю, просто шаблонный деплой в куб.
Rainbow
Сложный devops обычно у легаси
Vadim
Rainbow
сейчас можно иметь пару SPA, пару апи в виде serverless и этого достаточно для большей части компаний.
Rainbow
И админы есть только потому, что это дешевле переписывания легаси
Etki
Etki
G72K
как только снимается ограничение - идет усложнение cd/cd резкое
Вы вынуждены упрощать CI потому что все CI тулзы говно несовместимое само с собой даже. От этого весь сервелесс, потому что боли много . Нет ни одной причины почему оно должно быть так больно. Весь СИ по сложности совместим со средней руки энтерпрайз приложением , никто почему то не рвется писать бизнес задачи на ямлах с их only/except и тэгами. Считается что админы не могут в код и первые несколько шагов в каждом продукте действительно с ямлом выглядят простыми, пиздец наступает когда уже поздно и Ктулху живёт своей жизнью
Etki
и когда кто-нибудь "хммм да это же повторяющиеся вещи, возьму-ка я анкоры"
Etki
в circle ci с их орбами прикольно, они рендерят промежуточный yml, поэтому можно полностью посмотреть, что там да и как
Rainbow
Rainbow
Я свои "lambda" деплою шаблонным k8s.yml файлом, только env и порты меняют. И крайне расстраиваюсь, если шалон не заходит.
Rainbow
А на чистый serverless не перехожу, потому что 30% легаси. А мониторить два места не хочу, сейчас все в кубенях с единой точкой мониторинга.
Rainbow
Я пытался использовать
https://kubeless.io/
но не зашло
- мало декларативности
- неоптимальная сборка
В теории мне оператора просто себе написать нужно
Andrey
кто разбирается в istio/envoy? Какие метрики с него можно использовать как количество http запросов к поду?
Rainbow
а есть какой-то оператор на static site? сколько гуглил... не гуглится. Типа s3 или pv ему даёшь, пару строк от ingress и вуаля.
Etki
на go большей частью, но можно на чем хочешь
нету артефактов :\ тоже очень важная часть (отчеты о тестах, результаты приемочных тестов - если у тебя библиотека процессит изображения, то ты их должен видеть в конце пайплайна, и т.п.)
но вообще попробую поставить как-нибудь
Rainbow
Rainbow
там есть плагин слака, вроде того
Etki
вся эта штука подразумевает удобство для тех, кто ей пользуется, билд свалился - должен быть дашборд, в котором можно посмотреть, в чем причина
Etki
в идеале с интеграцией произвольных отчетов в виде отдельных табов
Etki
пора переименовываться в reasonable_ci_ru
Rainbow
Там есть ui. В slack закидывать ссылку в случае фейла
Etki
ui для артефактов?
Andor
Rainbow
или там интеграция с github, уже github засылает
Etki
Andor
тесты - лишь часть CI/CD
Andor
ну ты сам знаешь
Etki
ага, я про то что все можно свести к просто вызовам нужных вещей без баш-ада
Andor
и всё равно, первое что будет реализовано (плагином?) для такого CI/CD - запуск кастомный консольных команд :)
Andor
это будет другой ад, ни разу не лучше, чем баш-ад
Rainbow
gitlab анонсят serverless
Etki
смотря кто делает, торвальдсу бы я доверил
Etki
(с опаской)
Etki
не заглядывал )
Andor
ну и всё равно он же не в одно лицо это делал
Anonymous
лол
https://www.youtube.com/watch?v=1lgsQ3PKz9M
Andor
смотрю я вощем на этот ваш жсоннет и уже готов сказать что он скорее норм чем говно
но сам бы с нуля я такое устал делать, быстрее бы сделал на том же kustomize
Andor
(это я kube-prometheus всё ещё кастомизирую)
Vadim
https://developers.soundcloud.com/blog/using-kubernetes-pod-metadata-to-improve-zipkin-traces
красиво, Soundcloud умеет добавлять в трейсы какой именно под обработал запрос
G72K
Andor
лично мне - не жалко! :)
Tamerlan
коллеги, никто не сталкивался с ошибкой gitlab-runner'a?
ERROR: Job failed: command terminated with exit code 137
Tamerlan
runners.kubernetes, падаем при сборки докер образа
G72K
OOMKILLER
Andrey
Andor
не обязаательно OOM, любой KILL
Andor
но обычно это ООМ конечно
Tamerlan
только что увеличил вдвое лимит для пода с раннером. эффект нулевой
Andor
Tamerlan
или это поды хелперы умирают?
Andrey
Tamerlan
Andrey
так посмотри на реальное потребление памяти подами
Andor
Andrey
посмотри в логи на ноде, куда они заскедулились - в логах ядра может быть сообщение от оомкиллера
Andor
и логов из кубера
Tamerlan