HBase十一集群监控

网友投稿 691 2022-05-28

Hbase使用hadoop的监控框架,基于MetricsContext的可用的实现:

GangliaContext:指标推送到Ganglia

FileContext:指标写入磁盘文件

TimeStampingFileContext:写入文件的同时,加入时间戳前缀

CompositeContext:可以多管道,如写入Ganglia和文件

NullContext:关闭监控

NullContextWithUpdateThread:不生成监控指标,但是启动聚合统计线程。用于JMX监控。

Hbase内部用MetricsBase容器类跟踪,其包含各种消息发生的钩子。

集成配置文件是hadoop-metrics.properties,针对Ganglia和JMX等有不同的配置。

Nagios集成可以通过JMX媒介。

Master实际并不干什么活,所以监控的指标远远小于region server:

cluster requests:集群请求数,汇总所有region server的数据。

split time:重启后拆分WAL的时间

split size:查分WAL的大小。

region服务器要监控的指标较多,大概分6类

块缓存策略类似oracle的数据块缓存的策略,后续读取使用逻辑读而不是物理读。底层是HFile从HDFS读取的块,内存不足时会被清除。

count:当前缓存的数据块数量

site:当前缓存占用java heap大小

free:当前缓存还可以用多少heap

evicted:内存满需要被清除的块数目

hit:缓存命中

miss:缓存失效

hit ratio:缓存命中率

合并监控类指标,要合并成功后才更新,是个持久更新的指标,并不复位。

compaction size:要合并的存储文件总大小,单位byte

compaction time:合并操作总时间

compaction queue size:监控一个region server有多少文件在排队等待合并

memstore size MB:server上所有memstore占用的总heap大小。

flush queue size:将要被flush到磁盘的region数目。

flush size:flush到磁盘的大小,持续统计值,单位byte

flush time:flush所占用的时间,持续统计值

store files:当前server所有存储文件的数目

stores:(没搞清楚和上一个指标有啥区别)

store file index size MB:所有文件中,块索引和元数据索引的总大小

fs read latency:文件系统读延时,单位ms

fs write latency:文件系统写延时,单位ms

fs sync latency:WAL同步到文件系统的延时,单位ms

read request count:读,如get的数量

write request count:写,如put的数量

requests:每秒请求数,定时轮询更新数据。

regions:当前server在线region数目。

主要监控client和server间的RPC交互,这个监控在master和region server上看到的是一样的,因为是共享一套监控系统。

区分master和region,会在region相关的API操作增加region后缀。

所有API基本都会监控,有两个和API无关的监控单独说一下:

HBase(十一)集群监控

RPC Processing Time:服务端执行RPC消耗的时间,会统计所有RPC调用时间,取平均值

RPC Queue Time:RPC排队时间,即操作到达和实际执行的时间差

监控内存类,如堆和非堆内存使用情况

GC类,主要是gc数,和gc时间,注意gc时间过长引起的zk租期超时的假死问题

线程类,如新建、运行、阻塞线程的情况

错误日志,监控error的日志。

这类监控更多用来核对配置和系统信息,如hbase 版本、编译时间等等。

转载请注明出处:华为云博客 https://portal.hwclouds.com/blogs

hbase

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:JavaWeb基础之Listener和Filter
下一篇:Linux自定义防误删脚本
相关文章