博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jmxtrans+influxdb+granafa监控hbase
阅读量:4217 次
发布时间:2019-05-26

本文共 3457 字,大约阅读时间需要 11 分钟。

目前监控hadoop集群的主要工具有ganglia,nagios,zabbix等。其中ganglia最方便,hadoop中有自带jmx接口,启用了就行,但使用默认的监控方式,监控服务器磁盘会吃不消,并产生大量数据,故需要进行过滤(支持正则表达式),能过滤大量无用信息,但效果没有想象的好,个人觉得主要原因在于ganglia默认界面太丑,重复图片过多,一个监控项有四个图,占位置,且默认使用rrd数据库,数据完整性无法保证。 

使用jmxtrans+influxdb+granafa主要原因在于自由度高,按监控所需自由搭配,数据完整性得到保证,界面漂亮。
 

使用前应做的:

安装jdk,hbase集群。 

influxdb,granafa(可参考:)

开启jmx监控选项

编辑hbase-env.sh,修改如下

# export HBASE_JMX_BASE="-Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"# export HBASE_MASTER_OPTS="$HBASE_MASTER_OPTS $HBASE_JMX_BASE -Dcom.sun.management.jmxremote.port=10101"# export HBASE_REGIONSERVER_OPTS="$HBASE_REGIONSERVER_OPTS $HBASE_JMX_BASE -Dcom.sun.management.jmxremote.port=10102"# export HBASE_THRIFT_OPTS="$HBASE_THRIFT_OPTS $HBASE_JMX_BASE -Dcom.sun.management.jmxremote.port=10103"# export HBASE_ZOOKEEPER_OPTS="$HBASE_ZOOKEEPER_OPTS $HBASE_JMX_BASE -Dcom.sun.management.jmxremote.port=10104"# export HBASE_REST_OPTS="$HBASE_REST_OPTS $HBASE_JMX_BASE -Dcom.sun.management.jmxremote.port=10105"

变成

export HBASE_JMX_BASE="-Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false" export HBASE_MASTER_OPTS="$HBASE_MASTER_OPTS $HBASE_JMX_BASE -Dcom.sun.management.jmxremote.port=10101" export HBASE_REGIONSERVER_OPTS="$HBASE_REGIONSERVER_OPTS $HBASE_JMX_BASE -Dcom.sun.management.jmxremote.port=10102" export HBASE_THRIFT_OPTS="$HBASE_THRIFT_OPTS $HBASE_JMX_BASE -Dcom.sun.management.jmxremote.port=10103" export HBASE_ZOOKEEPER_OPTS="$HBASE_ZOOKEEPER_OPTS $HBASE_JMX_BASE -Dcom.sun.management.jmxremote.port=10104" export HBASE_REST_OPTS="$HBASE_REST_OPTS $HBASE_JMX_BASE -Dcom.sun.management.jmxremote.port=10105"

重启hbase,若想使用jmxtrans,建议先用jdk自带工具(jconsloe)进行访问:

这里写图片描述 

输入ip:port进入; 

图2 
如上所示,查看MBean信息,用蓝笔圈出为obj信息和用红笔圈出为属性信息,在jmxtrans中主要使用到这两样信息。

安装jmxtrans并配置

在此使用rpm包安装,下载地址:http://central.maven.org/maven2/org/jmxtrans/jmxtrans/ 

建议:influxdb安装版本若是1.0及之后版本可下载最新的几个rpm包,若是1.0之前版本请下载259或之前版本(不要下247之类的,貌似不支持influxdb),不然会报错,错误提示为:java.lang.RuntimeException: Method Not Allowed 
原因在于: 

 

è¿éåå¾çæè¿°

è¿éåå¾çæè¿°

上图是influxdb的java api的一些信息。 

下图为jmxtrans,最新版本更新了代码,使得不支持influxdb1.0之前的版本。

安装jmxtrans:

# rpm -ivh jmxtrans-259.rpm

配置jmxtrans监控文件

