搜索

第 17 章 使用 Kafka Exporter

download PDF

Kafka Exporter 是一个开源项目,用于增强对 Apache Kafka 代理和客户端的监控。

Kafka Exporter 由 Streams for Apache Kafka 提供,用于使用 Kafka 集群部署,从与偏移、消费者组、消费者滞后和主题相关的 Kafka 代理中提取额外的指标数据。

例如,使用指标数据来帮助识别速度较慢的用户。

lag 数据作为 Prometheus 指标公开,然后可在 Grafana 中显示这些指标数据进行分析。

如果您已经使用 Prometheus 和 Grafana 监控内置 Kafka 指标,您可以将 Prometheus 配置为同时提取 Kafka Exporter Prometheus 端点。

Kafka 通过 JMX 公开指标,然后可作为 Prometheus 指标导出。如需更多信息,请参阅使用 JMX 监控集群

17.1. 消费者滞后

消费者滞后表示消息的速度与消息的消耗的差别。具体来说,给定消费者组的消费者滞后指示分区中最后一个消息与当前由该消费者获取的消息之间的延迟。lag 反映了与分区日志末尾相关的消费者偏移位置。

这种差异有时被称为生成者偏移和消费者偏移之间的 delta,在 Kafka 代理主题分区中的读写位置。

假设主题将 100 个消息流过一秒。生成者偏移(主题分区头)和消费者读取的最后偏移之间的 1000 个消息表示有 10 秒的延迟。

监控消费者滞后的重要性

对于依赖于实时数据的处理的应用程序,监控消费者来判断其是否不会变得太大。整个过程越好,流程从实时处理目标中得到的增长。

例如,消费者滞后可能是消耗太多的旧数据(这些数据尚未被清除)或出现计划外的关闭。

减少消费者滞后

减少滞后的典型操作包括:

  • 通过添加新消费者来扩展消费者组
  • 增加消息的保留时间,以保留在主题中
  • 添加更多磁盘容量以增加消息缓冲

减少消费者滞后的操作取决于底层基础架构,支持 Apache Kafka 的用例流。例如,分发的消费者不太可能从其磁盘缓存中获取请求的服务从代理服务。在某些情况下,可能可以接受自动丢弃信息,直到消费者发现为止。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.