本次使用prometheus监控CDP7.4.4集群HBase
使用jmx 包为jmx_prometheus_javaagent-0.16.0.jar
prometheus安装这里不赘述,只介绍如何与CDP集群对接
1、下载prometheus
官网链接为: http://prometheus.io
此处使用
prometheus-2.34.0.linux-amd64.tar.gz
2、下载jmx_export
下载链接为:https://github.com/prometheus/jmx_exporter
此处下载的是
jmx_prometheus_javaagent-0.16.0.jar
3、下载grafana 的dashboard模板
官网链接为: https://grafana.com/grafana/
环境对应hbase2.x,故下载2.x对应dashboard
4、prometheus中的配置
在prometheus.yml中添加配置
- job_name: "hbase-master"
static_configs:
- targets: ["10.1.1.1:9213","10.1.1.2:9213"]
- job_name: "hbase-RS"
static_configs:
- targets: ["10.1.1.1:9214","10.1.1.2:9214","10.1.1.3:9214"]
5、HBASE添加配置
1)添加配置—注意,此配置所有节点都要添加
cd /var/
mkdir conf
cd /var/conf
cp -rp /usr/java/jdk1.8.0_251/jre/lib/management/jmxremote.password.template .
cp -rp /usr/java/jdk1.8.0_251/jre/lib/management/jmxremote.access .
mv jmxremote.password.template jmxremote.password
chown hbase:hbase *
vim jmxremote.password
62 monitorRole QED
63 controlRole R&D
chmod 0400 jmxremote.password ##
cd /run/cloudera-scm-agent/ jar包放在这里
jmx_prometheus_javaagent-0.16.0.jar
yml文件也在这目录下,权限都是644,yml文件内容见下面
hbase.yml
---
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: .+
2)页面配置
master添加配置---英文界面搜Java Configuration Options for HBase Master
-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.password.file=/var/conf/jmxremote.password -Dcom.sun.management.jmxremote.access.file=/var/conf/jmxremote.access -Dcom.sun.management.jmxremote.port=10105 -javaagent:/run/cloudera-scm-agent/jmx_prometheus_javaagent-0.16.0.jar=9213:/run/cloudera-scm-agent/hbase.yaml
RS添加配置---英文搜索Java Configuration Options for HBase RegionServer
-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.password.file=/var/conf/jmxremote.password -Dcom.sun.management.jmxremote.access.file=/var/conf/jmxremote.access -Dcom.sun.management.jmxremote.port=10102 -javaagent:/run/cloudera-scm-agent/jmx_prometheus_javaagent-0.16.0.jar=9214:/run/cloudera-scm-agent/hbase.yaml