当前位置:   article > 正文

【Kafka】kafka-eagle几个指标含义_kafka-eagle 几个指标含义

kafka-eagle 几个指标含义

本文为博主九师兄(QQ:541711153 欢迎来探讨技术)原创文章,未经允许博主不允许转载。

可以加我问问题,免费解答,有问题可以先私聊我,本人每天都在线,会帮助需要的人。

但是本博主因为某些原因,心灰意冷了,决心打死不写免费了。不想解释了。。

在这里插入图片描述

1.概述

转载:kafka-eagle几个指标含义

1. Preferred Leader
默认用Replicas副本集里的第一个副本作为leader。

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

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

4. Brokers Leader Skew

leader partition是否存在倾斜,如kafka集群9个broker,某topic14个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,消除这个问题。

1.1 Lag

1.1.1 Lag计算

了解lag之前,先熟悉下面几个概念

  1. LogStartOffset:表示一个Partition的起始位移,初始为0,虽然消息的增加以及日志清除策略的影响,这个值会阶段性的增大。
  2. ConsumerOffset:消费位移,表示Partition的某个消费者消费到的位移位置
  3. HighWatermark:简称HW,代表消费端所能“观察”到的Partition的最高日志位移,HW大于等于ConsumerOffset的值
  4. LogEndOffset:简称LEO, 代表Partition的最高日志位移,其值对消费者不可见。比如在ISR(In-Sync-Replicas)副本数等于3的情况下,消息发送到Leader A之后会更新LEO的值,Follower B和Follower C也会实时拉取Leader A中的消息来更新自己,HW就表示A、B、C三者同时达到的日志位移,也就是A、B、C三者中LEO最小的那个值。由于B、C拉取A消息之间延时问题,所以HW必然不会一直与Leader的LEO相等,即LEO>=HW。

Lag是阻塞的消息个数,代表consumer的消费能力,实际计算公式为:Lag=HW - ConsumerOffset

1.1.2 Lag为负数

Kafka Manager先获取HW,再读取ConsumerOffset。两步操作存在一个时间gap,因此吞吐很大的topic上会出现HW < ConsumerOffset的情况。导致Lag负数

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/362025
推荐阅读
相关标签
  

闽ICP备14008679号