kafka2.4.0(0.10.0 以上)配置多ip监听

前言

与第三方数据同步,约定使用kafka作为接收数据的中间件,但是之前配置有问题,所以导致外网无法向我们集群生产数据(我们的集群有公网网卡,对外暴露了指定的端口),后来查了很多资料才知道,需要做一些配置,下面我将配置要点贴下面。

配置方法

找到kafka的server.properties进行修改!

在这里插入图片描述

listeners=INSIDE://内网ip1:port1,OUTSIDE://内网ip1:port2
advertised.listeners=INSIDE://内网ip1:port1,OUTSIDE://外网ip1:port2
listener.security.protocol.map=INSIDE:PLAINTEXT,OUTSIDE:PLAINTEXT
inter.broker.listener.name=INSIDE

这里注意,配置listeners特别重要,他是作为广播地址注册到zookeeper的,所有访问zookeeper去拿server地址,都是这个配置映射的。这里不管是配置外网,还是内网,都用内网ip!但是端口是不同的!

配置advertised.listeners时一定要注意协议,配置外网ip的时候一定对应好外网ip地址,端口号和绑定listeners中的OUTSIDE端口号对应。
这里使用的是map(listener.security.protocol.map)配置,可以把key看作变量,具体value是协议名称!
#listener.security.protocol.map=PLAINTEXT:PLAINTEXT,SSL:SSL,SASL_PLAINTEXT:SASL_PLAINTEXT,SASL_SSL:SASL_SSL

注意

kafka自0.10.0开始以后的高版本kafka自己维护自己消费的offset,而不通过zookeeper来维护,实现原理是自己创建一个topic来维护leader的offset位置。所以在生产中,需要将这个topic副本调整大于1,如果没有调整,可能会出现一种情况,挂掉的节点刚好有这个topic,但是由于最小副本数是1,就没有可用副本,导致集群不可用。

将这个配置调整,保证集群可用!

offsets.topic.replication.factor=3

未指定 inter.broker.listener.name

在这里插入图片描述
inter.broker.listener.name=INSIDE 这个配置不要遗漏。

总结

只要仔细配置就不会出错!

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值