Rainbow
тебе из k8s ивенты только сгрузить обратно себе. И при правке в UI менять cronjob. Зачем костылить kubectl run?
Andrey
тебе из k8s ивенты только сгрузить обратно себе. И при правке в UI менять cronjob. Зачем костылить kubectl run?
Ну вот как раз при правке в UI мне в случае kind job/cronJob много всего менять. Плюс, если я правильно понимаю то я потеряю помимо логов еще и коды завершения.
Andor
Andrey
kubectl delete cronjob kubectl apply -f newcronjob.yaml что менять то? оно само меняется
не, я имею в виду что сейчас Rundeck просто заходит на ноду, и запускает команду собирая весь аутпут и резалткоды. Если же я перехожу на job/cronJob то этого всего не будет. По сути будет просто факт того что что-то улетело в k8s. А че там с ним случилось нужно будет разбираться в другой системе.
Andor
кронджобы в кубе это вообще ниочинь имхо
Andor
> Если же я перехожу на job/cronJob то этого всего не будет. почему?
Andrey
> Если же я перехожу на job/cronJob то этого всего не будет. почему?
ну потому что запуская команду kubectl apply -f job.yaml я не получу в аутпут ее логи и резалткод. Не смогу контроллировать таймауты и ретраи в этой же системе.
Andor
случайно написал в другой чят: тебе никто не мешает сделать kubectl apply на манифест джобы и словить stdout этой джобы после визуально у тебя будет то же что и с твоим рандеком в чём вообще фишка рандека по сравнению с тем же дженкинсом/гитлаб-ци/етц
Andor
если надо
Andor
откуда такая уверенность, что не получишь-то?
Andor
а что в дженкинсе топорного?
Rainbow
https://github.com/benas/gossed
Andor
оффтоп конечно
Andrey
а что в дженкинсе топорного?
Давай не пойдем в холивары. Можем остановиться на том что просто не нравится)
Andor
https://github.com/benas/gossed
да ему просто логи джобы надо получить после запуска, а не вот это всё
Rainbow
Ну эт херня отправит логи
Andrey
откуда такая уверенность, что не получишь-то?
уверенности нет. Просто когда я делаю kubectl apply -f job.yaml, мне возвращается код 0 и логи не возвращаются.))
Vadim
ну потому что запуская команду kubectl apply -f job.yaml я не получу в аутпут ее логи и резалткод. Не смогу контроллировать таймауты и ретраи в этой же системе.
в идеале логи и exit code вообще тебя волновать не должны - тебе должен придти алерт о том что у тебя под крашлупиться \ джоб не может найти ноду для запуска
Vadim
после чего лезешь в логи, чинишь и продолжаешь пить чай с плюшками
Artem
Добрый! Есть обычный пользователь на хостах с мастерами, как для него сделать юзера в кубере, чтобы он через kubectl мог смотреть в кластер?
Artem
я понимаю это, но не понимаю, как дать доступ до кубектл
Vadim
https://cloud.google.com/blog/products/containers-kubernetes/accelerate-your-app-delivery-with-kubernetes-and-istio-on-gke и кроме того https://cloud.google.com/blog/products/containers-kubernetes/knative-bringing-serverless-to-kubernetes-everywhere
Andor
канеш
из релевантного гуглится только это https://wiki.jenkins.io/display/JENKINS/RunDeck+Plugin
Andrey
из релевантного гуглится только это https://wiki.jenkins.io/display/JENKINS/RunDeck+Plugin
Это какой-то запуск рандека из jenkins. Смысл примерно такой же как chief из ansible запускать.) Rundeck продукт самостоятельный
Andor
то есть в рандеке нет пайплайнов
Andrey
Смотрите, вот так это примерно выглядит в рандеке. Т.е. вся история с резалткодами и логами есть. Разбивка по юзеру итп. Клацнув на номер запуска мы попадем в stdout логи которые насрала джоба. И менять это все на алерт о падении, поход в ластик и поиски логов не хочется
Andrey
то есть в рандеке нет пайплайнов
Ну как нет если есть. Так же как и в дженкинсе, суешь джобы в джобу, вешаешь условия запуска и все.
Andrey
так ты туда каждые n минут сам смотришь?
нет, оттуда летят алерты в slack если чето упало
Vadim
нет, оттуда летят алерты в slack если чето упало
тогда настрой кибану чтобы она сама логи выдергивала по упавшему контейнеру?
Rainbow
тогда настрой кибану чтобы она сама логи выдергивала по упавшему контейнеру?
рандек придётся выкинуть, так нельзя же 😱 лишние зависимости эт правильно
Vadim
рандек придётся выкинуть, так нельзя же 😱 лишние зависимости эт правильно
это бонус - мониторинг кластера и приложения унифицирован, можно даже в один прометей складывать
Andrey
Бля ребят, я прям даже не знаю)))
Andor
хочешь чтобы визуально ничего не поменялось - значит тебе надо получать логи и экзиткоды из кубе-джобов
Andor
но ты говоришь что это не то что тебе надо
Andor
значит ты сам знаешь что тебе надо
Andor
нахер тогда спрашивать вообще?
Andor
я кстати правильно понимаю, что для других подов, запускаемых в твоём кубере, у тебя есть алерты и логи в каком-нибудь эластике?
A
Сейчас заместил что в логах на EFK нет договора от части подов, например, шедулер контроллер, core-dns, прокси... С чем это может быть связано?
Andrey
нахер тогда спрашивать вообще?
так я пришел не с вопросом как мне все поменять. Я не знаю зачем мне опять начали толкать вообще альтернативный пусть и переделку процесса. Я пришел с вопросом, какие сайд эффекты меня ждут в случае использования kubectl run
Andrey
я кстати правильно понимаю, что для других подов, запускаемых в твоём кубере, у тебя есть алерты и логи в каком-нибудь эластике?
Сейчас в кубере логи приложений собираются в ластик, верно. Но там ТОЛЬКО приложения. Джобы пока работают не в кубере. Джобы и приложения у нас по сути не связаны. Т.е. приложения это одна команда разрабов, а джобы это в основном датасатанисты. Т.е. связи между ними только если база, которая не в кубере)
Andor
а джобы суть не приложения?
Andor
можно пример такой джобы?
Andor
мне и правда не очень понятно почему ты не хочешь складывать логи в одном месте, а в том же рандеке их просто выгребать из этого места, чтобы визуально ничего не поменялось
Vadim
а джобы суть не приложения?
Гудит, как улей, родной завод, А нам-то хули, тут одна команда разрабов, а тут датасаентисты
Andor
забыл как в оригинале было
Andrey
можно пример такой джобы?
Ну вот смотри. Есть вебморда, есть бекенд. И есть джобы аналитические. Пишут это 3 разные команды. Фронт, бек и датасатанисты. Это физически разные репозитории, разные языки, все разное. Если с беком и фронтом все понятно, они работают как "демоны", всегда висят и с ними все понятно. С джобами история другая. Их пишут ДС, они НИКАК не связаны с фронтом и бекендом. Они просто лопатят тучу данных и дают какой-то выхлоп в базу. Вот как бы и пример.
Andor
а, эти "джобы" никак не связаны ни с фронтом ни с бекендом, просто запускаются в том же кубере
Andor
ну ок
Andor
что?
Andrey
ммм, а вот тут у нас кластер для фронтенда, вот тут вот рядышком кластер для бекенда, а вот тут мы джобы запускаем......
Andor
что за херню ты щас несёшь?
Andrey
Что плохого в том чтобы запускать ДС джобы в том же кластере?
Andor
кто сказал что это плохо?
Andrey
вот тут ты про что писал?
Andrey
а, эти "джобы" никак не связаны ни с фронтом ни с бекендом, просто запускаются в том же кубере
Andor
где тут хоть намёк на то что это плохо?
Andrey
а что ты хотел сказать этим ?
Andor
уточнил задачу
Rainbow
Andrey
Да не суть в одном кластере они запускаются или в разных. Это вообще вроде как к делу не относится. На то оно там все и в докере
Andrey
когда инфра не строится вокруг кубера, да)
Rainbow
когда инфра не строится вокруг кубера, да)
выкинь кубер, че он мешается то
Andor
я к тому что кубер в данном случае - лишь место где запустить докер-контейнер, фичи кубера не используются
Andrey
выкинь кубер, че он мешается то
он не мешается, наоборот помогает!