0
votes

While I am going through the documentation, I come across the following phrase https://kafka.apache.org/20/documentation.html#basic_ops_consumer_lag

bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --describe --group my-group

Note: This will only show information about consumers that use the Java consumer API (non-ZooKeeper-based consumers).

This tool also works with ZooKeeper-based consumers:

bin/kafka-consumer-groups.sh --zookeeper localhost:2181 --describe --group my-group

Note: This will only show information about consumers that use ZooKeeper (not those using the Java consumer API).

What is the difference between non-ZooKeeper-based consumers Vs ZooKeeper based consumers - Is it got to do with java language ( it seems java is referred in the comments ).

  • Is it got to do with something like zookeeper consumer connect with zk while non zk connect with the brokers ?

PS : It seems this is not present in 2.5 documentation

1

1 Answers

1
votes

Before Kafka 0.9, Consumers used Zookeeper for coordination. Since then, Consumers now only connect to Kafka.

For that reason, the kafka-consumer-groups.sh had support for showing "zookeeper-based" (ie the old consumer) group details.

The "old consumer" was deprecated in Kafka 0.11 and finally removed in 2.1.0. The kafka-consumer-groups.sh was also updated to remove any mention of it.

So basically, just ignore it, it's a legacy client that does not exist anymore.