kafka集群节点在zk掉点怎么处理

青天白云 发表于: 2021-09-06   最后更新时间: 2021-09-06 09:55:14   1,996 游览

kafka集群再zk集群上注册点节点偶尔会丢失,./zkCli.sh ls /brokers/ids 一个节点数据丢失。

kafka对应的程序正常运行,但是logs下的server.log日志比如两天前掉点,就没有再增加日志,也没有报错信息。

重启单台kafka,集群恢复正常

请问这种情况怎么处理?

防止掉点,或者掉点后可以自动重启或者重新连接到zk集群

发表于 2021-09-06

zk查看的方式只是最后的结果,最好通过kafka命令还查看集群状态。

## 查询集群描述
bin/kafka-topics.sh --describe --zookeeper 127.0.0.1:2181

## 查询集群描述(新)
bin/kafka-topics.sh --bootstrap-server localhost:9092 --topic foo --describe

来自:kafka命令大全

没有任何异常,而且kafka进程还在(排除oom被强杀)。

你可以到其他的kakfa节点,看看那个时间点,是否有什么异常日志。

青天白云 -> 半兽人 3年前

谢谢了,kafka 2.2.0 ,这种几天就有kakfa从zk断开的问题,有办法处理吗?

半兽人 -> 青天白云 3年前

1、kafka有掉线节点的时候,你执行下上面提供的命令,贴出来看看kafka的集群状态。
2、在掉线kafka的节点上,查看下系统日志,看看是否有异常信息/var/log/messages
3、一定要确认掉线的kafka是假死,还是已经被kill了。

青天白云 -> 半兽人 3年前

kafka节点应该是假死的,用上面的命令查看,Leader:1的节点进行了重新选举(掉线1),我的理解是leader重新选举后ISR 就会少一个(以前为三个)。您说的用命令确定集群状态是什么意思

半兽人 -> 青天白云 3年前

是的。

kafka节点应该是假死的?这个很重要额,因为你没有其他的信息提供了,完全无头绪。

ps -ef|grep kafka

或者

jps

确认kafka进程还在不在。

Closed socket connection for client /172.23.20.25:59704 which had sessionid 0x204495ce5780002

zookeep日志看到这条信息,掉线的节点就是25这台机器。
kafka进程没有问题的~

半兽人 -> 青天白云 3年前

爱莫能助了,这种情况实在没遇到过。

青天白云 -> 半兽人 3年前

多谢了,一直也没遇到过这种情况,有点闷~

你的答案

查看kafka相关的其他问题或提一个您自己的问题