使用Kafka Assistant监控Kafka关键指标
使用Kafka Assistant监控Kafka关键指标
使用Kafka时,我们比较关心下面这些常见指标。
Kafka Assistant下载地址:http://www.redisant.cn/ka
broker度量指标
活跃控制器数量
该指标表示 broker 是否就是当前的集群控制器,其值可以是 0 或 1。如果是 1,表示
broker 就是当前的控制器。任何时候,都应该只有一个 broker 是控制器,而且这个 broker
必须一直是集群控制器。如果出现了两个控制器,说明有一个本该退出的控制器线程被阻
塞了,这会导致管理任务无法正常执行,比如移动分区。为了解决这个问题,需要将这两
个 broker 重启,而且不能通过正常的方式重启,因为此时它们无法被正常关闭。
Kafka Assistant提供了对此指标的监控

请求处理器空闲率
Kafka 使用了两个线程池来处理客户端的请求:网络处理器线程池和请求处理器线程池。
网络处理器线程池负责通过网络读入和写出数据。这里没有太多的工作要做,也就是说,
不用太过担心这些线程会出现问题。请求处理器线程池负责处理来自客户端的请求,包括
从磁盘读取消息和往磁盘写入消息。因此,broker 负载的增长对这个线程池有很大的影响。
Kafka Assistant 通过每隔一段时间对此指标进行采样,绘制了处理器空闲率的走势

主题流入字节
主题流入字节速率使用 b/s 来表示,在对 broker 接收的生产者客户端消息流量进行度量时,
这个度量指标很有用。该指标可以用于确定何时该对集群进行扩展或开展其他与规模增长
相关的工作。它也可以用于评估一个 broker 是否比集群里的其他 broker 接收了更多的流
量,如果出现了这种情况,就需要对分区进行再均衡。
kafka Assistant 可以监控自broker启动以来,流出的字节总数。一分钟的平均速率,五分钟的平均速率,十五分钟平均速率。

主题流出字节
主题流出字节速率与流入字节速率类似,是另一个与规模增长有关的度量指标。流出字节速
率显示的是消费者从 broker 读取消息的速率。流出速率与流入速率的伸缩方式是不一样的,
这要归功于 Kafka 对多消费者客户端的支持。很多 Kafka 的流出速率可以达到流入速率的 6
倍!所以,单独对流出速率进行观察和走势分析是非常重要的。
主题流入的消息
之前介绍的字节速率以字节的方式来表示 broker 的流量,而消息速率则以每秒生成消息个
数的方式来表示流量,而且不考虑消息的大小。这也是一个很有用的生产者流量增长规模
度量指标。它也可以与字节速率一起用于计算消息的平均大小。与字节速率一样,该指标
也能反映集群的不均衡情况。
与主题流入和流出字节一样,Kafka Assistant也对此提供了监控。如下图所示:

分区数量
broker 的分区数量一般不会经常发生改变,它是指分配给 broker 的分区总数。它包括
broker 的每一个分区副本,不管是首领还是跟随者。
首领数量
该度量指标表示 broker 拥有的首领分区数量。与 broker 的其他度量一样,该度量指标也应
该在整个集群的 broker 上保持均等。我们需要对该指标进行周期性地检查,并适时地发出
告警,即使在副本的数量和大小看起来都很完美的时候,它仍然能够显示出集群的不均衡
问题。因为 broker 有可能出于各种原因释放掉一个分区的首领身份,比如 Zookeeper 会话
过期,而在会话恢复之后,这个分区并不会自动拿回首领身份(除非启用了自动首领再均
衡功能)。在这些情况下,该度量指标会显示较少的首领分区数,或者直接显示为零。这
个时候需要运行一个默认的副本选举,重新均衡集群的首领。
离线分区
与非同步分区数量一样,离线分区数量也是一个关键的度量指标(表 10-10)。该度量只能
由集群控制器提供(对于其他 broker 来说,该指标的值为零),它显示了集群里没有首领
的分区数量。
Java虚拟机监控
除了 broker 的度量指标外,还应该对服务器提供的一些标准度量进行监控,包括 Java 虚拟
机(JVM)。如果 JVM 频繁发生垃圾回收,就会影响 broker 的性能,在这种情况下,就应
该得到告警。JVM 的度量指标还能告诉我们为什么 broker 下游的度量指标会发生变化。

