A
В /etc/cni/net.d/ есть чо?
Сейчас не посмотреть, а что должно быть и чего быть не должно?
Andrey
Мало кто с версиями парится
ну оке, мож я чето не правильно делаю. Как вы деплоите окружения когда есть описанные мной зависимости?
A
А то это уже монолит
Никита
Сейчас не посмотреть, а что должно быть и чего быть не должно?
Там конфиг сетевого плагина лежит. Тогда потом)
Andrey
Жёстких быть не должно
ну как не должно? Если новая фича внедряется, которой ранее вообще не было.
A
Другие должны адекватно реагировать на из отсутствие
A
Это уже тогда не ммкросервисы иначе
Andrey
Другие должны адекватно реагировать на из отсутствие
Так реагируют то адекватно, вопрос в том как все же задеплоить то что нужно, а не про реакцию на то что задеплоили не то что нужно.
Andrey
в протобафе есть какие-то варианты с версионированием
Это вроде поздно уже. Ну я имею в виду, он работает же уже после деплоя. А у меня именно задача деплоя
Andor
что?
Александр
Называй сервисы с суффиксом версиии
Andrey
что?
ну протобаф это протокол. Причем он тут если я говорю про проблему деплоя. Протобаф все что может это обнаружить что задеплоили чето не то.
Никита
Так реагируют то адекватно, вопрос в том как все же задеплоить то что нужно, а не про реакцию на то что задеплоили не то что нужно.
Роллинг-апдейтимся на новый бакенд с фичей, потом так же - фронтенд, который фичу юзает.
Александр
По идее 2 подряд идущие версии не должны быть обратно несовместимы
Александр
Можно пробы еще настроить, чтобы убедиться, что все необходимое поднялось
Andrey
что значит "не то"?
причем тут протокол если я говорю о деплое?
Александр
Та я ж не про совместимость. Ну камон.
Ну у тебя же проблема только в процессе деплоя?
Andor
при чём тут деплой если ты говоришь о версионировании API между сервисами?
Andor
или ты что-то другое имеешь в виду?
Александр
Так нужно версионирование или деплой нескольких микросервисов?
Andrey
Так нужно версионирование или деплой нескольких микросервисов?
деплой нескольких микросервисов ПОДХОДЯЩИХ версий
Andor
истио
Andrey
приходит разраб/тестировшик, говорит, хочу тестить фичу some_feature сервиса X. А мне нужно задеплоить сервис Х с фичей some_feature + все соседние микросервисы от которых зависит эта фича. Т.е. у микросервиса X должен быть какой то requirement на соседние сервисы.
Andrey
истио
😔 грусть пичаль. А есть чо попроще?)
Andor
а истио - сложно?
Andor
ну возьми линкерды, лол
Andor
linkerd
Andrey
а истио - сложно?
ну я его не юзал еще, так что пока у него статус "сложнанипанятна"
Andrey
linkerd
ща погуглю
Andor
у нас вот попробовали linkerd
Andrey
linkerd
Linkerd is a transparent proxy нафига оно мне?)
Andor
теперь жалеют что не попробовали istio
Andor
Linkerd is a transparent proxy нафига оно мне?)
ну раз ты по одной фразе судишь о проекте, то незачем
Andor
правда?
Andor
ну как скажешь
Andrey
оно наверное трафик мне может зарулить на поды нужной версии, но мне не это надо
Александр
У него есть возможность указать зависимости
Andrey
helm?
ну вот helm пока самое близкое видимо к тому что нужно. Осталось мне с версионированием проблемы порешать 🙂
Andor
а, ты кажется хочешь вообще тестировать эти фичи не в прод кластере?
Andor
я правильно понял?
Andor
то есть это не canary или blue-green, это про создание отдельного окружения для нестабильных версий сервисов?
Andrey
а, ты кажется хочешь вообще тестировать эти фичи не в прод кластере?
да без разницы. Хоть в прод, хоть в тест. Просто в неком пустом в вакууме окружении мне надо задеплоить сервис с определенной фичей и все остальные сервисы версии не ниже чем requirement данной версии сервиса.
Andrey
ну вот как есть у того же maven'a или pip или composer'a(который похапэ). Там пишется версия либы аля libname >=1.0.1
Andor
это либа, а не соседний сервис
Andor
и без этой либы у тебя зафейлится сборка
Andor
Отдельный namespace
отдельный кубер, я бы сказал
Andrey
и без этой либы у тебя зафейлится сборка
у меня и без нужной версии микросервиса можно сказать зафейлится, потому что когда тестировщик идет проверять фичу, его совсем не устроит наблюдать обратную совместимость вместо новой фичи
Vadim
😔 грусть пичаль. А есть чо попроще?)
Мы еще помечаем платиновые треды? Это отличный кандидат
Andrey
ну началось))
Andor
тема конечно интересная
Andor
но нет
Andor
кажется это не очень технический вопрос
Vadim
Всегда можно переквалифицироваться в установщики кубеней, там стотыщ
Vadim
А за три года все уже отлажено
Andrey
ну значит вернёт фичу в разработку
ну, а чтобы не возвращал, хочется уметь деплоить сразу все нужных версий. И вопрос собственно в том чтобы эти версии и связки версий где-то держать и как то разруливать
Andor
а чтобы не возвращал - разработчик должен уметь коммитить сразу в несколько сервисов
Andor
а ещё можно сразу монорепо, тогда зависимости сами собой чинятся
Andor
(ну почти)
Andrey
а ещё можно сразу монорепо, тогда зависимости сами собой чинятся
а можно сразу монолит, окай. Вернемся к микросервисам))
Andor
но к куберу и деплоям это мало отношения имеет, больше к методам разработки
Александр
отдельный кубер, я бы сказал
А в чем проблема с отдельным namespace?
Andrey
окай, давайте по другому. Вот например мы такие со стальными яйцами и держим базы в кубере. И тут мы катим новый функционал в кубер который работает только на новой версии базы (я не о миграциях, а именно о версии базы). Как такие реквайременты прописать?
Sergei
"монорепо" != "монолит"
это сложный концепт
Vadim
Можно придумать какую-то схему с версиями через лейблы и сделать какой-то прокси, управляемый через CRD
Andor
А в чем проблема с отдельным namespace?
сервисы в одном неймспейсе можно задеплоить с использованием любого сикрета этого неймспейса
Rainbow
у монорепа только один минус, нет адекватных тулов, одни велосипеды