Kafka集群监控系统:Prometheus集成实战
在实际生产环境中,Kafka集群的稳定运行离不开有效的监控体系。本文分享我们在Prometheus集成Kafka监控方面的实践经验。
监控组件部署
首先需要部署kafka-exporter,通过以下命令安装:
wget https://github.com/danielqsj/kafka-exporter/releases/download/v1.4.0/kafka-exporter-1.4.0.linux-amd64.tar.gz
tar -xzf kafka-exporter-1.4.0.linux-amd64.tar.gz
./kafka-exporter --kafka.server=localhost:9092 --web.listen-address=:9308
Prometheus配置
在prometheus.yml中添加job配置:
- job_name: 'kafka'
static_configs:
- targets: ['kafka-exporter:9308']
metrics_path: /metrics
核心监控指标
我们重点关注以下指标:
kafka_server_replicamanager_leadercount:Leader分区数量kafka_server_replicamanager_underreplicatedpartitions:未同步分区数kafka_network_processor_idle_percent:处理器空闲率kafka_log_log_size:日志大小
告警规则设置
针对关键指标设置告警,如:
- alert: KafkaUnderReplicatedPartitions
expr: kafka_server_replicamanager_underreplicatedpartitions > 0
for: 5m
labels:
severity: warning
annotations:
summary: "Kafka存在未同步分区"
实际优化效果
通过监控发现,某次集群性能下降问题源于消费者组消费速度跟不上生产者速度,通过调整max.poll.records参数后恢复正常。建议定期巡检这些关键指标,确保集群健康运行。

讨论