Prometheus-监控Mysql进阶用法(1)(安装配置)

news2024/11/16 6:50:46

阿丹:

        在开发和生产环境中有可能会出现慢mysql等问题,那么这里就需要我们优秀的程序员来进行监控和解决,那么如何借助云原生的监控系统来完成这个操作呢?

       环境描述:

       使用一台空白的阿里云服务器2核4G。

服务器基本安装配置-docker容器化

关闭防火墙

systemctl stop firewalld

安装流程按照我之前写的文章来进行,我这里直接附上文章链接

阿丹的服务配置文章专题

安装docker

配置Linux服务器华为云耀云服务器之docker安装,以及环境变量安装 java (虚拟机一样适用)_华为云安装docker-CSDN博客

安装Mysql5:7 

配置Linux服务器华为云耀云服务器之docker中Mysql5.7、redis安装 (虚拟机一样适用)_云耀云服务器开放3306-CSDN博客

 安装普罗米修斯并监控mysql

Prometheus安装挂载数据卷

Prometheus技术文档--基本安装-docker安装并挂载数据卷-《十分钟搭建》_一单成的博客-CSDN博客

 访问ip+9090出现以下页面完成安装

Grafana安装挂载数据卷

Grafana技术文档--基本安装-docker安装并挂载数据卷-《十分钟搭建》-附带监控服务器_一单成的博客-CSDN博客

 访问ip+3000,出现页面完成Grafana安装

 在这一步的时候使用Grafana,在上面搜索框直接搜索Data sources将普罗米修斯设置为数据源,因为上面链接中有这里就不过多的说了。

docker中拉取mysql的探针

docker pull prom/mysqld-exporter

运行探针

首先创建一个专门用来监控的用户并授权

进入docker的mysql容器

docker exec -it 容器的id bash

 登录root用户

mysql -u root -p

输入密码后执行下面的指令 

CREATE USER 'mysql_monitor'@'%' IDENTIFIED BY 'adn666' WITH MAX_USER_CONNECTIONS 3;
GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'mysql_monitor'@'%';
FLUSH PRIVILEGES;
EXIT

 这段SQL语句用于在MySQL数据库中创建一个名为'mysql_monitor'的用户,并给予该用户一些权限。让我逐行解释一下:

  1. CREATE USER 'mysql_monitor'@'%' IDENTIFIED BY 'adn666' WITH MAX_USER_CONNECTIONS 3;

    • 这行代码创建一个名为'mysql_monitor'的用户,并且定义了用户的身份验证方式(密码)为'adn666'。
    • 'localhost'指定了该用户只能从本地主机连接到MySQL服务器。
    • WITH MAX_USER_CONNECTIONS 3限制了该用户可以同时建立的最大连接数为3个。
  2. GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'mysql_monitor'@'localhost';

    • 这行代码将一些权限授予'mysql_monitor'用户。
    • PROCESS权限允许该用户查看当前正在运行的MySQL进程。
    • REPLICATION CLIENT权限允许该用户连接到MySQL复制服务器以获取复制相关的信息。
    • SELECT权限允许该用户在所有的数据库和表上执行SELECT查询语句。
  3. FLUSH PRIVILEGES;

    • 这行代码用于刷新MySQL权限表,以使新的用户和权限设置生效。
  4. EXIT

    • 这行代码用于退出MySQL命令行终端。

这些语句的目的是创建一个具有特定权限的MySQL用户,并确保这些权限生效。你可以根据自己的需求修改用户名、密码和授权的权限。

使用我们创建好的用户来启动探针

docker直接运行探针(出现问题)

GitHub - percona/mysqld_exporter: Exporter for MySQL server metrics

 下面的这个就是官网提供的但是阿丹运行报错

docker network create my-mysql-network
docker pull prom/mysqld-exporter

docker run -d \
  -p 9104:9104 \
  --network my-mysql-network  \
  -e DATA_SOURCE_NAME="user:password@(hostname:3306)/" \
  prom/mysqld-exporter

 根据实践总是出现有这个.my.cnf的配置文件找不到。在这里留个坑希望有大神可以解答一下。

使用从官网上下拉代码

 wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.12.1/mysqld_exporter-0.12.1.linux-amd64.tar.gz

解压

tar xf mysqld_exporter-0.12.1.linux-amd64.tar.gz -C /usr/local/

移动

ln -sv /usr/local/mysqld_exporter-0.12.1.linux-amd64/ /usr/local/prometheus_mysqld

编写配置文件,根据刚才我们新建的用户来完成配置