jmxtrans监控文件默认路径为/var/lib/jmxtrans 

,可以使用json形式书写,如下是一个监控hbase部分信息的示例:

{  "servers" : [ {     "port" : "jmx-port",    "host" : "jmx-host",    "queries" : [ {     "obj" : "Hadoop:service=HBase,name=JvmMetrics",    "attr" : [ "GcCount" ],    "resultAlias":"GcCount",    "outputWriters" : [ {         "@class" : "com.googlecode.jmxtrans.model.output.InfluxDbWriterFactory",        "url" : "http://192.168.1.123:8086/",        "username" : "账户",        "password" : "密码",        "database" : "hbaseJmx"      } ]     },      {       "obj" : "Hadoop:service=HBase,name=RegionServer,sub=Regions",    "attr" : [ "numRegions" ],    "resultAlias":"numRegions",    "outputWriters" : [ {         "@class" : "com.googlecode.jmxtrans.model.output.InfluxDbWriterFactory",        "url" : "http://192.168.1.123:8086/",        "username" : "账户",        "password" : "密码",        "database" : "hbaseJmx"      } ]     } ]   } ] }

如上,监控了两个选项,分别是GcCount和numRegions。 

jmx-host和jmx-port为需被监控的主机名和port。 
obj的值就是图二中右侧的蓝笔obj信息。 
attr的值就是图二中左侧的红笔属性信息。 
resultAlias的值是别名,自定义。 
outputWriters” : [ { 
“@class” : “com.googlecode.jmxtrans.model.output.InfluxDbWriterFactory”代表使用influxdb作为数据输入数据库。 
username和password为influxdb的账户和密码,默认分别为“root”,“root”。 
至此启动jmxtrans;

# /usr/share/jmxtrans/bin/jmxtrans start

等待片刻,在influxdb中应当会产生部分数据,即可在granafa图形化展示。 

界面示例: 
è¿éåå¾çæè¿°

 

转:

你可能感兴趣的文章
SSH的认证终结(无需密码的git操作或者ssh链接无需密码)
查看>>
Jetty 的工作原理以及与 Tomcat 的比较
查看>>
ssh-keygen的使用方法 注意权限问题
查看>>
zookeeper的server的集群配置实例[张振华-Jack]
查看>>
【屌丝程序的口才逆袭演讲稿50篇】第一篇:互联网时代U盘化生存方式 【张振华.Jack】
查看>>
CentOS6.4配置Hadoop-2.6.0集群配置安装指南(经过实战演练)【张振华.Jack】
查看>>
【屌丝程序的口才逆袭演讲稿50篇】第二篇:专注的力量 [张振华.Jack]
查看>>
【屌丝程序的口才逆袭演讲稿50篇】第三篇:我的舍与得的2014[张振华.Jack]
查看>>
【屌丝程序的口才逆袭演讲稿50篇】第五篇:不要给自己找任何借口【张振华.Jack】
查看>>
【屌丝程序的口才逆袭演讲稿50篇】第七篇:请留意我们身边的风景 【张振华.Jack】
查看>>
【屌丝程序的口才逆袭演讲稿50篇】第八篇:坚持的力量 【张振华.Jack】
查看>>
【屌丝程序的口才逆袭演讲稿50篇】第九篇:春节那些事-过年回家不需要理由【张振华.Jack】
查看>>
【屌丝程序的口才逆袭演讲稿50篇】第十一篇:马云乌镇40分钟演讲实录【张振华.Jack】
查看>>
Java并发编程从入门到精通 张振华.Jack --我的书
查看>>
【屌丝程序的口才逆袭演讲稿50篇】第十二篇:世界上最快的捷径【张振华.Jack】
查看>>
Android中Java代码和XML布局效率问题
查看>>
android TextView属性大全(转)
查看>>
Conclusion for Resource Management
查看>>
Conclusion for Constructors,Destructors,and Assignment Operators
查看>>
《浪潮之巅》1 AT&T
查看>>