1、下载jmx_exporter的jar包
下载链接:
-
本次使用的版本是:0.15.0
https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/
2、创建 hbase_jmx.yaml
监控配置文件
-
HMaster和HRegionServer节点都需要配置
[root@duanjl-hadoop ~]# cat /root/duanjl/hbase_jmx.yaml --- lowercaseOutputName: true lowercaseOutputLabelNames: true rules: - pattern: Hadoop<service=HBase, name=RegionServer, sub=Regions><>Namespace_([^\W_]+)_table_([^\W_]+)_region_([^\W_]+)_metric_(\w+) name: HBase_metric_$4 labels: namespace: "$1" table: "$2" region: "$3" - pattern: Hadoop<service=(\w+), name=(\w+), sub=(\w+)><>([\w._]+) name: hadoop_$1_$4 labels: "name": "$2" "sub": "$3" - pattern: .+
3、修改 hbase-env.sh
3.1、HMaster节点配置如下:
-
原本有如下配置,但是都是注释着的。
-
打开
HBASE_JMX_BASE
注释,打开HBASE_MASTER_OPTS
和HBASE_REGIONSERVER_OPTS
配置,并添加javaagent
相关配置 -
注意所有端口都不要一样
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 -javaagent:/root/jmx_prometheus_javaagent-0.15.0.jar=19700:/root/duanjl/hbase_jmx.yaml" export HBASE_REGIONSERVER_OPTS="$HBASE_REGIONSERVER_OPTS $HBASE_JMX_BASE -Dcom.sun.management.jmxremote.port=10102 -javaagent:/root/jmx_prometheus_javaagent-0.15.0.jar=19701:/root/duanjl/hbase_jmx.yaml"
3.2、HRegionServer节点配置如下:
-
直接添加如下配置
-
注意端口不要一样,每个HRegionServer节点的jmx端口都不能一样
export HBASE_OPTS="$HBASE_OPTS -javaagent:/root/jmx_prometheus_javaagent-0.17.0.jar=19702:/root/duanjl/hbase_jmx.yaml"
4、重启HBase
-
关闭命令
stop-hbase.sh
-
启动命令
start-hbase.sh
5、访问验证
hadoop_hbase:http://100.86.40.218:19700/