Andor
Сколько хендшейков в секунду?
Alex
50 к в сек
kredeal
?
Alex
запросов
Andor
Хендшейков или запросов в секунду?
Alex
хендшейков примерно столько же должно быть
Andor
Я когда-то тестировал на коленке - выходило примерно 1000 хендшейков в секунду на ядро
Alex
у меня вышло только 500 на ядро
Alex
это демо страница нгинкса
Alex
по хттпс
Andor
Потюнь
Alex
нгинкс сам?
Andor
Ага
Alex
тестил через яндекс танк и аб про keepalived и так и так пробовал ну тут не слишком важно 50 или 100 ядер все равно на один комп не поставишь
Andor
Это именно хендшейков, запросов на одно ядро у меня было в районе 10к в секунду
Andor
То есть если заведомо отключить http keepalive
Alex
а чем тестил?
Alex
как считал хендшейки?
Andor
В гитлабе поищи юзера Andorka, там открытый проект
Andor
Ща сам поищу
Andor
https://gitlab.com/Andorka/nginx-ssl-perf-test
Alex
спасибо гляну
Alex
ну т е в худшем случае все ранво при разынх клиентах будет 500 -1000 запросов
Andor
ну т е в худшем случае все ранво при разынх клиентах будет 500 -1000 запросов
В вырожденном сферическом случае - да, в районе тыщи хендшейков в секунду на ядро Очень сомневаюсь что у тебя нет кипэлайва
Alex
а есть наработки как тюнил нгинкс сам?
Andor
Там же конфиг лежит
Andor
Там не очень много
Sergey
нгинкс
Alex
понял хорошо
Andor
Наверняка можно ещё потюнить, я этим только полвечера занимался
Andor
нгинкс
Ынжынгц
Anton
Всем ку, кто перелез на 1.13 ?
Max
я жду пока gke хотя бы до 1.12 обновится)
Anton
https://www.projectcalico.org/whats-new-in-calico-v3-4/ >With Calico v3.4, you can now advertise Kubernetes service cluster IPs over BGP.
я не совсем догоняю, как это поможет обойтись без LB. Вот у меня приватная сеть ipv4 адресов для сервисов, калико может часть из них адвертайзить, и что? Как снаружи то заходить. Все равно ставить еще один LB, который роутит уже на внутренние адреса.
Dmitrii
https://www.projectcalico.org/whats-new-in-calico-v3-4/ >With Calico v3.4, you can now advertise Kubernetes service cluster IPs over BGP.
А ограничения как у MetalLB для BGP сохраняются же? Что при изменении эндпоинтов все соединения дропаются.
yolkov
я то откуда знаю, только заанонсили)
Alex
кто какую версию metallb юзал?
Dmitrii
Ты уверен, что это металлб должен обрабатывать?
Я его не щупал, просто у него в доках про это есть упоминание, правда ошибся, там про ноды. The biggest is that BGP-based load balancing does not react gracefully to changes in the backend set for an address. What this means is that when a cluster node goes down, you should expect all active connections to your service to be broken (users will see “Connection reset by peer”).
Андрей
:) чем же?
Рассмотрим простой пример. Одну из нод ты выделяешь по под с ingress контроллером, мапишь его на 80 и 443 порты. Далее для сервиса определяешь ingress на то доменное имя, по которому будет доступно твоё приложение. Доменное имя должно ссылаться на ту ноду с подом ingress контроллера.
Андрей
Для отказоустойчивости, тебе понадобится как минимум три ноды под под с ingress контроллером
Alex
как разгрузить ингресс контроллер основной вопрос
Anton
а сам ingress controller типа nodePort?
Alex
чтобы он работал в режиме reverse proxy
Anton
или кто там, externalIP?
Anton
и потом если у меня нода отъехала, то нужно идти править днс?
Андрей
Нет
Alex
если смотреть по нагрузке где рабочие поды нгинксы и перед ними ингресс контроллер то они там вообще не работают
Alex
работает только нода отдлеьаня с демоном ингресс контроллера ну точнее загружена
Андрей
и потом если у меня нода отъехала, то нужно идти править днс?
Для этого у тебя будет три ноды с виртуальными ip которые будут переезжать на живую ноду с Ingress контроллером
Андрей
А в днс прописываешь round robin alias
Андрей
и кто это делает? keepalived?
На твой вкус. Я выбрал Pacemaker
Anton
а зачем такая сложная схема? в смысле почему бы просто LB не поставить
Alex
а два keepalived могут быть в кластере? один для мастер нод а другой для рабочих?
Anton
я вот не в облаках, у меня LB эту работу делает
Dev
народ, сориетнитуйте плз по метрике прометеуса на летенси по сетке (calico) внусти кластера роюсь - не могу найти думал нарою что-то по node exporter - хрен там, либо плохо искал
Андрей
я вот не в облаках, у меня LB эту работу делает
А как ты порты ловишь подов и хосты на которых они находятся?
Anton
я не совсем понимаю вопрос. Я поставил MetalLB, а дальше — magic.
Anton
да, в смысле их ловлю не я, а MetalLB
Андрей
Anton
порт указывается при создании сервиса, также как в облаке, когда делаешь type=LoadBalancer
Anton
переезд пода контроллер отслеживает самостоятельно, потому что — да, он запущен в кластере тоже как под
Anton
так или иначе, ни это решение, ни схема с HA ingress controller не избавляет от LB/VRRP. Это я к моему изначальному вопросу про новую фичу калико.
Никита
А ограничения как у MetalLB для BGP сохраняются же? Что при изменении эндпоинтов все соединения дропаются.
Это проблема сетевого железа, какие-то умеют консистентное хеширование, какие-то -- нет. Эту проблему можно решить, используя ipvs с маглев-хэшингом, в 4.18 впилили.
Андрей
Значит это балансировщик внутри кластера. Так как по умолчанию маршрутизацией занимается iptables по умолчанию, но можно сконфигурировать кластер на использование ipvs. Тогда сторонние балансировщики внутри кластера будут не нужны. А для того чтобы выкинуть сервис наружу, тебе нужен Ingress, а для него Ingress контроллер
Andor
Или калико не умеет в ecmp?
Никита
Или калико не умеет в ecmp?
Это не калико должно уметь, а сетевая железка, с которой калико пирится.
Andor
Не совсем
Никита
Даже не просто уметь, а консистентно уметь.