Stanislav
У меня десятки контейнеров в минуту появляются и удаляются. как выловить целевой?
Anonymous
нет никакой серебрянной команды, AFAIK
Stanislav
Боль
Anonymous
логи кидать в ELK, ловить нужное и алертить
Sergey
а никак, если у вас тонна контейнеров с разными именами
Anonymous
всё равно нужно логгирование
Sergey
смотрите выступление на РИТ Д.Столярова про Prometheus
Sergey
нефиг разрабам давать доступ к куберу а потом бегать за ними подчищать фейлы, имхо
Stanislav
Stanislav
Т.е. автоматизация. Для этого есть CI, в нем можно добавить команду выгрузки логов
Sergey
Anonymous
ну так не давайте возможности заливать любой ямл куда попало
Stanislav
Но вот какой командой выгрузить логи - не могу найти
Sergey
задеплоил - смотрит namespace STAGE - смотрит логи пода
Leo
попроси еще проблема
Stanislav
Надо тупо автоматизировать трекинг причин неуспеха
Sergey
я грю вы наркоманите уже в дашборде это есть
Stanislav
Чтобы прогер не бегал никуда, а в почту/тикет получал отчет CI при автовозврате тикета
Stanislav
дашборд не выдается прогерам по причине бесполезности в вопросе автоматизации
Anonymous
можно использовать package management для кубера, чтобы накатывание очередного релиза было транзакционным, да либо нет.
Stanislav
Это есть
Anonymous
видимо, не очень
Stanislav
Именно в этом кейсе новая версия деплоймента падает на роллинг выкатке и ошибки есть только на уровне кубера
Sergey
у вас деплой кто делает, гитлаб?
Stanislav
Ессно, он старую не гасит пока не придет рабочая версия деплоймента
Sergey
он же возвращает что то при неудачном деплое
Sergey
чего не хватает
Stanislav
Но чтобы ямл деплоймента пофиксили, надо выцепить какой-то командой логи по проблемам с запуском деплоймента
Stanislav
и отобразить в CI джобе логи
Stanislav
Пытаюсь найти решение по выгрузке логов о неуспехе создания контейнера
Stanislav
Неужели у всех прогеры лазят руками в кластер?
Stanislav
Просто заставить прогера искать места где могут быть проблемы - это жуткий оверхед по отношению к списку задач на разработку
Anton
helm lint для начала - проверить что все ок.
helm upgrade --install --wait - почти снимает эти вопросы
Stanislav
линт не ловит ошибку в урле до имеджа
Anton
тогда второе
Stanislav
один лишний символ и привет
Sergey
запускаете раннер в гитлабе - раннер выполнился - не выполнился - получили ошибку
второй вариант - ямлик пушнули - разраб идет в дашборду и смотрит создался ли под, там описание успешно - не успешно и почему
Stanislav
В целом за совет с wait от хелма спасибо, покурю, может уговорю на хелм переехать
Sergey
ну или курите prometheus
Stanislav
Anton
прост иначе велосипеды пилить придется. смотреть накатился ли деплой
Stanislav
Да, речь о комплектации велосипеда
Sergey
Stanislav
В морде админ все видит. Вопрос как через cli выгрести по целевому деплойменту лог об ошибке создания контейнера/группы контейнеров
Oleg
Sergey
я думаю это вообще тупо, надо разрабам свое окружение подымать с тестовым кубером, тогда и проблем не будет, а то выглядит так как будто у вас только прода, куда вы разрабов пускать не хотите, зато бегаете с ними как с детьми малыми
либо мониторинг
либо пусть делают свои деплои в песочнице
Stanislav
Sergey
миникуб для этого и придумали
Stanislav
Уже читаю
Stanislav
Stanislav
Экономия времени - повышение качества работы людей
Sergey V
какой ингресс посоветуете на новый кластер кубернетес?
https://github.com/nginxinc/kubernetes-ingress/
https://github.com/kubernetes/ingress-nginx
Lucky SB
помогите с RBAC
Lucky SB
есть сертификат, по которому настроен доступ через kubelet в кластер.
все работает.
добавляю новый namespace,
создаю в новом ns role и rolebinding
и не работает
Error from server (Forbidden): pods is forbidden: User "kube-client-dev" cannot list pods in the namespace "devv"
Sergey
k8s+containerd пинал кто?
Lucky SB
в логах api вот это только:
I0530 14:24:53.231643 1 rbac.go:116] RBAC DENY: user "kube-client-dev" groups ["novices" "system:authenticated"] cannot "list" resource "pods" in namespace "devv"
Lucky SB
Куда еще можно посмотреть
Lucky SB
роль и биндинг диффом сравнивал с рабочим ns - все одинаково
Vitaliy
парни. кто где хранит свои имаджи? selfhosted registry:v2 / harbor / cloud?
Anton
docker hub, aws ecr)
Vitaliy
вот прямо свои private images?
Владимир
а почему нет? в чём вопрос?
Владимир
private registry, конечно
Alexey
ух, какой я молодец.
Или изобретатель велосипеда?
Есть ли готовый сервис, который собирает информацию о процессах в контейнере?
А то пришлось на питоне писать штуку которая подключается к апи-кубера, выполняет exec top ...
потом полученные данные записывает в infuxdb/прометеус, а уже потом графаной вывожу информацию о нужных процессах.
Чувствую, что уже давно кем-то это реализованно и получше моего, но не испытвал такого самодовольства даже с первым кластером кубернетеса)
Oleg
смотря что вам нужно. цпу, память, сеть нормально прометей сам собирает
Alexey
и всё это работает в одном поде, и сбор данных идёт с многих подов одного стейтфулсета, который я указал.
Пора идти в разработчики кубернетеса, жаль что питон они не жалуют(
Alexey
повозиться с rbac правда пришлось, еле нашёл нужное правило
Alexey
нет, нужно было именно отдельных процессов внутри контецйнера
Alexey
ну и не прометей это собирает, он просто хранилище
Alexey
собирает или хипстер или metrics-server
Vyacheslav
Vyacheslav
https://devops.college/prometheus-operator-how-to-monitor-an-external-service-3cb6ac8d5acb
Andor
а я думал контейнеры это идеологически 1 процесс
Lucky SB
у меня в кластере три мастера.
и три etcd
столкнулся с проблемой, что не работают свеже созданные роли.
выяснилось, что если обращаться к master-2 или master-3 - то все работает.
а вот если прописать в конфиге kubctl https://master-1:6443 то не пускает.
вывод API Сервер на master-1 почему-то не видит новых изменений в кластере.
причем если зайти на master-1 И с него локально посмотреть - то все роли видны namespaces
Andor
/report
Andor
Ты в курсе что в контейнере может не быть top?
Vitaliy
WaveScope в помощь... Правда у меня выжирает CPU...
Alexey
правда? не может быть???
ну это для определённых контейнеров одних разработчиков, топ установить было проще, чем поменять их архитектуру 😐