登录
首页 >  数据库 >  MySQL

【Prometheus+Grafana系列】监控MySQL服务

来源:SegmentFault

时间:2023-01-28 08:13:22 244浏览 收藏

对于一个数据库开发者来说,牢固扎实的基础是十分重要的,golang学习网就来带大家一点点的掌握基础知识点。今天本篇文章带大家了解《【Prometheus+Grafana系列】监控MySQL服务》,主要介绍了MySQL、docker、prometheus、grafana,希望对大家的知识积累有所帮助,快点收藏起来吧,否则需要时就找不到了!

更多技术文章,请关注我的个人博客 www.immaxfang.com 和小公众号
cd /opt
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
mv mysqld_exporter-0.14.0.linux-amd64 mysqld_exporter
mv /opt/mysqld_exporter /usr/local/

创建监控账号并授权

在需要监控的mysql上创建账号并授权。

# 创建用户
CREATE USER 'prometheus'@'%' IDENTIFIED BY 'prometheus';
# 分配权限
GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'prometheus'@'%';

添加数据库监控账号配置

vim /usr/local/mysqld_exporter/.my.cnf
添加如下内容

[client]
user=prometheus
password=prometheus
port=3306

启动exporter客户端

/usr/local/mysqld_exporter/mysqld_exporter --config.my-cnf=/usr/local/mysqld_exporter/.my.cnf

先手动启动exporter看一下日志,若有错误根据输出调整即可。手动运行没问题后,则进行下一步将其添加到系统服务中。

添加到系统服务

vim /etc/systemd/system/mysqld_exporter.service
添加如下内容

[Unit]
Description=mysqld_exporter
After=network.target
[Service]
ExecStart=/usr/local/mysqld_exporter/mysqld_exporter --config.my-cnf=/usr/local/mysqld_exporter/.my.cnf
Restart=on-failure
[Install]
WantedBy=multi-user.target

加载并重启服务

# 加载配置
systemctl daemon-reload
# 启动服务
systemctl restart mysqld_exporter.service
# 查看服务状态
systemctl status mysqld_exporter.service
# 配置开机启动
systemctl enable mysqld_exporter.service

查看收集数据

访问exporter服务地址,查看数据收集情况。

curl http://192.168.2.192:9104/metrics

修改 prometheus 配置文件,添加新节点

修改 prometheus 下的配置,prometheus.yml,添加如下内容。

scrape_configs:  
  # 添加job
  - job_name: 'mysql-192'
    static_configs:
     # 配置监控端,即上面我们启动的 mysqld_exporter 服务
     - targets: ['192.168.2.192:9104']
       labels:
          instance: mysql

重启 prometheus 服务

上一步修改了 prometheus.yml,需要重启下 prometheus 服务。

cd /var/workspace/docker-prometheus
docker-compose stop prometheus
docker-compose up -d --build prometheus

查看 prometheus 中服务添加情况

查看 targets 是否添加成功

image.png

查看 mysql 监控信息

mysql_global_status_aborted_clients

image.png

在 grafana 中添加 data sources

image.png

image.png

image.png

添加 prometheus 服务地址,此处由于服务是基于 docker-compose 构建的,没有填写ip,直接填写服务名即可。

在 grafana 中导入 mysql 监控

image.png

输入官方模版 id,7362,点击 load。然后按照下图选择确认即可。
image.png

监控展示

上一步导入成功后,会自动跳转到监控面板页面,如下图。默认的格式已经非常丰富可以直接使用了,也可以根据自己需求调整位置和配置。

image.png

到这里,我们也就讲完了《【Prometheus+Grafana系列】监控MySQL服务》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于mysql的知识点!

声明:本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>
评论列表