MySql教程

2 后台启动+promQL+监控mysql

本文主要是介绍2 后台启动+promQL+监控mysql,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

 

1、prometheus后台启动

[root@VM-0-9-centos system]# cat /usr/lib/systemd/system/prometheusd.service 
[Unit]
Description=Prometheus
​
[Service]
ExecStart=/usr/local/prometheus/prometheus --config.file=/usr/local/prometheus/prometheus.yml --web.enable-lifecycle  
Restart=on-failure
​
[Install]
WantedBy=multi-user.target
​
[root@VM-0-9-centos system]# systemctl daemon-reload
[root@VM-0-9-centos system]# systemctl start prometheusd

2、node-exporter后台启动

[root@VM-0-9-centos node_exporter-1.3.1.linux-amd64]# vim /usr/lib/systemd/system/node-exporter.service
[Unit]
Description=This is prometheus node exporter
After=node_exporter.service
​
[Service]
Type=simple
ExecStart=/usr/local/node_exporter-1.3.1.linux-amd64/node_exporter
ExecReload=/bin/kill -HUP 
KillMode=process
Restart=on-failure
​
[Install]
WantedBy=multi-user.target
[root@VM-0-9-centos node_exporter-1.3.1.linux-amd64]# systemctl daemon-reload 
[root@VM-0-9-centos node_exporter-1.3.1.linux-amd64]# systemctl start node-exporter.service 

3、PromQL

PromQL可以理解为MySQL中的SQL

3.1、普通查询

prometheus_http_requests_total{code="200"}

3.2、正则匹配

prometheus_http_requests_total{code=~"200|400"}
prometheus_http_requests_total{code!~"200"}

3.3、算术计算

node_memory_MemTotal_bytes / 1024 / 1024 / 1024
(node_memory_MemTotal_bytes - node_memory_MemAvailable_bytes) / node_memory_MemTotal_bytes * 100

3.4、函数

3.4.1、求和函数sum
sum(prometheus_http_requests_total{code!="200"}) by (job)

3.4.2、求平均数

4、监控MySQL

4.1 启动mysql

# 下载MySQL的源
[root@VM-0-3-centos ~]# wget https://dev.mysql.com/get/mysql80-community-release-el7-5.noarch.rpm
[root@VM-0-3-centos ~]# rpm -ivh mysql80-community-release-el7-5.noarch.rpm 
warning: mysql80-community-release-el7-5.noarch.rpm: Header V4 RSA/SHA256 Signature, key ID 3a79bd29: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:mysql80-community-release-el7-5  ################################# [100%]
[root@VM-0-3-centos ~]# yum install mysql-community-server -y
# 启动
[root@VM-0-3-centos ~]# systemctl start mysqld
​
#修改密码
[root@localhost ~]# grep 'password' /var/log/mysqld.log
2022-01-21T06:47:01.557043Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: Eqfrluvm)4gf
[root@localhost ~]# mysql -uroot -p'Eqfrluvm)4gf'
mysql> alter user root@localhost identified by 'Test123!';
​
# 下载mysqld_exporter(prometheus.io——downloadmysqld_exporter,选择linux版本的)
[root@VM-0-3-centos ~]# wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.13.0/mysqld_exporter-0.13.0.linux-amd64.tar.gz
​
[root@VM-0-3-centos ~]# tar -xf mysqld_exporter-0.13.0.linux-amd64.tar.gz -C /usr/local/
[root@localhost local]# cd /usr/local/mysqld_exporter-0.13.0.linux-amd64/
[root@localhost mysqld_exporter-0.13.0.linux-amd64]# ll
-rwxr-xr-x 1 3434 3434 14955898 May 31  2021 mysqld_exporter
[root@localhost mysqld_exporter-0.13.0.linux-amd64]# ./mysqld_exporter 
​
​
[root@VM-0-3-centos mysqld_exporter-0.13.0.linux-amd64]# vim /usr/local/mysqld_exporter/.my.cnf
[client]
user=root
password=Test123!
​
#可看出端口是9104
[root@localhost mysqld_exporter-0.13.0.linux-amd64]# ./mysqld_exporter
[root@localhost ~]# curl 127.0.0.1:9104
#metrics接口
[root@localhost ~]# curl 127.0.0.1:9104/metrics
​
#后台运行
[root@VM-0-3-centos mysqld_exporter-0.13.0.linux-amd64]# ln -s /usr/local/mysqld_exporter-0.13.0.linux-amd64 /usr/local/mysqld_exporter
​
[root@VM-0-3-centos mysqld_exporter-0.13.0.linux-amd64]# vim /usr/lib/systemd/system/mysqld-exporter.service
[Unit]
Description=Prometheus
​
[Service]
ExecStart=/usr/local/mysqld_exporter/mysqld_exporter --config.my-cnf=/usr/local/mysqld_exporter/.my.cnf --web.listen-address=:9104
Restart=on-failure
​
[Install]
WantedBy=multi-user.target
[root@VM-0-3-centos mysqld_exporter-0.13.0.linux-amd64]# systemctl daemon-reload
[root@VM-0-3-centos mysqld_exporter-0.13.0.linux-amd64]# systemctl restart mysqld-exporter.service

4.2 加入prometheus

[root@prometheus ~]# vim /usr/local/prometheus/prometheus.yml
[root@prometheus ~]# systemctl restart prometheusd
此时可访问http://192.168.15.113:9090/targets,查看mysql状态是否是up
​

 

 

 

 

 

 

 

 

这篇关于2 后台启动+promQL+监控mysql的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!