环境:
- kafka_2.11-2.2.0
说明
$KAFKA_HOME
为kafka根目录的值, 如:/root/test/kafka_2.11-2.2.0
情景:
A主机正常启动kafka(完全使用默认配置, 按照: https://kafka.apache.org/quickstart), 然后在B主机上连接A上的kafka(用kafka自带的.sh文件), 来查看有哪些topic($KAFKA_HOME/bin/kafka-topics.sh --list --bootstrap-server $IP_A:9092
), 报错:
kafka No entry found for connection 0
解决方法
开始以为是防火墙的问题, 但是测试, 显示一切正常:
$ nc -vnz $IP_A 9092
Ncat: Version 7.50 ( https://nmap.org/ncat )
Ncat: Connected to $IP_A:9092.
Ncat: 0 bytes sent, 0 bytes received in 0.06 seconds.
最后解决方法:
在A主机的kafka配置文件($KAFKA_HOME/config/server.properties
)中:
添加:
advertised.listeners=PLAINTEXT://$IP_A:9092
(默认这个key所在行是注释掉的)
其中$IP_A可以是A主机的IP或者hostname(在B主机上能ping通就可以).
欢迎补充指正!