#编辑配置文件
vim /usr/local/prometheus_mysqld/.my.cnf 

#配置文件中内容
[client]
user=mysql_monitor #刚才新建的用户
password=adn666 #密码
port=3306 #端口号,如果不写ip地址(host)的话默认就是本机

配置systemd启动mysqld_exporter

vim /lib/systemd/system/mysqld_exporter.service

 下面为配置文件

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

 加入并启动,系统

systemctl daemon-reload
systemctl start mysqld_exporter
systemctl enable mysqld_exporter

 检查是否正常运行

ss -lnpt|grep 9104

 出现如下项目没有问题

使用ip地址+9104出现以下页面

 确认监控指标正常

curl http://localhost:9104/metrics|grep mysql_up

 那么我们下面就是在我们普罗米修斯中配置这个任务

在普罗米修斯中配置文件

修改这个配置 

  - job_name: 'mysql_db'
    static_configs:
      - targets: ['mysqlIP:9104']
        labels:
          group: mysql_db

 修改配置之后重启普罗米修斯的docker容器

访问ip+9090//targets查看

出现如上页面就是可以了! 

开始配置Grafana的主题-使用导入json的形式

阿丹:

        我这里准备了一个别人整理好的,我这里就直接拿过来使用了。

这个json文件我放在本文章的资源中了。直接拿取就可以,然后我们就使用上就可以了跟着我的步骤来。

注意:

        有两个方式来发现,一种是图表的形式来使用的,另外一种是使用配置预警规则来警告的。这里我们使用是监控图表的方式。(第二种方式阿丹后期会更新的)

我们可以直接在上面搜索这里直接搜索import

 直接将本文章中的json文件拖入就可以了,(前提是在安装的时候已经将数据来源设置为了我们安装好的普罗米修斯)

这里就是配置好了出现的面板

其中我们要使用到的就是这里!! 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1047859.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

uni-app:循环数据点击事件获取每行指定数据(获取参数)

效果 页面样式 点击首行控制台输出信息 代码 :data-id"item.id":定义id信息,在点击事件时e.currentTarget.dataset.id获取点击行的id :data-index"index":定义index信息,在点击事件时e.currentTarget.datase…

Spring实例化源码解析之ClassPathBeanDefinitionScanner(五)

Spring实例化源码解析之ClassPathBeanDefinitionScanner(五) 上一章我们分析了ComponentScanAnnotationParser,主要就是分析了ComponentScan注解内的属性和属性的作用,而注解解析的信息会交给ClassPathBeanDefinitionScanner扫描器使用,也就…

运动控制:步进电机

在机械设计中,我们经常用到步进电机。 比如,用步进电机驱动同步带轴,实现直线运动。 再比如,用步进电机驱动滚珠丝杠轴,也可以把旋转运动转换为直线运动。 因为不需要反馈系统,所以步进电机的最大优点是…

【ESP32 + Edge Impulse平台】运行AI算法模拟多传感器数据融合实现异常检测

本篇博文主要以ESP32+MQ Sensor 气体传感器为例,通过连接 Edge Impulse 平台,实现数据的实时采集和训练,进而实现在嵌入式设备上部署 ML 机器学习。本教程介绍如何使用 Edge Impulse 和机器学习来实现ESP32 异常检测系统,系统使用一个机器学习模型,检测气体何时出现异常。…

基于自动化设备和现代化仓储精益管理思想开发的仓库管理系统

