gpt4 book ai didi

java - 如何在kafka broker上设置代理层?

转载 作者:行者123 更新时间:2023-12-05 07:23:03 28 4
gpt4 key购买 nike

我正在尝试设置一个可以将我的连接流传递给 kafka 代理的代理服务器(在 java 中首选)。

Client (Consumer/Producer) <--> [PROXY SERVER] <--> Kafka Broker

我的用例是使用来自 kafka 的数据,但配置参数应该代理到 kafka broker。

例如 bootstrap.servers=xx.xx.xx.xx:9091, topic=<encrypted-topic>

端口 9091 是代理服务器,我在这里将主题解密为原始主题并将连接流传递给 kafka。

代理层的工作是检查加密的主题是否存在于主题的内存映射中,如果是,则解密主题并连接到 kafka 代理。

最佳答案

您可以只使用 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

上面是一个3节点的kafka集群。客户端只需将 LBs ip:8888 设置为 boostrap 服务器。然后客户端将以编程方式获取有关 lb_iP:8881 、lb_iP:8883、lb_iP:8885 的元数据,并将相应地创建相应的引导服务器连接路径。
通过这种方式,我们可以对底层真实代理的 ips 和端口进行修改,而无需客户端更改配置。
引用:guide with ssl setup谢谢

关于java - 如何在kafka broker上设置代理层?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56257730/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com