kafka无法获取所有的consumergroupid?已经使用kafka-consumer-groups.sh --list --zookeeper localhost:2181

这个问题困扰了我很久。明明我在代码里面已经用某一个groupid消费了一些数据,但是

kafka-consumer-groups.sh --list --zookeeper localhost:2181这个命令却没有找到那个groupid,一开始我以为是我用java客户端创建groupid的原因,但是后面python创建的也找不到,感觉可能性不大。

百度许久,最后谷歌还是有效,参考:https://*.com/questions/34181346/java-consumer-group-missing

原来是新的consumer是因为新的consumer API不能这样实现

然后我就这样

kafka-consumer-groups.sh --list --new-consumer --bootstrap-server localhost:9092 

就可以了!

各个版本之间还是有很多坑。

但是,其实还有一个问题。就是我把kafka结合storm,以kafka作为storm的spout之后,消费的时候要设置一个consumer.clientid,那个id即使用new-consumer也找不到。这个问题还在解决,哪位大神知道了请评论一下,不胜感激!

---------------------------

在这里,对上面提到的问题做一个更新。

zkCli.sh到zookeeper里面

ls /根目录下的所有东西的时候,发现一个consumers,(ls /consumers)那里便是所有low-level consumer API的groupid。(但是没有high-level 的consumer groupid)

kafka无法获取所有的consumergroupid?已经使用kafka-consumer-groups.sh --list --zookeeper localhost:2181

kafka的consumer groupid默认放在consumers,但是我在做kafkaspout的时候,把consumers zkroot设置为“annInfo”

kafka无法获取所有的consumergroupid?已经使用kafka-consumer-groups.sh --list --zookeeper localhost:2181

点进去看SpoutConfig

kafka无法获取所有的consumergroupid?已经使用kafka-consumer-groups.sh --list --zookeeper localhost:2181

也就是找zkRoot为annInfo的

kafka无法获取所有的consumergroupid?已经使用kafka-consumer-groups.sh --list --zookeeper localhost:2181

ls /annInfo,果然我kafkaSpout的clientId都在里面啊。由于./kafka-consumer-groups.sh --list显示的都是consumers下面的,所以annInfo下面的不会显示。


现在又有一个问题了,既然low-level consumer API的位置在zookeeper里面,那high-level的有没有在里面呢,我找了找,确实没有,要是以后找到答案,继续补充。欢迎大家补充。