Как настроить прокси слой на кафке брокера?
Я пытаюсь настроить прокси-сервер (предпочтительнее в java), который может передавать мой поток соединения брокеру kafka.
Client (Consumer/Producer) <--> [PROXY SERVER] <--> Kafka Broker
Мой вариант использования - использовать данные из kafka, но параметры конфигурации должны быть переданы посреднику kafka.
например bootstrap.servers=xx.xx.xx.xx:9091, topic=<encrypted-topic>
Порт 9091 - это прокси-сервер, на котором я расшифровываю тему в исходной теме и передаю поток соединения в kafka.
Задача прокси-слоя состоит в том, чтобы проверить, присутствует ли зашифрованная тема в карте тем в памяти, и если да, то расшифровать тему и подключиться к брокеру kafka.
1 ответ
Вы можете просто использовать HAproxy в качестве прокси перед кластером kafka.
listen kafka
bind *:8888
mode tcp
balance roundrobin
server kafka1 127.0.0.1:8881 check
server kafka2 127.0.0.1:8883 check
server kafka3 127.0.0.1:8885 check
listen kafka1
bind *:8881
mode tcp
server kafka1 10.10.0.1:45677 check
listen kafka2
bind *:8883
mode tcp
server kafka1 10.10.0.2:45677 check
listen kafka3
bind *:8885
mode tcp
server kafka1 10.10.0.3:45677 check
Выше показан кластер kafka из 3 узлов. Клиенту просто нужно установить IP-адрес LB: 8888 в качестве сервера Boostrap. Затем клиент программно получит метаданные о lb_iP:8881 ,lb_iP:8883,lb_iP:8885 и соответственно создаст соответствующие пути подключения к серверу начальной загрузки.
Благодаря этому мы можем вносить изменения в базовые IP-адреса и порты реальных брокеров без необходимости изменения конфигурации клиентом.
ссылка: руководство по настройке ssl Спасибо