hbase 之 monitoring

本文深入探讨了HBase中的监控机制,包括HMaster和RegionServer的监控内容。重点介绍了MasterDumpServlet和RSDumpServlet的功能,如版本信息、任务监控、在线服务器、Regions-in-transition、Executor状态、线程信息、配置详情以及日志截取等。同时,提到了TaskMonitor如何管理MonitoredTask和MonitoredRPCHandler,并分析了HMaster启动时的监控流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先我们下看一下hbase中的监控包:



监控都有哪些呢? 监控什么呢?

Hmaster  dump



监控的入口StateDumpServlet ,通过浏览器进行打印查看主要通过Hmaster界面和RegionServer界面我们看一下抽象类StateDumper的实现类:


先从MasterDumpServlet详细说,当请求/dump的时候进入MasterDumpServlet  doGet处理并打印信息:

1、打印version信息

2、打印MonitoredTask信息

TaskMonitor顾名思义 就是任务监控,

下面就先拿Hmaster 启动来说:

Hmaster 启动的时候会执行

MonitoredTask startupStatus =
      TaskMonitor.get().createStatus("Master startup");

monitoredTask 就是被监控的任务,上面的流程就是 TaskMonitor 获得单例对象然后创建一个MonitoredTask。

TaskMonitor 主要管理两个主要任务,一个是MonitoredTask  (通过createStatus) 一个是MonitoredRPCHandler(通过createRPCStatus)

创建一个上述createStatus 主要创建了一个MonitoredTask 实例和一个动态代理类,但是动态代理类的Handle没做任何处理,然后将实例和放到弱引用中的动态代理组成taskpair,然后判断tasks 总数是不是超不过了1000,如果超过了1000就需要进行清理。


我们看一下monitoredTask ,看描述我们知道这个是一个被监控任务的声明周期,拿Hmaster启动来说,hmater启动过程就是一个被监控的任务即一个MonitoredTask(看上面的代码片段),那Hmater 启动的监控流程是怎么样的、下面我们看一下:

1、startupStatus.setDescription("Master startup"); // 任务描述

2、startupStatus.setStatus("Trying to register in ZK as active master");  //任务状态

3、startupStatus.setStatus("Successfully registered as active master."); //修改任务状态



至于总共有多少被监控任务可以通过打印出来的信息查看

以上只是启动的任务、会涉及到很多其它的任务,比如IPC等等涉及到包里面MonitoredRPCHandlerImpl类

3、打印在线的server信息。示例

Servers:
===========================================================
slaver007.xxx,60020,1396941155193: requestsPerSecond=0, numberOfOnlineRegions=4, usedHeapMB=114, maxHeapMB=966

4、打印Regions-in-transition。

5、打印Executors信息,参考前面文章http://blog.youkuaiyun.com/asdfasdfsadffds/article/details/21952003

6、打印线程信息、这个是调用hadoop的接口

7、打印Master配置

8、打印Recent regionserver aborts

9、打印 tailLogKb,这个涉及到monitoring 包下面的LogMonitoring类,tailKb 默认是100kb,也可以通过request 参数tailkb传递

我们再看一下RegionServer的RSDumpServlet、基本上和Hmaster 差不多只不过有一个打印队列信息的,主要是 compaction \ split queue  和 Flush queue






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值