Как настроить прокси слой на кафке брокера?

Я пытаюсь настроить прокси-сервер (предпочтительнее в 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 Спасибо

Другие вопросы по тегам