【Prometheus+Grafana系列】监控MySQL服务 - immaxfang
source link: https://www.cnblogs.com/immaxfang/p/16631839.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
前面的一篇文章已经介绍了 docker-compose 搭建 Prometheus + Grafana 服务。当时实现了监控服务器指标数据,是通过 node_exporter。Prometheus 还可用来监控很多服务,比如常见的 MySQL。本文就介绍如何通过 mysqld_exporter 来监控 MySQL 指标。
下载安装包
cd /optwget https://github.com/prometheus/mysqld_exporter/releases/download/v0.14.0/mysqld_exporter-0.14.0.linux-amd64.tar.gztar xvf mysqld_exporter-0.14.0.linux-amd64.tar.gzmv mysqld_exporter-0.14.0.linux-amd64 mysqld_exportermv /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=prometheuspassword=prometheusport=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_exporterAfter=network.target[Service]ExecStart=/usr/local/mysqld_exporter/mysqld_exporter --config.my-cnf=/usr/local/mysqld_exporter/.my.cnfRestart=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-prometheusdocker-compose stop prometheusdocker-compose up -d --build prometheus
查看 prometheus 中服务添加情况
查看 targets 是否添加成功
查看 mysql 监控信息
mysql_global_status_aborted_clients
在 grafana 中添加 data sources
添加 prometheus 服务地址,此处由于服务是基于 docker-compose 构建的,没有填写ip,直接填写服务名即可。
在 grafana 中导入 mysql 监控
输入官方模版 id,7362,点击 load。然后按照下图选择确认即可。
上一步导入成功后,会自动跳转到监控面板页面,如下图。默认的格式已经非常丰富可以直接使用了,也可以根据自己需求调整位置和配置。
Recommend
-
53
prometheus/node_exporter/mysqld_exporter都是由go语言编写,需要先安装GoLang环境 下载 node_exporter (监控服务器的CPU、内存、存储使用情况)和
-
28
在上一篇文章中,对使用 Prometheus 监控Flink进行了阐述(传送门),这里就不再赘述了。 尽管 Prometheus 自我标榜是监控解决方案, From metrics to insight Power your metrics and alerting with a leading open-...
-
30
环境 centOS 7.0 Prometheus2.14.0 Grafana6.5.2 下载安装Prometheus wget https://github.com/prometheus/prometheus/releases/download/v2.14.0/prometheus-2.14.0.linux-386.tar.g...
-
19
最近在研究如何给应用添加合适的 Metrics,用来分析应用的使用情况以及调试,整体思路是使用 Prometheus 收集数据,Grafana 进行数据的展示。过程中发现了 node-exporter 项目,觉得可以直接拿来监控自己平时使用的 Linux 机器,就有了这...
-
52
监控报警是服务稳定的基础,是性能优化的重要依据,是可以未雨绸缪的重大利器。现代系统赋予了监控报警重要地位,近年来随着微服务设计理念不断成熟与广泛使用,做为系统方案的设计者,监控的选择和使用将是搭建系统不可或缺的一个环节。 Prometheus...
-
4
如果你刚接触“Service Mesh“和“Envoy”,我这里有一篇文章可以帮你入门。 这是Envoy service mesh下的可观测性
-
3
如何使用 Prometheus 和 Grafana 监控预警服务集群? 监控和预警平台是互联网公司较为重要的后...
-
6
MySQL备份迁移之mydumper mydumper 是一款开源的 MySQL 逻辑备份工具,主要由 C 语言编...
-
1
Prometheus+Grafana监控-基于docker-compose搭建
-
5
微服务系列之服务监控 Prometheus与Grafana 1.为什么需要监控服务...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK