无法从zookeeper检索主题/组/分区的kafka偏移量

jaql4c8m  于 2021-06-08  发布在  Kafka
关注(0)|答案(1)|浏览(350)

我们在不同的服务器上运行zookeeper 3.3和kafka 0.8。我们使用的是hl消费者,他们按照预期访问kafka队列中的数据,在重新启动时,他们从停止的地方获取表单。因此,消费者的行为符合预期。问题是当我们使用zkcli.sh时,在zookeeper中看不到偏移量。目前,使用者被设置为只在一个分区中运行一个主题。
cmd“ls/consumers/mygrpid/offsets/mytopic/0”返回[]。与“ls/consumers/mygrpid/owners/mytopic”相同,它返回[]。
因为当消费程序停止并重新启动时,消费程序的行为与预期一致(即,它从上次运行时中断的偏移量中恢复)。我们可以通过查看日志来判断这一点,该日志给出了它开始的偏移量,并且每次提交时都提供了偏移量)我们知道zookeeper应该在某个地方为使用者保存提交的偏移量。我的理解是Zookeeper跟踪hl消费者,而不是Kafka经纪人。然而,应该显示偏移量的“ls”命令却显示为null。
我应该在另一个地方查看偏移量吗(最终,我需要一个脚本来报告所有消费者的补偿。)
非常感谢任何帮助或建议。

dba5bblo

dba5bblo1#

你应该使用 get 而不是 ls . ls 获取子节点,在您的情况下 /consumers/mygrpid/offsets/mytopic/0 没有孩子。但它有一个价值,所以运行 get /consumers/mygrpid/offsets/mytopic/0 应该给你看这样的东西:

47
cZxid = 0x568
ctime = Tue Feb 03 19:08:10 EET 2015
mZxid = 0x568
mtime = Tue Feb 03 19:08:10 EET 2015
pZxid = 0x568
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 2
numChildren = 0

哪里 47 是偏移值。

相关问题