当前位置: 首页 > news >正文

Prometheus+Grafana可视化监控【MySQL状态】

文章目录

    • 一、安装Docker
    • 二、安装MySQL数据库(Docker容器方式)
    • 三、安装Prometheus
    • 四、安装Grafana
    • 五、Pronetheus和Grafana相关联
    • 六、安装mysqld_exporter
    • 七、Grafana添加MySQL监控模板

一、安装Docker

注意:我这里使用之前写好脚本进行安装Docker,如果已经有Docker请省略此步骤,安装Docker是为了方便部署MySQL数据库,如果已经有数据库前两步骤都可以省略。

点击获取Docker离线安装脚本

tar zxf docker20.10.14Install.tar.gz
cd docker20.10.14Install
bash install.sh

查看Docker状态如下图表示没问题:

systemctl status docker

在这里插入图片描述

二、安装MySQL数据库(Docker容器方式)

1、前提准备:

docker pull mysql:8.0.27
mkdir /data/db -psystemctl stop firewalld
systemctl disable firewalld
iptables -F

2、运行容器:

docker run -itd --name mysql -e MYSQL_ROOT_PASSWORD=NTQ34tg*@19VF \-v /data/db:/var/lib/mysql  -p 3306:3306 -v /etc/localtime:/etc/localtime \--restart=always mysql:8.0.27

3、测试容器是否可连接

docker exec -it  mysql  mysql -uroot -pNTQ34tg*@19VF

当然可以使用工具测试连接,如下图:
在这里插入图片描述

只要保证保证数据库可以正常访问到即可!

4、创建MySQL监控用户

create user "prometheus"@"%" identified by 'NTQ34tg*@19VF';
grant select,replication client,process ON *.* to "prometheus"@"%";
flush privileges;

三、安装Prometheus

1、时间和时区同步

timedatectl set-timezone Asia/Shanghai
yum -y install ntpdate
/usr/sbin/ntpdate -u ntp1.aliyun.com

配置计划任务定时同步时间

echo "0 5 * * * /usr/sbin/ntpdate -u ntp1.aliyun.com >/dev/null &" >> /var/spool/cron/root
crontab -l

2、安装Prometheus

wget https://github.com/prometheus/prometheus/releases/download/v2.42.0/prometheus-2.42.0.linux-amd64.tar.gztar zxf prometheus-2.42.0.linux-amd64.tar.gz 
mv prometheus-2.42.0.linux-amd64 /usr/local/prometheus

3、配置systemd管理

cat > /usr/lib/systemd/system/prometheus.service << EOF
[Unit][Service]
ExecStart=/usr/local/prometheus/prometheus --config.file=/usr/local/prometheus/prometheus.yml
ExecReload=/bin/kill -HUP \$MAINPID[Install]
WantedBy=multi-user.target
Alias=dbus-org.fedoraproject.FirewallD1.service
EOF

4、启动并设置开机自启

systemctl enable prometheus --now
systemctl status prometheus

在这里插入图片描述
显示如上图,表示Prometheus也没问题了,默认端口是9090,我们可以浏览器访问一下
点击 Status > Targets 可以查看到Prometheus自己的metrics如下图:
在这里插入图片描述

四、安装Grafana

1、安装Grafana

wget https://dl.grafana.com/enterprise/release/grafana-enterprise-9.4.1-1.x86_64.rpm
sudo yum install grafana-enterprise-9.4.1-1.x86_64.rpm -ysystemctl enable grafana-server.service --now

2、WEB页面验证
默认端口是3000,第一次访问会提示重新设置密码,如下图:
在这里插入图片描述
在这里插入图片描述

五、Pronetheus和Grafana相关联

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

六、安装mysqld_exporter

1、安装mysqld_exporter

wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.14.0/mysqld_exporter-0.14.0.linux-amd64.tar.gz
tar zxf mysqld_exporter-0.14.0.linux-amd64.tar.gz 
mv mysqld_exporter-0.14.0.linux-amd64 /usr/local/mysqld_exporter

2、配置Prometheus监控数据库用户信息

cd /usr/local/mysqld_exporter
cat > .my.cnf <<EOF
[client]
user=prometheus
password=NTQ34tg*@19VF
EOF

3、配置systemd管理

cat > /usr/lib/systemd/system/mysqld_exporter.service << EOF
[Unit]
Description=mysqld_exporter Service
After=network.target[Service]
Type=simple
ExecStart=/usr/local/mysqld_exporter/mysqld_exporter --config.my-cnf=/usr/local/mysqld_exporter/.my.cnf
ExecReload=/bin/kill -HUP \$MAINPID
Restart=on-failure
RestartSec=30s[Install]
WantedBy=multi-user.target
EOF

启动并加入开机自启动

systemctl enable mysqld_exporter --now
systemctl status  mysqld_exporter

在这里插入图片描述

默认端口为9104

ss -anput |grep 9104

4、Prometheus配置文件中指定mysqld_exporter信息

vim /usr/local/prometheus/prometheus.yml- job_name: "MySQL_115"static_configs:- targets: ["16.32.15.115:9104"]

添加完成配置文件后使用命令测试格式上是否有问题

cd  /usr/local/prometheus/
./promtool check config prometheus.yml

重启Prometheus

systemctl restart prometheus.service

七、Grafana添加MySQL监控模板

这里使用MySQL的模板ID:7362
点击 下方红圈地方 > import > 输入模板ID
在这里插入图片描述

在这里插入图片描述
最终效果图如下:
在这里插入图片描述

http://www.lryc.cn/news/168479.html

相关文章:

  • 五,编译定制rom并刷机实现硬改(二)
  • Modbus协议详解3:数据帧格式 - RTU帧 ASCII帧的区别
  • 认识数据分析
  • Learn Prompt-ChatGPT 精选案例:写作博客
  • 《确保安全:PostgreSQL安全配置与最佳实践》
  • Unity中Shader抓取屏幕并实现扭曲效果
  • 深浅拷贝详解
  • @Scheduled 定时任务
  • 丙烯酸共聚聚氯乙烯树脂
  • Navicat导入Excel数据顺序变了
  • uni-app的生命周期
  • Vulnhub实战-DC9
  • 软件设计模式系列之七——原型模式
  • PMP考试注意事项有哪些?
  • chartgpt+midjourney
  • 【SpringMVC】自定义注解
  • 【李沐深度学习笔记】数据操作实现
  • 【深度学习-注意力机制attention 在seq2seq中应用】
  • 详解混合类型文件(Polyglot文件)的应用生成与检测
  • QT之QTableView的简介
  • 学习记忆——宫殿篇——记忆宫殿——记忆桩——知识讲解
  • Python lambda匿名函数
  • 成绩统计(蓝桥杯)
  • ETL与ELT理解
  • IntelliJ IDEA 2023 年下载、安装教程、好用插件推荐
  • 下载HTMLTestRunner并修改
  • C#回调函数学习1
  • leetcode 232 用栈实现队列
  • element UI表单验证,自定义验证规则
  • redis 主存复制