今天kafka-manager监控到异常:

Brokers Leader Skew指标不正常,指标有偏离说明分区分配有问题,发现broker列表中少了一台机器,将服务器kafka重启后恢复正常。
kafka-manager指标
Brokers Spread

看作broker使用率,如kafka集群9个broker,某topic有7个partition,则broker spread: 7 / 9 = 77%。
Brokers Skew

partition是否存在倾斜,如kafka集群9个broker,某topic有18个partition,正常每个broker应该2个partition。若其中有3个broker上的partition数>2,则broker skew: 3 / 9 = 33%。
Brokers Leader Skew

leader partition是否存在倾斜,如kafka集群9个broker,某topic有18个partition,则正常每个broker有2个leader partition。若其中一个broker有0个leader partition,一个有4个leader partition,则broker leader skew: (4 - 2) / 14 = 14%。

由于kafka所有读写都在leader上进行, broker leader skew会导致不同broker的读写负载不均衡,配置参数
auto.leader.rebalance.enable=true 可以使kafka每5min自动做一次leader的rebalance,消除这个问题。
Under Replicated
该 topic 下的 partition,其中副本处于失效或者失败的比率。失败或者失效是指副本不处于 ISR 队列中。目前控制副本是否处于 ISR 中由 replica.log.max.ms 这个参数控制。
replica.log.max.ms: 如果一个follower在这个时间内没有发送fetch请求或消费leader日志到结束的offset,leader将从ISR中移除这个follower,并认为这个follower已经挂了,默认值 10000 ms。
Lag为什么有时是负数?
Lag代表consumer的消费能力,计算公式为
Lag = Consumer Offset - LogSizeKafka Manager先从zk获取LogSize,再从kafka __consumer_offsets topic读取Offset。两步操作存在一个时间gap,因此吞吐很大的topic上会出现Offset > LogSize的情况。导致Lag负数。
如下图:
继续阅读与本文标签相同的文章
Dubbo Cluster介绍
bio和nio
-
使用JWT来实现对API的授权访问
2026-05-16栏目: 教程
-
零基础Python教程032期 循环的嵌套使用,灵活运用循环语句
2026-05-16栏目: 教程
-
2019阿里云双十一活动热门云服务器价格表
2026-05-16栏目: 教程
-
Python高级进阶#014 pyqt5滑块控件QSlider应用
2026-05-16栏目: 教程
-
Texar-PyTorch:在PyTorch中集成TensorFlow的最佳特性
2026-05-16栏目: 教程
