首先,在linux端运行下列两个命令是可以正常发送和获取数据
# 消费者
kafka-console-consumer.sh --zookeeper hadoop101:2181 --topic test
# 生产者
kafka-console-producer.sh --broker-list hadoop101:9092 --topic test
但是java通过kafka-client的API写的代码始终不能跟kafka通信:java producer的消息发不出去, java comsumer也收不到任何消息。
仔细检查了下代码中IP、端口都没有写错。
解决办法:
找到kafka/config/server.properties文件中的advertised.listeners,将注释去掉,修改如下值,IP地址修改成自己的即可
advertised.listeners=PLAINTEXT://192.168.75.137:9092
重启kafka即可