一、开源项目简介 立体仓库WMS deer-wms是基于自动化输送线、机械臂、点数机、提升机、堆垛机等自动化设备和现代化仓储精益管理思想开发出来的仓库管理系统。通过对接工厂的EBS(erp中一种)、MES(生产执行系统)、deer-wcs(设备调度系统&…

分类预测 | MATLAB实现WOA-FS-SVM鲸鱼算法同步优化特征选择结合支持向量机分类预测

分类预测 | MATLAB实现WOA-FS-SVM鲸鱼算法同步优化特征选择结合支持向量机分类预测 目录 分类预测 | MATLAB实现WOA-FS-SVM鲸鱼算法同步优化特征选择结合支持向量机分类预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 MATLAB实现WOA-FS-SVM鲸鱼算法同步优化特征选择结…

tortoiseSVN树冲突解决方案

方案一: 手动导出 trunk 上的文件(夹),把本地目录文件(夹)删了并替换成 trunk上的,再点击测试合并方案二: 如果执行了方案一还是冲突,确认本地和trunk文件一致后,可以跳过冲突的revision

numpy中的keepdims参数

numpy.mean,sum,max,min等函数中都有keepdims这个参数,这个参数的作用: 当 keepidmsTrue,保持其二维或者三维的特性,(结果保持其原来维数) 默认为 False,不保持其二维或者三维的特性.(结果不保持其原来维数) 假设我们有一个二维数组A,其中A的…

什么人适合学NPDP产品经理认证?

NPDP产品经理认证,最适合学的就是产品经理了,但是证书没有局限性,适用于所有与产品开发相关的行业和领域,特别是那些需要提高产品成功率和效率的团队成员。就是一句话,只要你觉得有用,都可以考。 通过学习N…

k8s的入门和项目部署

1、k8s简介 1.1 k8s是什么 kubernetes,希腊文中舵手的意思,简称K8s,是Google开源的容器编排引擎。在Docker容器引擎的基础上,为容器化的应用提供部署运行、资源调度、服务发现和动态伸缩等一系列完整功能,提高了大规…

打造卓越摄影作品,尽享专业级编辑体验——DxO PhotoLab 7 for Mac

DxO PhotoLab 7 for Mac 是一款功能强大的专业照片编辑软件,为摄影爱好者和专业摄影师提供了优秀的工具和功能,让您能够轻松打造卓越的摄影作品并实现专业级的编辑效果。 DxO PhotoLab 7 提供了一套先进的图像处理算法,能够准确地还原照片的…

最近很火的AIGC人工智能之AI赋能运营(巧用ChatGPT轻松上手新媒体)

前言 「作者主页」:雪碧有白泡泡 「个人网站」:雪碧的个人网站 「推荐专栏」: ★java一站式服务 ★ ★ React从入门到精通★ ★前端炫酷代码分享 ★ ★ 从0到英雄,vue成神之路★ ★ uniapp-从构建到提升★ ★ 从0到英雄&#xff…

打造香港最安全便捷的银行,众安银行发布首份技术白皮书

作者:林海宾&李龙 作为香港金融科技的代表,香港虚拟银行通过科技驱动,为客户提供了安全、便捷、普惠的金融服务。在八间持牌的虚拟银行中,众安银行目前在用户数量、存款、资产和收入规模上均处于领先水平。最快120秒线上开户…

基于微信小程序的新闻发布平台小程序设计与实现(源码+lw+部署文档+讲解等)

文章目录 前言系统主要功能:具体实现截图论文参考详细视频演示为什么选择我自己的网站自己的小程序(小蔡coding)有保障的售后福利 代码参考源码获取 前言 💗博主介绍:✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计…

4700 万美元损失,Xn00d 合约漏洞攻击事件分析

4700 万美元损失,Xn00d 合约漏洞攻击事件分析 基础知识 ERC777 ERC777 是 ERC20 标准的高级代币标准,要提供了一些新的功能:运营商及钩子。 运营商功能。通过此功能能够允许第三方账户代表某一合约或者地址 进行代币的发送交易钩子功能。…

怎么选择伪原创工具?伪原创工具推荐

什么是伪原创工具?伪原创工具是一种可以将已有文本进行修改、改写或重新组合,生成新的文本内容的工具。 伪原创工具的作用 节省时间和精力:手工创作内容需要耗费大量时间和精力,而伪原创工具可以在短时间内生成大量内容&#xf…

【TCP/UDP】MSS和MTU、UDP报文、TCP报文、如何实现TCP的长连接、TCP的粘包问题如何解决等重点知识汇总

目录 MSS 和 MTU UDP 和 TCP 区别及应用场景 UDP头部中有哪些信息? TCP头部中有哪些信息? TCP的长连接如何实现 TCP粘包和解决 TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的、可靠的、基于字节流的传输…

漏洞扫描环境:win10系统用VMware Workstation打开虚拟机若干问题

win10系统用VMware Workstation打开虚拟机若干问题 一 .VMware打开虚拟机就蓝屏重启怎么解决?一. VMware打开虚拟机就蓝屏重启怎么解决?方法一:1、同时按下CTRLSHIFTESC打开任务管理器功能,之后依次点击-详细信息-性能后出现下列界…

制作PE启动盘

文章目录 ⭐️写在前面的话⭐️1、下载微PE2、格式化U盘3、安装PE到U盘4、下载镜像 ⭐️写在前面的话⭐️ 📒博客主页: 程序员好冰 🎉欢迎 【点赞👍 关注🔎 收藏⭐️ 留言📝】 📌本文由 程序员好…