作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试设置一个可以将我的连接流传递给 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/
我是一名优秀的程序员,十分优秀!