Дмитрий Харитонов
как в мане написано
kubectl set env RESOURCE/NAME KEY_1=VAL_1
Дмитрий Харитонов
Дмитрий Харитонов
В противном случае просто запустится с тем что уже есть
Dmitrii
Дмитрий Харитонов
Да, но когда?
при запуске деплоймента или изменении в нём
Dmitrii
Хм. Я запускал до сих пор деплоймент посредством kubectl image set...
Dmitrii
Ок, пойду читать доки, как правильно. Спасибо всем большое.
Дмитрий Харитонов
Хм. Я запускал до сих пор деплоймент посредством kubectl image set...
да, kubectl set image менят поле image в деплойменте, по этому он и перезапускается. Точно так же его можно менять через kubectl edit интерактивно, через kubectl patch ... через kubectl apply -f ... и ещё не знаю сколько способов, но суть у них одна, внесение изменений в дейплоймент.
Dmitrii
Дмитрий Харитонов
да
Dmitrii
И это запустит деплоймент, даже если в файле нет изменений, но при этом будет проверено, нету ли свежего :latest-образа?
Дмитрий Харитонов
нет, если изменений небыло то не запустит
Dmitrii
Ясно, спасибо.
Dmitrii
Короче, yaml деплоймента надо генерировать.
Mikhail
Dmitrii
Dmitrii
Эгегей, работает! :)
$ kubectl set env deployments/document-parser-deployment DATE=$(date +%F-%T)
deployment.apps "document-parser-deployment" env updated
Andor
Перестаньте использовать latest и всё будет ок
Vladimir
Дмитрий Харитонов
как ещё использовать bleeding-edge релизы?)
Andor
Стреляя себе в ногу или без?
Andor
Если второе, то через CD
Дмитрий Харитонов
У меня, например, для ветки stage используется такой способ для выкатки на тестирование автоматически. только там не :latest, а :stage, но суть та же.
Andor
Дмитрий Харитонов
ага
Andor
Ну в смысле вешай там теги и катай на стейжинг автомагически
Дмитрий Харитонов
Ну в смысле вешай там теги и катай на стейжинг автомагически
ну а какие там теги вешать? по пушу с тегом в гит собирается и выкатывается в прод. Вешать для стэйджа что-то из тегов пайплайна какой смысл? всё равно не возникнет задачи откатить стеджинг на какую-то другую версию.
Там типа выкатили в стейджинг, протестили, если норм, запушили с тего и прод. В проде уже контейнеры с нормальными тегами.
При этом в CI удобно использовать одну переменную $CI_COMMIT_REF_NAME которая гитовый тэг или имя ветки.
Ivan
всегда можно использовать sha коммита
Дмитрий Харитонов
Можно хоть n+1, я же говорю, нету смысла.
Dmytro
смысл самый прямой - единообразно деплоится и прод и другие энвы
Dmytro
и понятно что же задеплоено сейчас в данный момент, потому что ну вижу я в описании пода :latest тег и что?
Dmytro
никакой возможности понять что же в данный момент внутри контейнера нет
Dmytro
короче latest для контейнеров с приложениями это бред
Dmytro
(ну и все аналоги :stable, :edge :staging и прочее)
Andor
технически версию можно в аннотации сунуть
Andor
но проще лейблом имжа
Dmytro
Dmytro
или в аннотациях чего?
Denis
Мужики, подскажите а с Calico в statefullSet поды могут видеть друг друга по имени сервиса ?
Ilya
админы, шо за?
Dmytro
если я правильно понял вопрос - с любой сетью должны видеть по FQDN пода (в которой есть имя headless сервиса)
Denis
Mikhail
Dmytro
https://kubernetes.io/blog/2018/05/24/kubernetes-containerd-integration-goes-ga/ вроде не кидал еще никто
Dmytro
так что уже и докер на нодах не нужен
Andor
/report
Andor
Конечно
Andor
Про containerd интересно
Andor
А чо тогда с cri-o будет
Andor
А, кажется это оно и есть по сути
Dmytro
я так понял что CRI это интерфейс/стандарт а containerd - одна из реализаций (наверное пока других и нет)
Dmytro
по сути как они сделали сначала с нетворк а потом с девайс плагинами
Andor
Ага, похоже на то
Andor
А крио был типа пруф оф концепт
Lex
cri-o емнип независимый проект
Lex
Denis
Lex
Lex
cri это интерфейс, протокол
Lex
cri-o имплементация
Lex
Но Я могу ошибаться
Andor
всё так
Dmytro
Dmytro
## and pod dns names will be:
## $(statefulset name)-0.$(service name).$(namespace name).svc.cluster.local
## $(statefulset name)-1.$(service name).$(namespace name).svc.cluster.local
## $(statefulset name)-2.$(service name).$(namespace name).svc.cluster.local
Dmytro
у меня тоже калико сеть - работает
Dmytro
а что видно в endopints у этого headless service если сделать describe?
Dmytro
кстати, а это https://mcs.mail.ru/containers было или нет?
Dmytro
> Надежные кластеры Kubernetes в облаке от Mail.Ru Cloud Solutions для высоконагруженных сайтов и приложений
Mikhail
Было дело. Если есть желание почитать про то, как его полили говном, можно проскролить чуть выше
Dmytro
ясно, я глянул калькулятор - как-то дорого выходит
Sergey
Dmytro
в vscale сильно дешевле будет, понятно что селфхостед