kafka内外网访问配置方式
kafka
kafka里面两种监听配置
内网监听配置
listeners=PLAINTEXT://192.168.0.213:9092
配置完内网可以正常得去消费或者添加kfka数据
如果配置了 advertised.listeners 就无法正常访问消费
advertised.listeners=PLAINTEXT://101.89.163.1:9092
WARN [Consumer clientId=consumer-console-consumer-94880-1, groupId=console-consumer-94880] Error while fetching metadata with correlation id 2 : {ooxx=LEADER_NOT_AVAILABLE} (org.apache.kafka.clients.NetworkClient)
因为我的外网通讯虽然注册得zookeeper里面了,但是外网网络无法在kafka 集群机器上来回通讯导致问题,所以这个时候需要切换成内外网分流访问
内外网分流
方法1
listener.security.protocol.map=INTERNAL:PLAINTEXT,EXTERNAL:PLAINTEXT listeners=INTERNAL://192.168.0.213:9092,EXTERNAL://192.168.0.213:19092 advertised.listeners=INTERNAL://192.168.0.213:9092,EXTERNAL://101.89.163.9:19092 inter.broker.listener.name=INTERNAL
方法2
listener.security.protocol.map=INTERNAL:PLAINTEXT,EXTERNAL:PLAINTEXT listeners=INTERNAL://192.168.0.213:9092,EXTERNAL://101.89.163.9:19092 advertised.listeners=INTERNAL://192.168.0.213:9092,EXTERNAL://101.89.163.9:19092 inter.broker.listener.name=INTERNAL
注意这两的区别是listeners的EXTERNAL使用的ip不一样,一个使用内网ip,一个使用外网ip。
- 如果你的kafka宿主机有外网网卡,只能用外网ip,若使用配置1,kafka通过listeners监听的两个端口都是内网网卡的数据,无法接收到外网网卡数据;
- 如果你的kafka宿主机外网ip是映射来的,只能使用内网ip,原因也是上面说过的,不存在外网网卡,kafka启动监听就会报错,而使用内网ip有环境配置好的转发,可以接收到外网ip的数据。
在这里配置得 kafka内部访问端口与外部访问端口不能是一致得。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
PowerJob的DatabaseMonitorAspect源码流程
这篇文章主要为大家介绍了PowerJob的DatabaseMonitorAspect源码流程解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2024-01-01
hibernate 中 fetch=FetchType.LAZY 懒加载失败处理方法
这篇文章主要介绍了hibernate 中 fetch=FetchType.LAZY 懒加载失败处理方法,需要的朋友可以参考下2017-09-09


最新评论