kafka制作人如何知道哪些是来自zookeeper的可用经纪人?

时间:2016-11-18 18:27:30

标签: apache-kafka apache-zookeeper kafka-producer-api

我已经设置了3节点kafka集群。我想知道生产者客户可以使用哪些经纪人。是否有任何命令列出连接到动物园管理员的经纪人?

1 个答案:

答案 0 :(得分:4)

您可以通过迭代 / brokers / ids 中的代理ID,然后从这些ID中获取代理信息,通过ZooKeeper获取代理列表:

ZooKeeper zk = new ZooKeeper("localhost:2181", 10000, null);
List<String> ids = zk.getChildren("/brokers/ids", false);

for (String id : ids) {
   String brokerInfo = new String(zk.getData("/brokers/ids/" + id, false, null));
   System.out.println(id + ": " + brokerInfo);
}