Допустим, у меня две зоны - зона 1 и зона 2, в каждой из которых развернуто по 2 приложения. Допустим, приложение App1 - это клиент, который получает информацию из приложения2, приложение1 подключается к приложению 2 с помощью службы k8s. Теперь, как я могу настроить приложение1 зоны 1 для подключения к приложению 2 зоны 1 (желательно, если приложение 2 зоны 1 загружено или не подключено к приложению 2 зоны 1). зона2).
Хотя это может быть достигнуто с помощью уровня приложения с использованием zuul и ленты с безголовым сервисом, я хочу переместить это на инфра-уровень. Есть ли возможность сделать в K8s.
Я вижу, что IPVS поддерживает алгоритм Locality-Based Least Connection
, но не уверен, что k8s поддерживает этот алгоритм, я вижу, что поддерживаемые алгоритмы - это rr, wrr, lc, sed. но нет документации о поддержке lblc. Если поддерживается lblc, это лучшее решение, чтобы предпочесть тот же узел / модуль в dc / pod в зоне.
ПРИМЕЧАНИЕ. Это решение предназначено исключительно для локального кластера k8s.