【问题标题】:kafka AdminClient get kafka versionkafka AdminClient 获取kafka版本
【发布时间】:2019-11-21 23:36:47
【问题描述】:

有没有办法以编程方式获取 kafka 集群的版本?比如,使用 AdminClientAPI。

我想在消费者/生产者应用中识别 kafka 集群的版本。

【问题讨论】:

    标签: apache-kafka


    【解决方案1】:

    目前无法检索代理正在运行的 Kafka 版本。

    正在进行一个 KIP 以将该功能添加到 AdminClient:KIP-483: Add Broker Version API in Admin Client,以便在未来的版本中可用。

    与此同时,您可以尝试一些解决方法:

    • 使用describeConfigs() 查找代理的inter.broker.protocol.version 配置。如果返回 2.2-IV1,则表示代理正在运行至少 2.2。

    • 检查 ApiVersions 响应。在启动客户端时发送一个 ApiVersions 请求,并且响应写入日志(在 INFO 级别)。或者手动发送ApiVersions,制作这样的请求非常容易,因为它是一个空的正文。然后您可以使用https://cwiki.apache.org/confluence/display/KAFKA/Kafka+APIs 识别代理版本

    【讨论】:

      【解决方案2】:

      您可以在您的消费者/生产者代码中使用AppInfoParser.getVersion();

      【讨论】:

      • 这是 kafka 客户端的版本,而不是 kafka 代理的版本
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-21
      • 1970-01-01
      • 2017-09-15
      • 2019-05-08
      相关资源
      最近更新 更多