首次查看broker是否正常! 重启broker查看是否恢复。
如果broker状态正常,某个partition leader为-1,可能是partition 副本选举出现问题,需要手动指定partition leader。
解决办法:
修改zk中的znode数据,手动切换某个副本为leader。
1、使用kafka/bin/zookeeper-shell.sh连接zk:(开kerberos认证后,kafka的znode节点有acl认证,使用其他的zkClient时会无法修改)
2、./kafka/bin/zookeeper-shell.sh demo:2181
3、get /brokers/topics/R***/partitions/1/state 查看原始数据
4、set /brokers/topics/R***/partitions/1/state {“controller_epoch”:46,“leader”:1015,“version”:1,“leader_epoch”:10,“isr”:[1015]} #修改副本1015作为leader。