如何使用javaapi列出kafka集群中所有可用的代理?

omvjsjqw  于 2021-06-05  发布在  Kafka
关注(0)|答案(1)|浏览(306)

标题是怎么说的。
是否仍然有(使用kafkajavaapi)来获取集群中可用的kafka代理的数量?
我知道使用kafka服务器附带的命令行实用程序,这是可以做到的;但是我还没有找到任何关于如何使用javaapi实现它的方法。

jgovgodb

jgovgodb1#

您可以从kafkaadminclient.describecluster获取代理和集群信息
使用默认选项获取有关群集中节点的信息。这是带有默认选项的#describecluster(describeclusteroptions)的方便方法。有关详细信息,请参见重载。

Properties properties = new Properties();
properties.setProperty("bootstrap.servers", "localhost:9092");
properties.setProperty("client.id", "producerAdmin");
properties.setProperty("metadata.max.age.ms", "3000");
kafkaAdminClient = AdminClient.create(properties);

DescribeClusterResult result = kafkaAdminClient.describeCluster()
KafkaFuture<Collection<Node>> nodes = result.nodes();

您可以使用node类中的host、port方法来获取更多信息

相关问题