【Linux】Prometheus 监控 Kafka 集群

发布于:2025-07-22 ⋅ 阅读:(10) ⋅ 点赞:(0)
一、项目概述

kafka_exporter 是用于 Prometheus 的 Kafka 监控指标导出器,可帮助监控 Kafka 集群的各项指标。项目地址为:https://github.com/danielqsj/kafka_exporter

二、环境准备
  • 确保已安装 Prometheus生态环境,准备好kafka集群
三、下载与解压

可从 Releases 页面下载二进制文件,然后执行以下命令:

cd /opt
# 下载 kafka_exporter-1.9.0.linux-amd64.tar.gz 到当前目录
tar -zxvf kafka_exporter-1.9.0.linux-amd64.tar.gz
mv kafka_exporter-1.9.0.linux-amd64 kafka_exporter
cd kafka_exporter/
四、运行

运行 kafka_exporter 并指定 Kafka 服务器地址:

./kafka_exporter --kafka.server=kafka01:9092 --kafka.server=kafka02:9092 --kafka.server=kafka03:9092 --web.listen-address=:9308
  • 参数说明
    • --kafka.server:指定 Kafka 服务器的地址和端口,可以指定多个 Kafka 服务器。
    • --web.listen-address:指定 kafka_exporter 监听的地址和端口,这里监听在 9308 端口。
五、启动脚本示例

为了方便管理,可以创建一个启动脚本 start_export.sh

#!/bin/bash
./kafka_exporter \
  --kafka.server=kafka01:9092 \
  --kafka.server=kafka02:9092 \
  --kafka.server=kafka03:9092 \
  --web.listen-address=:9308 &

给脚本添加执行权限并运行:

chmod +x start_export.sh
./start_export.sh

Prometheus.yml添加export地址:

scrape_configs:
  - job_name: 'kafka'
    static_configs:
      - targets: ['192.168.100.150:9308']
    scrape_interval: 10s
六、可用标志
标志名称 默认值 描述
kafka.server kafka:9092 Kafka 服务器的地址(主机:端口)
kafka.version 3.6.1 Kafka 代理的版本
sasl.enabled false 是否使用 SASL/PLAIN 进行连接
sasl.handshake true 仅在使用非 Kafka SASL 代理时将此设置为 false
sasl.username SASL 用户名
sasl.password SASL 用户密码
sasl.mechanism plain SASL SCRAM SHA 算法:sha256 或 sha512,或者 SASL 机制:gssapi 或 awsiam
sasl.aws - region AWS_REGION 环境变量 IAM SASL 认证使用的 AWS 区域
sasl.service - name 使用 Kerberos 认证时的服务名称
sasl.kerberos - config - path Kerberos 配置文件的路径
七、Grafana 仪表盘
  1. 登录 Grafana 控制台。
  2. 点击左侧菜单的 “+” 号,选择 “Import”。
  3. 导入grafna_id号21078 对应 KAFKA Dashboard CN 20240520 StarsL.cn
  4. 配置数据源等信息,完成仪表盘导入。
    在这里插入图片描述