mysqld_exporter 使用介绍

发布时间: 更新时间: 总字数:312 阅读时间:1m 作者:IP:上海 网址

Prometheus MySQL 服务器指标监控工具:mysqld_exporter

介绍

prom/mysqld-exporter 支持监控数据库的版本

  • MySQL >= 5.6
  • MariaDB >= 10.3

部署

  • 创建用户
text
CREATE USER 'exporter'@'localhost' IDENTIFIED BY 'XXXXXXXX' WITH MAX_USER_CONNECTIONS 3;
GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'exporter'@'localhost';
  • docker-compose 启动
text
# 配置 user_my.cnf
[client]
user = exporter
password = XXXXXXXX

# 启动
docker run -d \
  -p 9104:9104 \
  -v ./user_my.cnf:/.my.cnf \
  --network my-mysql-network  \
  prom/mysqld-exporter
  • 其他
    • grafana dashboard
    • prometheus 生成指标 rules 示例
    • prometheus alert rules
    • MySQL 主从监控指标,show slave stutus\G; 显示的指标
      • Slave_IO_Running: Yes I/O 线程是否被启动并成功地连接到主服务器上
      • Slave_SQL_Running: Yes SQL 线程是否被启动
      • Seconds_Behind_Master 从落后主的时间。要是灵敏的话,可以使用 pt-heartbeat
      • mysql_up 是取值 1/0 的 gauge(1 表示 mysqld_exporter 成功连接被监控的 MySQL 实例,0 表示失败),用于监控实例存活而非集群数量;Slave_IO_Running/Slave_SQL_Running(Yes/No)监控单个从库上 I/O 与 SQL 复制线程的运行状态,而非从节点数量

参考

  1. https://github.com/prometheus/mysqld_exporter