Есть ли способ установить канарское или взвешенное развертывание на уровне обслуживания kubernetes без использования входа / шлюза? - PullRequest
0 голосов
/ 10 октября 2019

Я могу установить вес или фильтр по заголовкам на виртуальном сервисе. Итак, я получаю доступ через вход / шлюз и добиваюсь успеха, используя фильтры веса и заголовка. Но я хотел бы установить эти условия на уровне обслуживания, чтобы получить доступ внутри кластера. Я использую ISTIO.

Кто-нибудь знает что-нибудь об этом?

1 Ответ

0 голосов
/ 11 октября 2019

Нет, нет способа сделать это. Вы можете проверить сервисную документацию kubernetes, чтобы убедиться, что она документация . Таким образом, kubernetes использует таблицы IP для балансировки нагрузки и политики принудительного статистического циклического перебора (проверьте эту ссылку ).

Однако на самом деле это не так сложно решить в kubernetes, используядругие технологии. Использование прокси между взвешенным восходящим потоком решит проблему незамедлительно. Как то так:



upstream dynamic {
    server pod-proxy-1      weight=2;
    server pod-proxy-2      weight=4;
}

server {
    location / {
        proxy_pass http://dynamic;
    }
}

...