打開zookeeper集群之后,zk正常,但是kafka啟動之后總是會掛掉,查找logs日志里的server.log文件發現問題:

問題:A broker is already registered on the path /brokers/ids/0. This probably indicates that you either have configured a brokerid that is already in use, or else you have shutdown this broker and restarted it faster than the zookeeper timeout so it appears to be re-registering.
這可能是之前機器因為卡死或物理重啟,kafka broker沒有正常下線,zk上還保留着它的broker id。所以直接刪除zk上的brokerid就可以了。
具體解決步驟如下:
1、進入zookeeper的客戶端
[admin@hadoop102 zookeeper-3.4.10]$ bin/zkCli.sh
![]()
2、進入客戶端以后查看注冊信息
[zk: localhost:2181(CONNECTED) 2] ls /
![]()
3、進入brokers查看ids的信息
[zk: localhost:2181(CONNECTED) 10] ls /brokers/ids
![]()
4、刪除這些注冊信息就ok
[zk: localhost:2181(CONNECTED) 11] delete /brokers/ids
![]()
5、在開啟kafka,就沒問題了。