使用Kafka Assistant监控Kafka关键指标的更多相关文章
- Kafka 消息监控 - Kafka Eagle
1.概述 在开发工作当中,消费 Kafka 集群中的消息时,数据的变动是我们所关心的,当业务并不复杂的前提下,我们可以使用 Kafka 提供的命令工具,配合 Zookeeper 客户端工具,可以很方便 ...
- Oracle监控的关键指标
1.监控事例的等待 select event, , , )) "Prev", , , )) "Curr", count(*) "Tot" f ...
- Prometheus+Grafana通过kafka_exporter监控kafka
Prometheus+Grafana通过kafka_exporter监控kafka 一.暴露 kafka-metric 方式 二.jmx_exporter方式 2.1 下载jmx_prometheus ...
- Prometheus监控Kafka
Prometheus监控Kafka 1.Prometheus监控Kafka,Docker方式 Kafka监控优秀博文: 简书:whaike:[监控]Kafka - 详细指标 CSDN:GeekXuSh ...
- kafka消息监控-KafkaOffsetMonitor
参照site:https://github.com/quantifind/KafkaOffsetMonitor 一.简述 这个应用程序用来实时监控Kafka服务的Consumer以及它们所在的Part ...
- KafkaOffsetMonitor监控kafka
KafkaOffsetMonitor监控kafka 1. KafkaOffsetMonitor是一个可以用于监控Kafka的Topic及Consumer消费状况的工具,其配置和使用特别的方便.源项目G ...
- 如何使用JMX监控Kafka
使用kafka做消息队列中间件时,为了实时监控其性能时,免不了要使用jmx调取kafka broker的内部数据,不管是自己重新做一个kafka集群的监控系统,还是使用一些开源的产品,比如yahoo的 ...
- 使用JMX监控Kafka
监控数据源 JMX RMI方式启动Broker,Consumer,Producer -ea -Dcom.sun.management.jmxremote.authenticate=false -Dco ...
- Kafka monitoring监控
一.Metrics kafka有两个metrics包,在看源码的时候很容易混淆 package kafka.metrics package org.apache.kafka.common.metric ...
- 使用kafka-eagle监控Kafka
# 监控kafka集群,开启监控趋势图使用 # 有一个问题,需要在kafka-server-start.sh文件中配置端口,有如下三种办法 # 第一种:复制并修改kafka目录,比如kafka-1,k ...
随机推荐
- Jmeter的Throughput有误差与分布式测试时的坑
我是两台压力机,分布式启动jmeter压测180秒,结果throughput显示3075,我用总请求数/总耗时,64万左右/180秒,得到的TPS是3500左右.误差17% 网上说jmeter的thr ...
- CornerNet-Lite:CornerNet粗暴优化,加速6倍还提点了 | BMVC 2020
论文对CornerNet进行了性能优化,提出了CornerNet-Saccade和CornerNet-Squeeze两个优化的CornerNet变种,优化的手段具有很高的针对性和局限性,不过依然有很多 ...
- SSL加密以及http和https的区别是什么
SSL加密是建立在非对称加密算法的基础上的.非对称加密算法会产生一对长字符串,称为密钥对(公钥.私钥).数据使用公钥进行加密后, 唯一只能使用私钥才能解开.安装了服务器证书的网站,其实是把私钥保存在服 ...
- 动图演示步骤 Vmware安装Centos-7 最小安装/图形化界面及常见错误参考,基础配置推荐
程序软件工具安装篇 --[Linux](Vmware/Centos-7) 目录 程序软件工具安装篇 --[Linux](Vmware/Centos-7) ①:文件准备工作 虚拟机工具安装文件 系统镜像 ...
- #KD-Tree#洛谷 3710 方方方的数据结构
题目 区间加,区间乘,单点查询,撤销修改 分析 由于可以离线,不妨把下标看成第一维,时间看成第二维,那么修改操作相当于在一个矩形上加或者乘, 不妨把查询的节点看作是二维平面上的点,这样实际上就可以用 ...
- OpenHarmony社区运营报告(2023年2月)
本月快讯 • 2023年2月25日,以"技术构筑万物智联"为主题的第一届开放原子开源基金会OpenAtom OpenHarmony(以下简称"OpenHarmony& ...
- [一本通1681]统计方案 题解(Meet in mid与逆元的结合)
题目描述 小\(B\)写了一个程序,随机生成了\(n\)个正整数,分别是\(a[1]-a[n]\),他取出了其中一些数,并把它们乘起来之后模\(p\),得到了余数\(c\).但是没过多久,小\(B\) ...
- 全面的开发者文档和用户目标解析:API 文档指南和开发者旅程
开发者文档 开发者文档,也称为 API 文档,是一种专门针对软件开发人员的技术写作形式.这种类型的文档通常包括 API 的技术规范.代码注释.软件设计和架构以及软件开发中涉及的其他详细技术描述.开发者 ...
- 驾考宝典携手HMS Core统一扫码服务,构建复杂场景中的流畅扫码体验
"驾考宝典"是一款颇具人气的互联网综合驾照考试学习应用,通过强大的驾考功能,在手机移动端为学车学员提供从报名.学习到拿本的全方位驾考服务.作为一个专业的驾培平台,"驾考宝 ...
- go语言结构体使用小结
转载请注明出处: 在Go语言中,结构体(struct)是一种复合数据类型,它允许你将多个不同类型的字段组合成一个单一的类型.结构体为数据的封装和抽象提供了便利,使得数据组织更加清晰和易于管理. 结构体 ...