Etki
а что не так с websockets ? https://kubernetes.github.io/ingress-nginx/user-guide/miscellaneous/#websockets
возможность забыть про долгоиграющие коннекты, из-за которых обновления ингресса будут оставлять висящие процессы
Nikolai
The NGINX ingress controller does not use Services to route traffic to the pods. Instead it uses the Endpoints API вот это смущает
Etki
говорят пофиксили https://github.com/kubernetes/ingress-nginx/issues/2461
Не-не, проблема как раз в том, что если у тебя висит коннект, старый процесс не убьется, пока он не отвалится. И если есть хотя бы один клиент, который годами не выключает браузер, то это попадалово
Igor
предлагают два ingress использовать, второй для long-running connections
アリテミ
アリテミ
предлагают два ingress использовать, второй для long-running connections
и вот так собственно и решил эту проблему (:
Etki
предлагают два ingress использовать, второй для long-running connections
да просто приложуха должна раз в час посылать запрос на переподключение, а клиент - уметь обрабатывать его
アリテミ
В принципе да, было бы неплохо, чтобы сервис умел восстанавливать сессию
Nikolai
а может кто объяснить в чем разница между daemonset и loadbalancer
Igor
а может кто объяснить в чем разница между daemonset и loadbalancer
daemonset это под который запускается на каждой рабочей ноде
Maksim
daemonset это под который запускается на каждой рабочей ноде
Ну не на каждой. Селекторы и противности не отменяються)
Igor
Ну не на каждой. Селекторы и противности не отменяються)
in a simple case, one DaemonSet, covering all nodes, would be used for each type of daemon.
Maksim
In a simple......
Maksim
Как я уже сказал nodeSelectors и taints работают при шедуленге подов чюпосредством ds контроллера
Igor
а может кто объяснить в чем разница между daemonset и loadbalancer
а loadbalancer это https://cloud.google.com/load-balancing/docs/https/
Igor
Как я уже сказал nodeSelectors и taints работают при шедуленге подов чюпосредством ds контроллера
это более экзотиский способ использования ds, они в доке пишут "on every node" про способы применения
Maksim
Я так одно время держал ингресс контролеры на входных узлах. Через ds и селекторы.
Maksim
В том что деплой сдеоает столько подов сколько у казано в реплик е, а ds на всех удовлитворяющих выборке
Igor
входные узлы динамически поднимаются/опускаются?
Maksim
Ну и раньше не было автоматического ролингапдейьа подов. В 1.11 хз
Maksim
Есть вариант с деплоем. Писать anti affinity и число реплик равное числе целевых нод, но через ds чуточку проще
Maksim
У тебя кластер из 50 нод. Тебе нужно гарантированнотзапустить под на 12 из 50.
Maksim
У тебч два решения ds + nodeSelector или nodeSelector+deploy+anti-affinity.
Igor
с 1.6 оказывается в ds появился RollingUpdate
Maksim
точно не было этого в 1ю6 и в 1/9 -)
Igor
точно не было этого в 1ю6 и в 1/9 -)
https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/
Igor
G72K
Ну, теперь можно и в сислог слать и в kubectl logs видеть
G72K
https://github.com/moby/moby/issues/33475
G72K
Ну когда завезут в куб, а то он кажется файлы напрямую читает
Alexander
еще бы дали возможность крутить размер буфера под log line, было бы вообще отлично.
Vadim
>Some problems here may be with users who are directly accessing container log files, expecting a particular format, place on disk, etc... this sucks... but ultimately on-disk state is not part of our API and people should not be messing around in there аахахахахха
Vadim
"some problems", да
Andor
писать логи локально в протобаф это прям космос идея
Alexander
Ну когда завезут в куб, а то он кажется файлы напрямую читает
куб забирает через dockershim путь до лог-файлов у докера. потому фича все еще полезна, если надо писать логи удаленно.
Alexander
т.к. теперь не надо выбирать
Andor
кстати а кто-нибудь юзает убунтовский docker.io с --log-driver=journald?
Andor
чтение из журнала не работает
Andor
и соответственно ломается kubectl logs
Alexander
а какая убунта?
G72K
куб забирает через dockershim путь до лог-файлов у докера. потому фича все еще полезна, если надо писать логи удаленно.
Ну там приписочка, что формат на диске поменялся, а значит kubelet офигеет пока что
Andor
18.04
Etki
Что такое докершим? Я немного отстал от веяний
Alexander
Что такое докершим? Я немного отстал от веяний
часть докера, реализующая CRI. По ссылке есть диаграмка https://katacontainers.io/posts/why-kata-containers-doesnt-replace-kubernetes/
Ivan
Кто нибудь решал задачу с публикацией UDP сервисов наружу. Как это сделать правильно в кубе?
Andor
возможно тебе поможет ингресс нжинкс
Ivan
Возможно нет :)
Ivan
Там либо прокси пилить либо прям сервис жопой вытаскивать, но есть проблемы с маппингом портов
Ivan
Ну, не проблемы а неудобства
Andor
нжинкс же вроде умеет быть udp прокси
Й
Умеет
bebebe
коллеги, а кто-нибудь ловил на 1.7.1 при большой нагрузке на сервис, connection reset by peer? если спрашивать не через сервис, ошибок нет kube-proxy запущена с --proxymode=iptables
Andor
правда на 1.9 и на 1.10 ловили
Andor
но суть та же
bebebe
да, только 1.7.x не умеет в ipvs
Andor
это же фича кубе-прокси
Andor
нельзя только его подобновить?
bebebe
сложновато
Andor
штопаделать
Andor
если у тебя получится побороть без ipvs - сообщи пожалуйста
bebebe
ок
bebebe
перешел на 1.10.1 и врубил ipvs - не помогло. дело происходит на ажуре (но не AKS)
Andor
коннтрек для ipvs включил?
Andor
точнее, значения задрать надо
bebebe
оно дефолтное 131072
Andor
подробнее можно у @rgersh узнать, если он не спит
bebebe
я вот думаю, svc нужно пересоздавать после этих телодвижений?
Andor
ну ты проверь остались ли iptables nat правила