kafka 坑爹问题排查记录

  重点、重点、重点:    重启kafka一定要先看看 持久化有没有问题。

首先,问题没有解决,只是阐述过程和问题。

问题关键字: 偏移量提交失败,重复消费,新的group不能消费到历史数据

版本:0.10.2  

场景:consumer 两个group进行消费,但是偏移量从某一时间点开始就无法进行提交。一直在循环消费一个时间段的数据。

尝试重启项目,还是不能正常进行消费,偏移量还是不变,但是一直在rebalance,代数持续增长。最后半夜重启了kafka,消费正常了,但是重复消费的数据 需要删除,重新处理。这时就要启动一个重算工具。消费同一个topic的新的group。发现新的group已经加入到了kafka中,也绑定了topic。代数也增加了,重新分配了。但是就是没有进行消费数据,

如下是重算的group配置:

在spring文件中:auto-offset-reset: earliest //从头开始消费数据

代码中:配置消费消息的时间段,满足时间条件的才能入库,其他的舍弃。

新加入的group跟老的group偏移量是一样的,存量也是一样。。

开始认为可能是配置参数出问题了,偏移量不能重置,然后试着手动消费了一下数据

手动从头取数据,发现获取的数据日期还是当前的。

这个时候就想到了,是不是没有持久化啊。然后找到了运维,持久化路径配置的不对,所以历史数据就拿不到了。

反思了一下,如果当时停掉正常业务服务,然后重算。重算完成再重启kafka,就能保证数据的完整了。只怪当时太自信了以为kafka持久化是没问题的。。。没想到几十个环境就这个有问题。。。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章