client-go умел к нескольким API server ходить без балансировщика. Цель чтобы kube-proxy и kubectl можно было запускать со списком аписерверов и оно б само пробовало их по очереди. Реализаия очень простая и работает на сетевом уровне.Я раньше для этого локальный nginx держал и сертификаты с 127.0.0.1 выпускал, если примут то не надо будет.
Один влияетльный и уважаемый ревьюер пока поставил -1, т.к. решение не покрывает всех случаев. Классическое "лучшее враг хорошего".
Если кто-то хотел бы видеть client-side HA в client-go , то отпишитесь плиз, чтоб повысить шансы, что приняли. Флант вроде много кластеров держит, им может быть интересно (@kvaps?).
KEP-3037: client-go alternative services: https://github.com/kubernetes/enhancements/pull/3034
я с ним согласен
Ну тогда тоже отпишись, в споре рождается истина :)
Ооо даа, эта история очень давно тянется, юзеры создают фичреквесты, а мейнтейнеры усиленно их закрывают говоря что это не наша зона ответсвенности. Я рад что у кого-то дошли руки написать вменяемый KEP :)
ну вот они теперь пытаются его пристрелить, т.к. недостаточно хорош по их мнению
Включаем флантоэффект :)
Предложенное решение повторяет то что не так давно сделали в PostgreSQL , где libpq может перебирать сервера, пока не найдет рабочий: https://www.postgresql.org/docs/14/libpq-connect.html#LIBPQ-MULTIPLE-HOSTS Это очень практичное решение, которое принесло много пользы в сетапе постгрес кластеров
а сколько оно создаст проблем?
по сравнению с балансерами - ни сколько. Всё то же самое, только балансера нет
Обсуждают сегодня