一 安装启动 mysql_exporter
mysqld_exporter 是 Prometheus 官方提供的一个 exporter,我们首先 下载最新版本。
首先为 mysqld_exporter 创建一个单独的用户,并赋予它受限的权限(PROCESS、REPLICATION CLIENT、SELECT),限制它的最大连接数(MAX_USER_CONNECTIONS)。
1 | CREATE USER 'mysql_exporter'@'localhost' IDENTIFIED BY '*******' WITH MAX_USER_CONNECTIONS 3; |
mysqld_exporter 需要连接到 mysqld 才能收集它的指标,可以通过两种方式来设置 mysqld 数据源。第一种是通过环境变量 DATA_SOURCE_NAME
,这被称为 **DSN(数据源名称)**,它必须符合 DSN 的格式,一个典型的 DSN 格式像这样:user:password@(host:port)/
。
1 | $ export DATA_SOURCE_NAME='root:123456@(192.168.0.107:3306)/'``$ ./mysqld_exporter |
另一种方式是通过配置文件,默认的配置文件是 ~/.my.cnf
,或者通过 --config.my-cnf
参数指定:
1 | $ ./mysqld_exporter --config.my-cnf=".my.cnf" |
这里选择使用配置文件,内容如下:
1 | [client] |
执行如下命令指定配置文件启动,并指定端口
1 | ./mysqld_exporter --config.my-cnf=".my.cnf" --web.listen-address=:9093 |
默认端口9104,访问地址:9093/metrics
可以看到已有mysql指标
二 注册监控指标
将mysql_exporter配置到Prometheus中
1 | scrape_configs: |
可以看到Prometheus中已有msql监控数据
三 创建Grafana监控面板
参考Prometheus学习笔记(三):结合Prometheus和Grafana面板的可视化DEMO | 大头的博客