问题:
kafka 需要内外网访问分流,这里举例单机版,集群自行照例子配置
网上有很多方案但是ip地址的说明大多有问题,配置后无法使用
方案1.部署服务器没有外网网卡,只能将ip和端口映射到外网 且映射的端口不一定是9092
方案2.部署服务器有外网网卡
kafka配置
inter.broker.listener.name=INTERNAL
listeners=INTERNAL://内网:端口1,EXTERNAL://内网:端口2
advertised.listeners=INTERNAL://内网:端口1,EXTERNAL://外网地址:映射任意端口
listener.security.protocol.map=INTERNAL:PLAINTEXT,EXTERNAL:PLAINTEXT
说明:
1.这里上下两行是对应的内网使用端口1接受 外网转发进来的使用端口2接受
2.消费数据直接消费端口1数据即可(./kafka-console-consumer.sh --bootstrap-server 内网IP:端口1 --topic xxx)
3.这里listeners内网可以配置成0.0.0.0 advertised.listeners 内网地址配置成kafka服务器ip
4.外网用户想消费和生产直接连接 外网地址:映射任意端口
以上方案1直接可用
方案2待更新