【Kafka踩坑系列之一】消费者拉不出数据
一、Bug背景
因业务需要,我们部署了两个Kafka集群。Kafka集群A的版本号为:0.11.0.1,Kafka集群B的版本号为0.9.0.1。
因两个Kafka集群的版本号不一致,尝试了多种解决方案,发现总有一个集群出不来数据,无法互相兼容。
二、Kafka的客户端版本号必须与服务端版本号一致
- 客户端v0.11.0.1的Maven配置
<
dependency
>
<
groupId
>org.apache.kafka</
groupId
>
<
artifactId
>kafka-clients</
artifactId
>
<
version
>0.11.0.1</
version
>
</
dependency
>
- 客户端v0.9.0.1的Maven配置
<
dependency
>
<
groupId
>org.apache.kafka</
groupId
>
<
artifactId
>kafka-clients</
artifactId
>
<
version
>0.9.0.1</
version
>
</
dependency
>
三、降级前要清空老数据,升级时参考官方文档的数据兼容方案
集群A降级后,消费者程序一直拉不出数据,新建topic也不行。查问题,各种猜测,折腾了一整天仍未解决。。
后来干脆通知我司的运维GG清空所有老数据,再重装Kafka。竟然成功了!
所以,问题出在不同版本的数据不兼容。降级前要清数据,升级前务必参考官方文档。否则坑死你不偿命~