前言:網上很多說是hosts的問題,我經過測試發現不是,經過我自己測試,介紹三種針對大部分問題的解決方法
1.未開放防火牆端口或關閉防火牆
防火牆一般本地測試纔會關閉,線上一般都是開啓的,建議還是添加端口
添加端口:
# --permanent 爲永久添加,不指定此參數重啓後失效
firewall-cmd --zone=public --add-port=9092/tcp --permanent
刪除端口:
firewall-cmd --zone=public --remove-port=80/tcp --permanent
查看所有端口:
firewall-cmd --zone=public --list-ports
查看指定端口:
firewall-cmd --zone= public --query-port=9092/tcp
查看端口狀態:
netstat -tunlp
重載:
firewall-cmd --reload
防火牆命令:
#開啓防火牆
service firewalld start
#啓用防火牆
service firewalld enable (永久生效)
#關閉防火牆
service firewalld stop (重啓後失效)
#禁用防火牆
service firewalld disable (永久生效)
#重啓防火牆
service firewalld restart
#查看狀態
service firewalld status
2.未指定kafka對外提供服務入口地址
編輯kafka的config目錄下的server.properties,添加 對外提供服務入口地址:
注意:此ip爲kafka所在主機的ip地址
listeners=PLAINTEXT://192.168.5.228:9092
3.項目中的kafka版本與服務器上安裝的kafka版本不一致
修改maven的pom.xml文件,指定對應的kafka座標,
我安裝的是kafka_2.12-2.1.0,對應座標爲:
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka_2.11</artifactId>
<version>0.10.0.0</version>
</dependency>