Sergey
но опять же - смотря что делаешь... иногда это может быть критично
Dmytro
ну ребята, в теории все это хорошо но на практике ведь как, по этому коннекшену уже летят данные и клиент может быть сторонний в котором логика ретрая кривая и т.д. и т.п.
Etki
чет мне кажется прокся от разрыва в середине сообщения не спасет
Sergey
ну т.е этого никак не избежишь, и это норм, но это не значит, что бэкэнд нужно ронять специально и считать что это норм - клиент словит
Etki
неа
Sergey
покоцанные данные не дойдут а сервер чуть что перепошлет)
Sergey
если прям очень критично
Sergey
ну короч всякого можно придумать
Etki
так один пакет дошел, а конец сообщения во втором
Sergey
так один пакет дошел, а конец сообщения во втором
я не про подтверждение доставки tcp пакетов говорю а подтверждение доставки сообщений между клиентом и сервером
Sergey
если у тебя по какой-то причине это критично - у тебя что-то такое будет)
Sergey
ну а если нет - сам себе злой буратино
Dmytro
думаю что тут как несколько уровней security - лишний не помешает
Sergey
думаю что тут как несколько уровней security - лишний не помешает
риск менеджмент по другому работает, повторюсь)
Dmytro
если можешь воткнуть нжинкс с плагином или спец проксю перед приложухой - почему не воткнуть
Dmytro
ну кому как
Sergey
и тебе надо что бы затраты перекрывались профитом
Sergey
ну короч, это все сводится к "it depends"
Dmytro
я ж и говорю кому как, если бизнесу это критично - есть решения
Sergey
но только с точки зрения рисков это решение не надежно)
Sergey
оно закрывает только одну причину потери сообщений из многих
G72K
я не про подтверждение доставки tcp пакетов говорю а подтверждение доставки сообщений между клиентом и сервером
что то подумалось, если внутри TCP гонять другой TCP не получится ли бесплатное (без необходимости написания кода) подтверждение сообщений уровня приложения? :)
Sergey
потому я и говорю что возможно это лишнее и с точки зрения приоритетов - лучше сделать буфер сообщений с курсором, или подтверждение доставки, но это все уже разработчики запилят
V
ребята а не подскажите как обновить k8s cluster без. даунтайма
Dmytro
обновить версию k8s?
V
обновить версию k8s?
да у меня сейчас версия 1.5.6
Anton
а kops умеет на существующий VPC (в AWS) деплоить?
Ivan
да
Ivan
https://github.com/kubernetes/kops/blob/master/docs/run_in_existing_vpc.md
Anton
спасибо
Dmytro
да у меня сейчас версия 1.5.6
апгрейд минорной версии или мажорной? в случае мажорной не всегда возможно без даунтайма, нужно читать release notes. Если возможно то сначала нужно обновить мастер ноды потом воркеры, потом обновить apiserver и прочие системные поды до версий в этой мажорной версии. На время пока будет все обновляться очень желательно стопнуть все деплойменты и т.п. активности которые могут менять состояние кластера (хотя бы на время апдейта мастер нод). Ну и тут еще куча вариантов, например kube-adm и kops умеют обновлять сами мажорные версии без даунтайма и сами же обновят версии системных подов. А вот например kube-aws обновит версию кубернетеса но в итоге ты получишь два набора системных подов и надо будет вручную почистить старые версии (ну и могут пока 2 версии паралельно бежит какие-то баги вылезти)
V
апгрейд минорной версии или мажорной? в случае мажорной не всегда возможно без даунтайма, нужно читать release notes. Если возможно то сначала нужно обновить мастер ноды потом воркеры, потом обновить apiserver и прочие системные поды до версий в этой мажорной версии. На время пока будет все обновляться очень желательно стопнуть все деплойменты и т.п. активности которые могут менять состояние кластера (хотя бы на время апдейта мастер нод). Ну и тут еще куча вариантов, например kube-adm и kops умеют обновлять сами мажорные версии без даунтайма и сами же обновят версии системных подов. А вот например kube-aws обновит версию кубернетеса но в итоге ты получишь два набора системных подов и надо будет вручную почистить старые версии (ну и могут пока 2 версии паралельно бежит какие-то баги вылезти)
у меня вообще кластер в гугл и он хочет обновиться, но там клиентские сервисы и как удачно обновиться пока не понятно
Andor
а лучше хелма же всё равно ничего нет сейчас?
Andor
и если так, то хелмом жить с несколькими кластерами - норм?
G72K
а лучше хелма же всё равно ничего нет сейчас?
Вы проводили сравнение с другими системами и хелм победил?
Andor
кажется у меня в конце предложения был знак вопроса
Andor
и точно, вот же он
Andor
если б я делал сравнение, то я бы не спрашивал
Vadim
Вы проводили сравнение с другими системами и хелм победил?
в чистом кубернетесе вроде и вариантов других нет
Andor
ну у нас есть наколенная поделка, а хочется чего-нибудь мейнстримного
Anton
читаю kops high availability доку и никак не пойму, что делать с этим противоречием (если я все верно понял): Kops has experimental support for running multiple masters in the same AZ, but it should be used carefully. If we create 2 (or more) masters in the same AZ, then failure of the AZ will likely cause etcd to lose quorum and stop operating (with 3 nodes). Running in the same AZ therefore increases the risk of cluster disruption, though it can be a valid scenario, particularly if combined with federation. и двумя абзацами ниже: Notes (Best Practice) In regions with 2 Availability Zones, deploy the 3 masters in one zone and the nodes can be distributed between the 2 zones. This can be done by specifying the flags: --master-count=3 --master-zones=$MASTER_ZONE --zones=$NODE_ZONES у кого-то был опыт с двумя зонами и копсом, в чем соль?
G72K
в чистом кубернетесе вроде и вариантов других нет
появляются тулзы на jsonnet: kapitan, ksonnet
G72K
Нативно манипулировать json , а не текстом и ожидать валидный yaml это очень здорово и окрыляет
Andor
то есть Json лучше yaml'a?
Andor
вот это новости
G72K
то есть Json лучше yaml'a?
Вы увидели не то, что написано :)
Andor
вероятно я не так понял фразу про "здорово и окрыляет"
G72K
Нет, вы не так поняли "нативно манипулировать json" :)
Vadim
появляются тулзы на jsonnet: kapitan, ksonnet
Хмм, я ожидал что-то вроде "blue-green изкаропки"
G72K
Да пока проблема просто blue описать :)
Sergey
Ну и 3 разных ig для мастеров оно само сделает
Anton
Вопрос не в этом. Для чего нужны 3 мастера тоже понятно. Вопрос в том, что делать, если только 2 az.
Anton
всех мастеров в одну az или 2 мастера в одну az, а 3-го в другую?
Anton
вот это противоречит абзацу Best Practice
Andrey
вот это противоречит абзацу Best Practice
этот абзац про случай с тремя az, это же очевидно
Anton
нет, это неочевидно, мало того, там цифра 2 явно обозначена
Andrey
и эта цифра относится к .. ?
Andrey
количеству AZ?
Anton
In regions with 2 Availability Zones, deploy the 3 masters in one zone and the nodes can be distributed between the 2 zones.
Andrey
а, понял
Andrey
недочитал
Andrey
но это странно. Я бы распределил 2 и 1
someone
Проверь что под может изнутри иметь доступ до этих внутренних днсов
доступ до днс есть. из самого контейнера kube-dns резолвит лююбой домен. из контейнера же вообще никакой не резолвит кроме имен самих подов
Anton
так вот, я это понимаю так: "Если у вас только две зоны, то мастерам в любом случае хана, если одна из зон завалится. Поэтому положите их всех в одну зону, так хотя бы 50% у вас есть."
Andrey
не в любом, только если завалится зона с большинством мастеров. А советуют в одну наверное затем, чтоб network latency меньше был
Anton
а, ну то есть те же 50%, поэтому нет смысла размазывать, ок, понял, спасибо
Igor
Друзья, Мы рады анонсировать очередную нашу встречу 6 марта в 19:00. На этот раз компания "Dino Systems" порадует нас докладами о разработке приложений в Kubernetes. 19:00 - 20:00: Kubernetes - от идеи до продукта. Спикер: Иван Анисимов «Реальный пример развития проекта прошедшего от фазы идеи до крайне успешного продукта менее чем за 2 года. Я покажу, как мы перешли с железных серверов на Mesos, с Mesos на Self-hosted Kubernetes и как в самом конце мы освоили полностью облачный GKE. В ходе доклада я рассмотрю наши успехи и неудачи и то, как росло наше понимание работы с Kubernetes на протяжении этих 2-х лет.» 20:00 - 20:30: Пицца, чай кофе. 20:30 - 21:30: Kubernetes и микросервисы. Спикер: Иван Анисимов «Один из лучших способов развернуть свой продукт на Kubernetes - это использование микросервисов. Этот семинар про то, какими именно должны быть эти микросервисы, как они должны быть настроены и развернуты. Мы обсудим использование gRPC и Protobuf, поговорим о Ingress и балансировке нагрузки и о том, как можно развернуть множество разных типов микросервисов вместе». https://www.meetup.com/Kubernetes-Novosibirsk/events/248011940/
Andrey
начать ходить на митапы чтоли
Etki
но это странно. Я бы распределил 2 и 1
да толку-то, один всё равно работать не будет