HBase监控

2020-08-11 15:31:03 浏览数 (1)

HBase Web-UI

HBase自带的Web UI上Region单位的 Read Request Count/Write Request Count,不过这只是个累计值。

Region Load Data in Recent One Minute

代码语言:javascript复制
https://hb-xxxx-nginx-master1-001.hbase.rds.aliyuncs.com/master-1/topregion.jsp

顾名思意:Region Load Data in Recent One Minute,查看最近一分钟的Region上分布的表的每秒读/写次数。

Region Load Data in Recent One Minute.png

小时-日-周-月-年 维度监控表的读写情况(aggregate graphs)

代码语言:javascript复制
https://hb-xxx-nginx-master1-001.hbase.rds.yyyy.com/gl/ganglia/aggregate_graphs.php

来自"咖喱鸭".png

代码语言:javascript复制
regionserver.Tables.namespacne_{Namespace}_table_{tablename}_metric_readRequestCount
regionserver.Tables.namespace_{Namespace}_table_{tablename}_metric_writeRequestCount

小时-日-周-月-年 维度.png

MyGrid Grid-->hbase_cluster

以node为单位,时间维度观测metrics指标信息

代码语言:javascript复制
https://hb-xxxxxx-nginx-master1-001.hbase.rds.aliyuncs.com/gl/ganglia/?r=month&cs=&ce=&c=hbase_cluster&h=&tab=m&vn=&hide-hf=false&m=regionserver.Tables.Namespace_namespace_table_tablename_metric_totalRequestCount&sh=1&z=small&hc=4&host_regex=&max_graphs=0&s=by name

image.png

image.png

Put/Get RT

image.png

image.png

image.png

从监控上看,hbase get key的时间非常短,999在1~2ms之间,不过有很多客户端代码逻辑中耗时较多的操作,如多次遍历获取一条记录的多个column,创建HBase Connection,scan多个rowkey。

HBase监控哪些

存储

image.png

读请求

image.png

写请求

image.png

集群负载

image.png

CPU与系统负载

  • 每分钟平均负载
  • 最近5分钟平均负载
  • CPU利用率user(%)
  • CPU空闲率(%)
  • CPU利用率system(%)
  • CPU利用率IOWait(%)

系统内存

  • 空闲内存比例(0-1)
  • 空闲内存总量(KB)
  • 内存总量(KB)

网络流量

  • 每秒网络流入量(bytes/s)
  • 每秒网络流出量(bytes/s)

其他豆知识

HBase写入是先写WAL,然后写内存,如果宕机了,内存里的数据会丢失,需要回放log恢复数据之后,region才能上线,这个是需要时间的一般是3到5分钟。 而升级是不要这个过程的,region会先移走这个时间是百ms级别的。

hbase zk针对某个ip机器上连接有个上限:200,整体上HBase的连接数没有上限,据官方说是几十万级别的。 范围读说是的是 scan[startkey, endkey],顺序的扫描数据

0 人点赞