温馨提示×

debian kafka怎样监控

小樊
42
2026-09-09 21:41:05
栏目: 智能运维

在 Debian 上监控 Kafka,通常可以从系统层、Kafka 自身指标、日志、可视化工具几个层面来做。下面给你一套实用方案。


一、基础系统监控(Debian 层面)

1. 查看进程状态

systemctl status kafka
ps -ef | grep kafka

2. 资源占用

top
htop
free -h
df -h

3. 网络与端口

ss -tunlp | grep 9092
netstat -tunlp | grep 9092

二、Kafka 自带命令行监控

1. Topic / 消费情况

# 查看 topic 列表
kafka-topics.sh --bootstrap-server localhost:9092 --list

# 查看 topic 详情
kafka-topics.sh --bootstrap-server localhost:9092 --describe --topic test

# 查看消费组
kafka-consumer-groups.sh --bootstrap-server localhost:9092 --list

# 消费组详情(Lag 很重要)
kafka-consumer-groups.sh --bootstrap-server localhost:9092 --describe --group my-group

2. 生产者 / 消费者压测

kafka-producer-perf-test.sh
kafka-consumer-perf-test.sh

三、Kafka 指标监控(JMX)

Kafka 通过 JMX 暴露大量指标。

1. 启用 JMX

编辑 kafka-server-start.sh 或 server.properties:

export JMX_PORT=9999

重启 Kafka:

systemctl restart kafka

2. 使用 jconsole(简单)

jconsole localhost:9999

可看到:

  • 消息吞吐
  • 请求延迟
  • 分区状态
  • GC 情况

四、生产级监控方案(推荐)

✅ 方案 1:Kafka + Prometheus + Grafana(最常用)

架构

Kafka → JMX Exporter → Prometheus → Grafana

1. 安装 JMX Exporter

wget https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/0.20.0/jmx_prometheus_javaagent-0.20.0.jar

2. Kafka 启动参数

export KAFKA_OPTS="-javaagent:/path/jmx_prometheus_javaagent.jar=7071:/path/kafka.yml"

3. Prometheus 配置

scrape_configs:
  - job_name: kafka
    static_configs:
      - targets: ['localhost:7071']

4. Grafana

  • 导入 Kafka Dashboard(ID: 7589 或 10466)
  • 监控:
    • Broker 吞吐
    • 消费 Lag
    • 分区均衡
    • 磁盘使用

✅ 方案 2:Kafka Manager / CMAK

# 可视化 Kafka 集群管理
https://github.com/Yahoo/CMAK

功能:

  • Topic 管理
  • 消费 Lag
  • Broker 状态

✅ 方案 3:Burrow(消费 Lag 专用)

https://github.com/linkedin/Burrow

适合:

  • 精准监控 consumer lag
  • 告警

五、日志监控

Kafka 日志位置

/var/log/kafka/

常见命令

tail -f /var/log/kafka/server.log
grep ERROR /var/log/kafka/server.log

可接:

  • logrotate
  • ELK / Loki

六、告警建议(重点)

重点关注指标:

  • ✅ Consumer Lag 持续增长
  • ✅ Under Replicated Partitions > 0
  • ✅ Offline Partitions > 0
  • ✅ 磁盘使用 > 80%
  • ✅ Request Handler 空闲率过低

七、总结推荐

场景 推荐
学习/测试 JMX + jconsole
生产环境 Prometheus + Grafana
消费延迟 Burrow
集群管理 CMAK

如果你愿意,我可以:

  • 给你 Debian 上的完整安装步骤
  • 或 直接给你一套 Prometheus + Grafana 配置文件
  • 或只监控 Consumer Lag

你现在是 单机还是集群?生产还是测试?

0 踩