CDH kafka集群更换机器后,发送数据offset增长,但消费不了数据

Posted 永远不要矫情

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CDH kafka集群更换机器后,发送数据offset增长,但消费不了数据相关的知识,希望对你有一定的参考价值。

问题背景:

在CDH上的kafka集群为机器node1,node2,node3,这三台机器挂载的盘只有2到3块,导致大规模数据执行入库时,写入延迟大;现有机器node4-6三台机器挂载的盘有11块,想将kafka集群从node1-3换成node4-6,CDH集群有十台机器,包括node4-6机器,执行的步骤如下:
在这里插入图片描述
点击添加角色实例后,出现以下界面,在该界面点击选择主机,将node4-6加入。
在这里插入图片描述
再将node1-3三台机器停止运行,勾选三台机器,点击已选定的操作中的停止。
在这里插入图片描述
在kafka配置中,将node1-3的broker.id去掉。
在这里插入图片描述
将log.dirs目录增加到11个,注意保证三台机器都有data1到data11目录,data*后面的目录不需要提前建好。
在这里插入图片描述
执行完上述步骤后,创建topic正常,发送数据正常,使用kafka命令查看offset的最大有效值也是在增长,但是使用消费者消费数据,无数据输出,查看相关数据盘的数据目录大小也是在增长的。

解决办法:

1.停止kafka集群
2.使用zkCli.sh -server ip:port,连接上zk,由于在kafka集群配置中未设置相关目录,zk默认的路径是/根目录,使用zk的命令删除了根目录下的brokers和consumers目录
3.更换kafka的log.dirs目录,重启kafka

经过上述步骤后,kafka集群能正常消费数据。

以上是关于CDH kafka集群更换机器后,发送数据offset增长,但消费不了数据的主要内容,如果未能解决你的问题,请参考以下文章

cdh集群组件的原理介绍

cdh集群组件的原理+配置规则

K8S集群安装和迁移

如何在CDH集群中部署Kafka Manager

Ubuntu16.04下CDH 5.14.0 集群使用parcel包的方式接入KAFKA

Ubuntu16.04下CDH 5.14.0 集群使用parcel包的方式接入KAFKA