prometheus监控单点mysql

prometheus监控单点mysql

  • 环境列表
  • 数据库内准备工作
  • expoter准备
  • 配置文件准备
  • service文件准备
  • prometheus-job配置
  • granafa-dashboard数据展示

记录一下打开prometheus-mysql监控的方式。这里监控的是单个MySQL服务,并非mysql集群
我这里使用的是service形式,不是使用的docker形式,因为感觉多一层docker,怕出现问题时有误判的风险。

环境列表

  1. mysql版本:10.5.11-MariaDB
  2. mysql数据库端口:3306
  3. prometheus版本:2.37.0
  4. granafa版本:9.0.4
  5. mysql-dashboard-ID:7362

数据库内准备工作

数据库内增加expoter使用的用户并赋权

  • 新建用户:mysqlexpoter
  • 密码:prometheus
  • 权限:*.* TO ‘mysqlexpoter’@‘%’
CREATE USER 'mysqlexpoter'@'%' IDENTIFIED BY 'prometheus' WITH MAX_USER_CONNECTIONS 3;
GRANT ALL PRIVILEGES ON *.* TO 'mysqlexpoter'@'%' IDENTIFIED BY 'prometheus';
flush privileges;

expoter准备

直接从git上下载即可

wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.14.0/mysqld_exporter-0.14.0.linux-amd64.tar.gz
tar -xvf mysqld_exporter-0.14.0.linux-amd64.tar.gz
cp mysqld_exporter-0.14.0.linux-amd64/mysqld_exporter /usr/local/bin/ 

配置文件准备

/usr/local/bin/mysqldexpoter.my.cnf

cat << EOF > /usr/local/bin/mysqldexpoter.my.cnf
[client]
user=mysqlexpoter
password=prometheus
host=192.168.xx.xx
port=3306
EOF

service文件准备

这里使用service形式可以提高使用的便捷性,和已有其他服务一致
使用的可执行文件路径为:/usr/local/bin/mysqld_exporter
配置文件路径为:/usr/local/bin/mysqldexpoter.my.cnf
端口为:9104

cat << EOF > /usr/lib/systemd/system/mysqld_exporter.service
[Unit]
Description=mysqld_exporter
Documentation=https://prometheus.io
Wants=network-online.target
After=network.target


[Service]
Type=simple
User=root
ExecStart=/usr/local/bin/mysqld_exporter --config.my-cnf /usr/local/bin/mysqldexpoter.my.cnf --web.listen-address=0.0.0.0:9104 \
--collect.slave_status \
--collect.binlog_size \
--collect.info_schema.processlist \
--collect.info_schema.innodb_metrics \
--collect.engine_innodb_status \
--collect.perf_schema.file_events
Restart=on-failure

[Install]
WantedBy=multi-user.target
EOF

服务启动

systemctl daemon-reload
systemctl start mysqld_exporter
systemctl enable mysqld_exporter
systemctl status mysqld_exporter

prometheus-job配置

  - job_name: 'mysql_web'
    static_configs:
    - targets: ['192.168.xx.xx:9104']
      labels:
        group: mysql_web

granafa-dashboard数据展示

prometheus监控单点mysql_第1张图片

你可能感兴趣的:(prometheus,mysql,prometheus)