监控系列(八)部署dameng_exporter并对接prometheus

一、下载dameng_exporter采集器

官网地址:https://github.com/gaoyuan98/dameng_exporter

  • DM数据库适配prometheus监控的采集器,目前已支持DM8数据库同时提供grafana 8.5.X 以上版本的监控面板(其他的grafana版本需要自己绘制表盘)。
  • doc目录存放的是相关的配置文件(告警模板、配置模板、表盘)
  • collector存放的是各个指标的采集逻辑

image.png
image.png

docker镜像拉取

## linux amd64版本
## 拉取镜像
docker pull registry.cn-hangzhou.aliyuncs.com/dameng_exporter/dameng_exporter:v1.0.7_amd64
## 更换别名
docker tag registry.cn-hangzhou.aliyuncs.com/dameng_exporter/dameng_exporter:v1.0.7_amd64 dameng_exporter:v1.0.7_amd64
## 启动
docker run -d --name dameng_exporter_amd64 -p 9200:9200 dameng_exporter:v1.0.7_amd64 --dbHost="ip地址:端口(192.168.121.001:5236)" --dbUser="SYSDBA" --dbPwd="数据库密码(SYSDBA)"


## linux arm64版本
## 拉取镜像
docker pull registry.cn-hangzhou.aliyuncs.com/dameng_exporter/dameng_exporter:v1.0.7_arm64
## 更换别名
docker tag registry.cn-hangzhou.aliyuncs.com/dameng_exporter/dameng_exporter:v1.0.7_arm64 dameng_exporter:v1.0.7_arm64
## 启动
docker run -d --name dameng_exporter_arm64 -p 9200:9200 dameng_exporter:v1.0.7_arm64 --dbHost="ip地址:端口(192.168.121.001:5236)" --dbUser="SYSDBA" --dbPwd="数据库密码(SYSDBA)"

二、数据库节点主机-安装dm_exporter

1.新建监控用户

## 新建用户
create tablespace "PROMETHEUS.DBF" datafile 'PROMETHEUS.DBF' size 512 CACHE = NORMAL;
create user "PROMETHEUS" identified by "PROMETHEUS";
alter user "PROMETHEUS" default tablespace "PROMETHEUS.DBF" default index tablespace "PROMETHEUS.DBF";
## 条件允许的话 最好赋予DBA权限(避免后期因升级exporter版本而导致查询权限不足)
grant "PUBLIC","RESOURCE","SOI","SVI","VTI" to "PROMETHEUS";
## 最小化权限
GRANT SELECT ON V$SYSSTAT TO PROMETHEUS;
GRANT SELECT ON V$SESSIONS TO PROMETHEUS;
GRANT SELECT ON V$LICENSE TO PROMETHEUS;
GRANT SELECT ON V$DATABASE TO PROMETHEUS;
GRANT SELECT ON V$DM_INI TO PROMETHEUS;
GRANT SELECT ON V$RLOGFILE TO PROMETHEUS;
GRANT SELECT ON V$TABLESPACE TO PROMETHEUS;
GRANT SELECT ON V$DATAFILE TO PROMETHEUS;
GRANT SELECT ON DBA_DATA_FILES TO PROMETHEUS;
GRANT SELECT ON DBA_FREE_SPACE TO PROMETHEUS;
GRANT SELECT ON V$TRXWAIT TO PROMETHEUS;
GRANT SELECT ON V$CKPT TO PROMETHEUS;
GRANT SELECT ON V$RAPPLY_SYS TO PROMETHEUS;
GRANT SELECT ON V$PROCESS TO PROMETHEUS;
GRANT SELECT ON V$LOCK TO PROMETHEUS;
GRANT SELECT ON V$THREADS TO PROMETHEUS;

2.解压并修改配置文件

# 新建目录
[root@VM-24-17-centos ~]# mkdir dameng_exporter
# 上传压缩包
[root@VM-24-17-centos ~]# rz -E
rz waiting to receive.
# 解压压缩包
[root@VM-24-17-centos ~]# tar -zxvf dameng_exporter_v1.0.0_linux_amd64.tar.gz 
dameng_exporter_v1.0.0_linux_amd64
dameng_exporter.config
## 修改dameng_exporter.config配置文件的数据库账号及密码
## 注意:程序运行后会自动对数据库密码部分进行密文处理,不用担心密码泄露问题
[root@VM-24-17-centos ~]# vim dameng_exporter.config 
dbHost=127.0.0.1:5236?autoCommit=true
dbUser=SYSDBA
dbPwd=SYSDBA

3.启动程序

## 赋予执行权限
[root@VM-24-17-centos ~]# chmod 755 dameng_exporter_v1.0.0_linux_amd64
## 前台启动方式
[root@VM-24-17-centos ~]# ./dameng_exporter_v1.0.0_linux_amd64 

## 后台启动
### 1) 第一种方式:直接启动
## 直接启动exporter程序后缀不跟参数,此时会自动使用同级目录下dameng_exporter.config配置文件的数据库账号及密码
[root@VM-24-17-centos dm_prometheus]#  nohup ./dameng_exporter_v1.0.0_linux_amd64 > /dev/null 2>&1 &

### 2) 第二种方式:添加参数形式启动  ./dameng_exporter_arm64 --help可以查看参数
[root@VM-24-17-centos dm_prometheus]#  nohup ./dameng_exporter_arm64 --listenAddress=":9200" --dbHost="ip地址:端口(192.168.121.001:5236)" --dbUser="SYSDBA" --dbPwd="数据库密码(SYSDBA)"

# 通过浏览器访问http://被监控端IP:9200/metrics
[root@server ~]# lsof -i:9200

image.png
注:图上即为启动成功,如果没有问题,则使用nohup后台启动程序。浏览器可以访问:ip:9200/metrics看有没有问题。
image.png

三、修改prometheus配置文件关联数据

注:prometheus的对数据库的指标采集如果高于60s一次,请手动修改提供表盘中的计算值

## 1. 进入到prometheus目录
[root@localhost prometheus-2.51.0]# cd /opt/jiankong/prometheus-2.51.0
## 2. 编译prometheus.yml配置文件
[root@VM-24-17-centos prometheus-2.51.0]# vim prometheus.yml 

# 添加的是数据库监控的接口9200接口,如果是一套集群,则在targets标签后进行逗号拼接,如下图所示
# 注意 cluster_name标签名不能改,标签的值可以改,提供的模板用该标签做分类
# 每套集群的job_name和cluster_name的值需要保证全局唯一

# 单机示例
- job_name: "dm_db_single"
  static_configs:
   - targets: ["192.168.112.135:9200"]
     labels:
     cluster_name: '单机测试'
     
# 集群示例
- job_name: "dmdbms_bgoak_dw"
 static_configs:
   - targets: ["192.168.112.135:9200","192.168.112.136:9200"]
     labels:
       cluster_name: 'OA集群DW'     
## 3.修改完成以后进行配置文件校验,避免因为空格等问题导致出错
[root@localhost prometheus-2.40.5]# ./promtool check config prometheus.yml 
Checking prometheus.yml
 SUCCESS: prometheus.yml is valid prometheus config file syntax

注意 cluster_name标签不能改,需要提供的模板用该标签做分类
image.png

四、grafana配置监控主机的图表

grafana配置数据库的图表

导入表盘

导入事先准备好的仪表盘模板,提示grafana中仪表盘文件最终都是json文件,方便导入导出的。表盘在github项目的doc目录下
grafana_01.pngimage.png

效果展示

image.png
image.png
image.png

评论 28
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值