Обратный прокси-сервер для экономичных серверов-ульев, работающих в кластере Kubernetes
У меня есть требование запускать несколько hiveserver'ов как pod'ов в кластере kubernetes, каждый из которых обслуживает пользователей, принадлежащих к разным группам AD. Эти hiveservers должны быть доступны за пределами кластера kubernetes, но каждый hiveserver не может быть представлен как отдельная служба. В идеале я хотел бы реализовать обратный прокси-сервер с использованием контроллера входа с определением входа для каждого сервера-улья, поскольку серверы могут быть динамически созданы и уничтожены.
Я вижу, что контроллер входящего трафика nginx можно использовать для http, я не вижу способа заставить его работать в качестве обратного прокси для бережливых hiveservers. Я также посмотрел на knox, но, похоже, он поддерживает только транспорт http.
Есть ли известный способ настроить входной контроллер в качестве обратного прокси-сервера для внешних конечных точек, отличных от HTTP, таких как бережливые hiveservers?
1 ответ
Вы можете попробовать использовать сервисную сетку, если вам это подходит.
В Istio такой вариант использования (управление TCP-трафиком) может быть реализован с помощью входного шлюза Istio, который будет действовать как точка входа для группы сервисов внутри вашего кластера (аналогично входящему трафику K8S, но не ограничивается трафиком HTTP). Существует даже встроенная поддержка пользовательских протоколов, таких как протокол Apache Thrift, что позволяет использовать такие функции, как ограничение скорости.