如何通过kafka客户端检查集群中运行的kafka服务器的数量和IP?

8e2ybdfx  于 2021-06-08  发布在  Kafka
关注(0)|答案(1)|浏览(622)

我有一个要求,我们必须通过一个单一的休息点验证系统的健康检查。其思想是通过kafka客户机获取集群中kafka节点及其ip的数量。kafka是否在客户机中提供任何api来获取此信息?

7eumitmz

7eumitmz1#

是的,可以使用 describeCluster() adminclient的方法。
例如:

Properties adminProps = new Properties();
adminProps.load(new FileInputStream("admin.properties"));
AdminClient adminClient = KafkaAdminClient.create(adminProps);

DescribeClusterResult describeClusterResult = adminClient.describeCluster();
List<Node> nodes = new ArrayList<>(describeClusterResult.nodes().get());
for (Node node : nodes) {
    System.out.println("Node id=" + node.id() + " host=" + node.host() + " port=" + node.port());
}

相关问题