kafka版本: kafka_2.11-0.10.0.0
spark版本: 2.2.0
scala版本: 2.11.8
問題:
在kafka服務器命令行producer發送消息,消費者consumer可以接受到消息。
woindos下spark程序消費kafka消息, 沒有接受到消息。
解決方案:
1.查看本機與kafka服務器ip映射關系
2.更改配置文件
在kafka/config/sever.properties把這個注解打開
advertised.listeners=PLAINTEXT://ip:9092 #本機服務器ip
意思就是說:hostname、port都會廣播給producer、consumer。如果你沒有配置了這個屬性的話,則使用listeners的值,如果listeners的值也沒有配置的話,則使用
java.net.InetAddress.getCanonicalHostName()返回值(這里也就是返回localhost了)。