Today zookeeper access is used to list topics, check existance of topic, mark topic as being deleted and discover brokers.
This access to Zookeeper in addition to Kafka broker should be removed, for the following reasons:
- The ACL to Zookeeper can be different than the ACL for Kafka brokers
- The Zookeeper can be chrooted to handle multiple Kafka clusters, in this case the broker has a zookeeper.connect=zk_host:2181/chroot. Unfortunatly we use kafka.utils.ZkUtils to access Zookeeper and this lib don't support chroot.
- It is one more config to setup, Kafka brokers aka `bootstrap.servers` should be enough.
The Zookeeper dependency should be removed in favor of Kafka broker API for instance org.apache.kafka.clients.admin.AdminClient.