Granafa + Prometheus监控MySQL

0.安装mysql_exporter

1、下载到被监控端解压压缩包

tar zxvf mysqld_exporter-0.11.0.linux-amd64.tar.gz

2、改名并移动到指定目录

1
2
mv mysqld_exporter-0.11.0.linux-amd64 /usr/local/mysql_exporter
cd /usr/local/mysql_exporter

3、登录mysql为exporter创建账号并授权

创建数据库用户。

1
mysql> CREATE USER 'exporter'@'localhost' IDENTIFIED BY 'XXXXXXXX';

可查看主从运行情况查看线程,及所有数据库。

1
mysql> GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'exporter'@'localhost';

4、创建mysql配置文件、运行时可免密码连接数据库:vim /usr/local/mysql_exporter/.my.cnf

1
2
3
[client]
user=exporter
password=xxxxx

5、启动exporter客户端

1
./mysqld_exporter --config.my-cnf=.my.cnf

常用参数:

1
2
3
4
5
6
# 选择采集innodb
--collect.info_schema.innodb_cmp
# innodb存储引擎状态
--collect.engine_innodb_status
# 指定配置文件
--config.my-cnf=".my.cnf"

6、添加系统服务

vi /usr/lib/systemd/system/mysql_exporter.service

1
2
3
4
5
6
7
8
9
[Unit]
Description=https://prometheus.io

[Service]
Restart=on-failure
ExecStart=/usr/local/mysql_exporter/mysqld_exporter --config.my-cnf=.my.cnf

[Install]
WantedBy=multi-user.target

7、启动添加后的系统服务

1
2
systemctl daemon-reload
systemctl restart mysql_exporter.service

8、网站查看捕获mysql数据

访问:http://172.16.129.98:9104/metrics

9、使用prometheus监控修改监控端配置文件:vim prometheus.yml

1
2
3
4
5
6
7
scrape_configs:
# 添加作业并命名
- job_name: 'mysql'
# 静态添加node
static_configs:
# 指定监控端
- targets: ['47.98.138.176:9104']

10、检查并重启服务

1
2
./promtool check config prometheus.yml 
kill -hup 5997

11、查看监控端是否接入

访问 promethues

1
http://172.16.129.98:9090/targets

这时候能看到mMySQL已经接入成功

12、使用promSQL查看mysql监控信息

1
2
3
4
5
6
在promethues控制台查看指定参数 :

测试查看mysqlglobal状态信息
mysql_global_status_aborted_clients

http://172.16.129.98:9090/graph

13、Granfana 导入Mysql 监控图表

推荐图标ID:https://grafana.com/dashboards/7362

推荐教程

https://www.cnblogs.com/xiangsikai/p/11289675.html