Docker部署mysql_exporter集成到Prometheus+Grafana图表监控

监控项介绍

  • mysql_exporter主要监控MySQL数据库的:
    • 稳定性
    • 吞吐量
    • 连接情况
    • 缓冲池使用情况
    • 查询性能
    • 等各项其他指标,是我们压测时常常需要监控的一些指标

环境介绍

  • 有三台数据库,此处为:
    • 测试环境:MySQL5.7
    • 预生产环境:MySQL5.7
    • 生产环境:PolarDB-MySQL5.7

创建并授权监控用户

创建exporter用户并授权,以供监控使用(三个数据库都执行此命令)

CREATE USER 'exporter'@'%' IDENTIFIED BY 'exporter';
GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'exporter'@'%';
flush provileges;
select user,host from mysql.user;

部署mysql_exporter

此处采用Docker方式部署,因为是三个环境,故分别在三台ECS上部署

vim scripts/mysql_start_exporter.sh

#!/bin/bash
docker run -d \
--name mysql_exporter \
--restart always \
-p 9104:9104 \
-e DATA_SOURCE_NAME="exporter:exporter@(test.ehoo100.com:3306)/" \
prom/mysqld-exporter

配置Prometheus

将监控组件写入到配置文件,若是云ECS建议写内网IP,获取数据速度快

vim Prometheus/prometheus.yml

配置完成重启:docker restart prometheus

scrape_configs:
  # 添加mysql监控(测试环境)
  - job_name: 'mysql-test'
    static_configs:
      - targets: ['10.23.13.172:9104'] # 156

  # 添加mysql监控(预生产环境)
  - job_name: 'mysql-pre'
    static_configs:
      - targets: ['10.21.11.28:9104'] # 119

  # 添加mysql监控(生产环境)
  - job_name: 'mysql-pro'
    static_configs:
      - targets: ['10.22.13.37:9104'] # 20

配置Grafana

导入仪表盘

进入Grafana导入相关图标:7362

导入时修改名字为MySQL(测试环境),等配置完后再复制两个改名为生产、预生产即可

image-20220707163425695

image-20220707161055443

image-20220707161312256

image-20220707163550653

查看监控效果

image-20220707161535021image-20220707161535021

image-20220707161618056

image-20220707161633264

image-20220707161648294

image-20220707161707529

image-20220707161723472

配置页面参数

image-20220707162240757

复制仪表盘

三个IP,即三个数据库监控节点,当前页面保存为测试环境,选择对应并保存一下

image-20220707162405170

image-20220707162521419

image-20220707162650654

image-20220707162713620

配置对应IP

将复制的仪表盘:生产、预生产逐个更改为对应IP后保存即可(勾选“将当前变量值保存为仪表板默认值”),再次刷新页面就不用更改IP了哦!

image-20220707163205165

image-20220707161443214

posted @ 2022-08-03 18:19  秋风お亦冷  阅读(969)  评论(0编辑  收藏  举报