Andrey
типа такой https://habr.com/post/258443/
Andrey
сложная часть - это сеть, по крайней мере для меня
Й
Эх, пропадет же человек...
Andor
чот короче подумал я подумал и не понял почему я сразу не на ksonnet сделал
Andor
а на голом jsonnet
Андрей Федюнин
народ, кто пробовал перенаправлять все запросы к api через nginx, как это сделано у kubespray, но не только с worker'ов, но и с master нод (kube-controller, kube-scheduler). В теории должно работать, может есть подводные камни?
Й
Андрей Федюнин
на мастере будут тоже размещаться поды, думал сделать так же только kubelet, kube-proxy, а потом подумал, чего мелочиться
Andor
зачем на мастере размещать поды?
Й
Андрей Федюнин
да, т.к. сервера будут железные
𝚔𝚟𝚊𝚙𝚜
Andor
@kvaps а ты в каждом app.yaml все кластера вписываешь?
Andor
или можно упростить как-то
Andor
ну вот например у меня копс, я хочу чтобы переключением контекстов занимался он
Andor
а ксоннет только генерил для указанных контекстов ямл-файлы
𝚔𝚟𝚊𝚙𝚜
Andor
мне не сложно даже их применять через kubectl apply -f и хранить в моём гите
Andor
чтобы генерить
Andor
у меня между кластерами конфиги разные например
𝚔𝚟𝚊𝚙𝚜
ks apply <env> и никакой контекст переключать не надо перед этим, он сам задеплоит в нужный кластер
Andor
а откуда он возьмёт в какой мастер мне деплоить надо, а в какой - не надо?
Andor
вот я щас оператора запустил только в одном кластере
𝚔𝚟𝚊𝚙𝚜
Ну ты же указываешь server url в app.yaml, он посмотрит на него, затем найдет в твоём кубе-конфиге подходящий костер и задеплоит в него
Andor
Й
Andor
ну у меня прост кластера запущены копсом и это я менять точно не буду
Andor
он может вписать контексты в конфиг куба
Andor
дублировать это в app.yaml как-то тупо :|
𝚔𝚟𝚊𝚙𝚜
Ну если хочешь самостоятельно применять, то можно просто:
ks show <env> | kubectl apply -f -
Ну а так Ksonnet - это deployment-manager же тоже, он даже какое-то состояние в аннотациях хранит
Andor
и ещё я не понял как мне заимпортить ксоннетом либу
Andor
могу это сделать через jb конечно
Andor
𝚔𝚟𝚊𝚙𝚜
Andor
то есть нельзя сказать, что prod это вот эти вот три кластера указанные в трёх контекстах в ~/.kube/config
𝚔𝚟𝚊𝚙𝚜
Ты ведь ksonnet-lib хочешь?
Andor
нет
Andor
я хочу kube-prometheus
𝚔𝚟𝚊𝚙𝚜
ну вот <env> это же только для одного кластера, получается?
Ну у меня так:
Если приложение одно на кластер, то указывается имя кластера:
prod
devel
stage
Если инстансов несколько на кластер, то указываю через /:
prod/app1
prod/app2
prod/app3
Это удобно потому что для каждого приложения можно инклюдить общие параметры из prod
Andor
ну блин у меня prod - не имя кластер
Andor
прод у меня в двух кластерах
Andor
в разных
Andor
они запущены копсом
George
George
а то я тебе ща опеншит начну продавать
George
или rke
Andor
нет смысла, я через неделю увольняюсь
George
ааа
Andor
копс на что-то левое менять я не собираюсь
George
тогда желаю успехов )
Andor
копс меня сейчас устраивает
𝚔𝚟𝚊𝚙𝚜
Ну разделяй их через / значит:
prod/ru
prod/us
Здесь как твоя фантазия тебе подскажет
George
Andor
George
эх. жаль.
𝚔𝚟𝚊𝚙𝚜
Andor
особенно учитывая что первый генерится
Andor
и вообще дофига чего нет
G72K
𝚔𝚟𝚊𝚙𝚜
Потому что ты можешь дать этот апп кому-то другому, и он у него будет работать точно также. То есть у тебя описано готовое финальное состояние:
Это такой-то апп для деплоя в таком то кластере
Andor
и заметную часть моих наколенных поделок можно дропнуть
Sergey
Коллеги, добрый день! Подскажите пожалуйста, кто какие инструменты деплоя в k8s использует у себя на CI\CD конвейере
Sergey
helm ?
Andor
George
Но я хочу единый и надёжный способ развертывания и, главное, поддержки класьера
𝚔𝚟𝚊𝚙𝚜
G72K
helm ?
ksonnet/jsonnet , ещё kaptain достойный