Lucky SB
в кубовом ингресс нгинкс контроллере раньше релоад был. были проблемы с вебсокетами. щас там луа-скрипт динамически все роутит
Konstantine
И да, нжинксовый нжинкс(который от Нжинкс Инк :-)) абсолютно точно релоадится внутри контроллера. Лично наблюдал.
Lucky SB
а меня цитируете. Это прикол такой?
не. это я к тому, что может быть все что угодно.... утверждение было изначальное про то что стандартный ингресс контроллер рвет трафик
George
стандартный это какой? который от энжинкс инк? или который в кубе типа стандартный?
Lucky SB
что все используют )
George
коллеги из Флант утверждали, что именно ТОТ действительно релоадился постоянно
George
и в связи с этим он якобы мог терять коннекшены, т.к. цпу в полку был
George
при частом изменении конфига сервисов в кубе
Just a baka
при цпу в полку и не такое бывает
Konstantine
Там вроде действительно всё на Луа, но, если верить докам nginx "Don't use Lua".
Konstantine
По крайней мере - в старых доках действительно такое писали :-)
George
в новых тоже не айс. Вывод - ингресс на nginx не торт?
George
а когда ? в мире куба все меняется оч. стремительно
пока они не выкатили свой флантовский ингресс и рекомендуют его
George
и пока nginx не сделали более нормально (с луа)
Lucky SB
ссылкой поделишься?
George
https://habr.com/ru/company/flant/blog/447180/
Lucky SB
пока они не выкатили свой флантовский ингресс и рекомендуют его
и где в этой статье ссылка на флантовский ингресс контроллер ??????????????????????????????
George
https://github.com/flant/ingress-nginx
George
вроде этот
George
но это не точно
Lucky SB
https://github.com/flant/ingress-nginx
иззздиваешсиии ????
George
да
George
всегда мечтал
Lucky SB
фу
Lucky SB
слив защитан
George
ну сам посмотри https://hub.docker.com/r/flant/kubernetes-nginx-ingress-bm-fallback-iptables
George
у них были свои наработки. И более того - они их активно пиарили в какой-то момент
George
но это было давно. И, да, это была неправда ))))
Vadim
успокойтесь уже
Yuri
Штатный nginx на релоаде спокойно обрабатывает запросы пришедшие до релоада, с чего бы куберовской версии рвать коннекты?
если овер жирные конфиги, nginx reload требуется больше времени для перегруки, пока он это делает, принять новые соединения не может
David
Мы релизнем скоро правильный ingress
David
До августа, ориентировочно.
George
🔥
Just a baka
есть ссылка на оф. доку?
конечно, нет, так как в оф доке как раз и написано, как он без отрыва от обслуживания клиентов релоадит конфигурацию или откатывается при ошибке и в доке ингресса написано, что он делает именно релоад и разумеется в коде блджад контроллера тоже написано про релоад))
George
я думаю, что это вопрос формулировок
George
"без отрыва от обслуживания клиентов"
George
СУЩЕСТВУЮЩИХ или НОВЫХ?
George
и еще я в один момент, извините, въебался в reuseport в nginx
George
я этого им до сих пор простить не могу
George
ибо клиенты получали RST
Just a baka
воркеры рестартятся по одному, все тупо как пробка
George
это если их несколько
George
а если он один?
Just a baka
кто в здравом уме будет так делать?
Just a baka
это аутизм, спавнить 1 воркера и думать, что он будет graceful reload уметь
George
была же проблема, что nginx неправильно детектил workers в докере. Следовательно, он это криво делал и в кубе. А, следовательно, количество воркеров очевидно должны были выставить руками
Yuri
есть ссылка на оф. доку?
В офф доках конечно нет, https://kubernetes.github.io/ingress-nginx/how-it-works/#nginx-configuration тут есть список когда nginx перегружает конфиг
Just a baka
http://nginx.org/en/docs/control.html#reconfiguration https://github.com/kubernetes/ingress-nginx/blob/master/docs/how-it-works.md https://github.com/kubernetes/ingress-nginx/blob/master/internal/ingress/controller/nginx.go#L725
George
@danpiel Just a baka открыл ингрес.
George
В явном виде количества воркеров не вижу
George
но!
George
./test/data/config.json: "workerProcesses": 1,
George
я нашел такое прекрасное
Just a baka
> test обожемывсеумрем
Just a baka
Там невесть в каком году зафиксили это дело с cgroups. Надо смотреть в репу nginx, конечно, а не гошечку колупать
George
./Changelog.md:- [X] [#516](https://github.com/kubernetes/ingress/pull/516) Convert WorkerProcesses setting to string to allow the value auto ./internal/ingress/controller/config/config.go: WorkerProcesses string `json:"worker-processes,omitempty"` ./internal/ingress/controller/config/config.go: WorkerProcesses: strconv.Itoa(runtime.NumCPU()), ./internal/ingress/controller/nginx.go: wp, err := strconv.Atoi(cfg.WorkerProcesses) ./rootfs/etc/nginx/template/nginx.tmpl:worker_processes {{ $cfg.WorkerProcesses }};
George
runtime.NumCPU() < ======= вот здесь дефолты
George
смотри темплейты
Grisha
Ребзя, подскажите плиз, у меня по питанию выпала одна нода, поды которые на ней были запущены, находятся в состоянии Terminating и так висят уже много часов, это норм или как-то лечится?
Grisha
если под пытаться удалить через delete pod, то будет сидеть очень долго и не удалит
Just a baka
на самом деле ты не прав, т.к. там запросто не auto стоит
Спор ни о чем, была бага с cgroups и голым nginx - пофиксили. Кто не чекает свои настройки, кластера итд - ССЗБ. Каким боком тут стоит контроллер? Ну кормит он nginx по дефолту количеством ядер, но умеет и auto отдавать.
Petr
Всем привет Может кто нибудь сталкивался с такой штукой как синхронизация какого либо pv? Есть несколько нод и нужна синхронизация всего, что там есть внутри Сейчас работают 3 ноды и если с одного деплоймента создаешь что-либо, то в другом примаунченом поде этого файла не появляется (есессно маунты прописаны)
Petr
А если делаешь делет пода старого, то новый уже создается с этим файлом
Семён
от ceph (сложно, надёжно, rdb низя примонтировать на много нод) до NFS - где очень просто но может навернуться
Petr
Надежность пока вообще не интересует, пока все в деве, надо хотя бы понять как все это работать может
Семён
тогда прикручивай либо внешний NFS
Семён
либо GlusterFS
George
либо GlusterFS
Из ceph vs gluster, я выберу цеф
Семён
Petr
Спасибо вам добрые люди, в какую сторону сейчас смотреть уже понятно
Семён