赞
踩
需要从第三方kafka中订阅数据,两边内网,中间加了网闸,上下游加网闸都是通的,但下游取不到上游的数据
从上面的流程可以看出,客户端在消费的时候实际上还是用kafka服务器返回的内网地址进行直连,此时网络是不通的,导致连接失败
Kafka有两个配置项listeners和advertised.listeners
路径:/etc/cluster001/SERVICE-KAFKA-retro/server.properties
其中listeners代表监听的网卡的IP,如果服务器是双网卡,可以同时配置上两个网卡的ip,如下:
listeners=PLAINTEXT://0.0.0.0:9092 #代表监听所有网卡
这个现场只有单网卡,使用的是NAT映射出来的外网IP,此时kafka无法监听这个外网IP,需要配置advertised.listeners,我们使用客户端连接kafka,kafka返回的地址优先会使用advertised.listeners,如果没配置,才会使用listeners的地址
listeners=PLAINTEXT://43.81.148.153:9092 #内网IP
advertised.listeners= PLAINTEXT://43.81.101.129:9092 #外网IP
重启kafka后使用下面命令确认监听的地址
/usr/lib/*/SERVICE-ZOOKEEPER-*/bin/zkCli.sh get /brokers/ids/0
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。