监控远程机器上的Mysql数据库

一、在远程机器上部署Mysql数据库

这里部署禅道系统,利用禅道系统中的mysql数据库。
安装包下载地址:https://dl.cnezsoft.com/zentao/12.5.3/ZenTaoPMS.12.5.3.zbox_old.64.tar.gz
具体部署方法:https://www.zentao.net/book/zentaopmshelp/40.html
参照1.4小结 (推荐)linux用一键安装包

二、创建mysql账号

step1:启动禅道

[root@zentao node_exporter]# /opt/zbox/zbox start

step2:命令行连接数据库

[root@zentao node_exporter]# /opt/zbox/bin/mysql -u root -P 3306 -p
# 默认密码:123456

step3:创建账号

MariaDB [(none)]> grant select,replication client,process ON *.* to 'mysql_monitor'@'localhost' identified by '123456';

step4:刷新权限

MariaDB [(none)]> flush privileges;

step5:退出数据库命令行

MariaDB [(none)]> quit

三、安装mysqld_exporter组件

下载地址:https://prometheus.io/download/

step1: 上传安装包到服务器,并且进行解压

[root@zentao ~]# tar -zvxf mysqld_exporter-0.12.1.linux-amd64.tar.gz -C /usr/local/

step2: 进入解压后的目录

[root@zentao ~]# cd /usr/local/

step3: 对解压文件进行重命名操作

[root@zentao local]# mv mysqld_exporter-0.12.1.linux-amd64 mysqld_exporter

step4: 进入mysqld_exporter目录下配置mysql用户信息

[root@zentao local]# cd mysqld_exporter/
[root@zentao mysqld_exporter]# vi ./.my.cnf

[client]
user=mysql_monitor
password=123456
step5: 在后台启动服务

[root@zentao mysqld_exporter]# nohup ./mysqld_exporter --config.my-cnf=./.my.cnf &

step6: 查看端口已占用,说明服务以启动

[root@zentao mysqld_exporter]# ss -naltp | grep 9104

step7: 停止服务

[root@zentao mysqld_exporter]# pkill -9 mysqld_exporter

step8: 查看端口未占用,说明服务已停止

[root@zentao mysqld_exporter]# ss -naltp | grep 9104

step9: 配置systemd启动mysqld_exporter

[root@promethusgrafana ~]# /usr/lib/systemd/system/mysqld_exporter.service

[Service]
ExecStart=/usr/local/mysqld_exporter/mysqld_exporter --config.my-cnf=/usr/local/mysqld_exporter/.my.cnf

[Install]
WantedBy=multi-user.target

[Unit]
Description=mysqld_exporter
After=network.target 
step10: 重载配置

[root@zentao mysqld_exporter]# systemctl daemon-reload

step11: 开启服务

[root@zentao mysqld_exporter]# systemctl start mysqld_exporter

step12: 查看服务状态

[root@zentao mysqld_exporter]# systemctl status mysqld_exporter

step13: 设置开机自启

[root@zentao mysqld_exporter]# systemctl enable mysqld_exporter

step14: 开启9104端口,能被浏览器访问

[root@zentao mysqld_exporter]# firewall-cmd --zone=public --add-port=9104/tcp --permanent

step15: 重启防火墙

[root@zentao mysqld_exporter]# firewall-cmd --reload

验证

在浏览者中地址栏输入:http://被监控的服务器IP地址:9104/metrics 能正常访问系统说明安装完成


能正常访问截图.png

四、配置prometheu监控可以拉取mysqld的信息

step1:回到部署了prometheus的服务器上,在配置文件里面追加被监控机器的节点名称和ip地址

[root@promethusgrafana ~]# vi /usr/local/prometheus/prometheus.yml

  - job_name: 'zentao_mysqld'
    static_configs:
    - targets: ['192.168.197.132:9104']
step2: 配置完成后,进行保存,然后重启普罗米修斯监控系统

[root@promethusgrafana ~]# systemctl restart prometheus

step3: 验证是否能监控到节点信息

回到问管理页面--》点击status--》点击Targets 可以看到又多了一台监控目标


监控成功截图.png

五、Grafana图形展示Mysql监控数据

step1:修改配置文件并安装模板

在grafana上修改配置文件,并下载安装mysql监控的dashboard(包含相关的json文件,这些json文件可以看做是开发人员开发的一个监控模板)。

[root@promethusgrafana ~]# vi /usr/local/grafana/conf/defaults.ini

[dashboards.json]
enabled = true
path=/usr/local/grafana/dashboards

追加完成后,点击保存。

下载安装mysql监控的dashboard(包含相关的json文件,这些json文件可以看做是开发人员开发的一个监控模板)

下载网址:https://github.com/percona/grafana-dashboards

将dashboards目录下的所有json文件上传到刚才配置的文件路径下。

重启grafana服务:[root@promethusgrafana ~]# systemctl restart grafana-server

step2: 在Grafana中导入json文件
image.png
image.png
step3: 设置数据源

点击 import 导入后,报prometheus数据源找不到,因为这些json文件中默认要找的Prometheus的数据源。

你可能感兴趣的:(监控远程机器上的Mysql数据库)