欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 旅游 > 使用 Grafana 和 Prometheus展现消息队列性能

使用 Grafana 和 Prometheus展现消息队列性能

2025/2/5 1:17:41 来源:https://blog.csdn.net/sosovo66/article/details/145429946  浏览:    关键词:使用 Grafana 和 Prometheus展现消息队列性能

引言

上篇文章通过JMX提取Kafka数据,本篇文章将通过JDBC存储Kafka性能数据存储于数据库,并通过Grafana 和 Prometheus进行展示,实现开发中常用的可视化监控

1. 环境准备        

  • Kafka:运行中的 Kafka 集群,确保可以通过 JMX 访问其性能指标。

  • Kafka Exporter:用于将 Kafka 的 JMX 指标暴露给 Prometheus。

  • Prometheus:负责收集和存储 Kafka Exporter 提供的性能指标。

  • Grafana:用于从 Prometheus 读取数据并进行可视化展示。

2. 安装和配置 Kafka Exporter

下载和启动        

从 Kafka Exporter 的 GitHub 仓库 下载适合你系统的版本,然后启动它,示例命令如下:

./kafka_exporter --kafka.server=localhost:9092

此命令将 Kafka Exporter 连接到本地运行在 9092 端口的 Kafka 集群。Kafka Exporter 默认会在 9308 端口暴露指标供 Prometheus 抓取。

3. 安装和配置 Prometheus

下载和启动        

从 Prometheus 官方网站 下载适合你系统的版本,解压后,编辑 prometheus.yml 文件,添加对 Kafka Exporter 的抓取配置:

global:scrape_interval: 15sscrape_configs:- job_name: 'kafka_exporter'static_configs:- targets: ['localhost:9308']

保存配置文件后,启动 Prometheus:

./prometheus --config.file=prometheus.yml

4. 安装和配置 Grafana

下载和启动

根据你的操作系统,从 Grafana 官方网站 下载并安装 Grafana。安装完成后,启动 Grafana 服务。

配置数据源

  • 打开浏览器,访问 http://localhost:3000(默认端口),使用默认用户名 admin 和密码 admin 登录 Grafana。
  • 登录后,在左侧导航栏中点击 Configuration -> Data Sources
  • 点击 Add data source,选择 Prometheus
  • 在 HTTP 部分的 URL 字段中,输入 Prometheus 的访问地址,例如 http://localhost:9090
  • 点击 Save & Test,确保 Grafana 可以成功连接到 Prometheus。

5. 创建 Grafana 仪表盘

创建新仪表盘

  • 在左侧导航栏中点击 Dashboards -> New dashboard
  • 点击 Add a new panel

配置查询

  • 在 Metrics 选项卡中,使用 Prometheus 查询语句来获取所需的 Kafka 性能指标。例如:

    • 消息生产速率sum(rate(kafka_producer_record_send_total[5m]))
    • 消息消费速率sum(rate(kafka_consumer_fetch_manager_records_consumed_total[5m]))
    • 分区偏移量kafka_log_log_end_offset
  • 你可以根据需要调整查询的时间范围和聚合方式。

配置可视化

  • 在 Visualization 选项卡中,选择合适的可视化类型,如 Graph(折线图)、Bar chart(柱状图)等。
  • 根据需要调整图表的颜色、线条样式、坐标轴等参数。

保存仪表盘

配置完成后,点击 Apply 保存面板,然后点击仪表盘右上角的 Save dashboard 保存整个仪表盘。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com