news 2026/4/16 14:24:43

性能测试必备技能:Prometheus监控平台搭建

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
性能测试必备技能:Prometheus监控平台搭建
01、Prometheus 监控平台部署

Linux 操作系统监控 + Mysql 监控

1、平台监控原理:

环境说明:
本文档中各组件运行的环境为 Ubuntu(64 位操作系统)
node_exporter 监控的是 192.168.1.26 机器的操作系统
mysql_exporter 监控的是 192.168.1.30 上安装的 MySQL 数据库
Grafana+Prometheus 部署在 192.168.1.33 机器

部署前的准备:

关闭所有 Linux 机器的防火墙:systemctl stop firewalld.service

保证所有 Linux 机器的时间是准确的,执行 date 命令检查;如果不准确,建议使用ntp 同步最新网络时间

02、部署 Linux 操作系统监控组件

1、下载监控 Linux 的 exporter
https://github.com/prometheus/node_exporter/releases/download/v0.18.1/node_exporter-0.18.1.linux-amd64.tar.gz

2、将 node_exporter 包上传到需要被监控的 Linux 服务器上任意目录下,执行解压命令

tar xvf node_exporter-0.18.1.linux-amd64.tar.gz

3、进入到解压后的文件夹中,执行启动脚本
node_exporter-0.18.1.linux-amd64
nohup ./node_exporter &

4、查看 nohup 日志,出现如下日志,代表启动成功
tail -100 nohup.out

03、部署prometheus
1、下载包
https://github.com/prometheus/prometheus/releases/download/v2.15.2/prometheus-2.15.2.linux-amd64.tar.gz

2、将 prometheus 上传到一台单独的 Linux 机器上,执行解压操作

ubuntu@VM-0-8-ubuntu:~$ lsapp logs Project Prometheus README.txt tools VueProjectubuntu@VM-0-8-ubuntu:~$ cd Prometheus/ubuntu@VM-0-8-ubuntu:~/Prometheus$ tar -xvf prometheus-2.15.2.linux-amd64.tar.gzubuntu@VM-0-8-ubuntu:~/Prometheus$ lsgrafana_6.5.3_amd64.deb node_exporter-0.18.1.linux-amd64 prometheus-2.15.2.linux-amd64ubuntu@VM-0-8-ubuntu:~/Prometheus$ cd prometheus-2.15.2.linux-amd64/ubuntu@VM-0-8-ubuntu:~/Prometheus/prometheus-2.15.2.linux-amd64$ lsconsole_libraries consoles data LICENSE nohup.out NOTICE prometheus prometheus.yml promtool tsdb

AI写代码

4、在 scrape_configs 配置项下添加 Linux 监控的 job,其中IP 修改为上面部署 node_exporter 机器的 ip,端口号为 9100,注意缩进

  1. # my global config

  2. global:

  3. scrape_interval: 2s # Set the scrape interval to every 15 seconds. Default is every 1 minute.

  4. evaluation_interval: 2s # Evaluate rules every 15 seconds. The default is every 1 minute.

  5. # scrape_timeout is set to the global default (10s).

  6. # Alertmanager configuration

  7. alerting:

  8. alertmanagers:

  9. - static_configs:

  10. - targets:

  11. # - alertmanager:9093

  12. # Load rules once and periodically evaluate them according to the global 'evaluation_interval'.

  13. rule_files:

  14. # - "first_rules.yml"

  15. # - "second_rules.yml"

  16. # A scrape configuration containing exactly one endpoint to scrape:

  17. # Here it's Prometheus itself.

  18. scrape_configs:

  19. # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.

  20. - job_name: 'prometheus'

  21. # metrics_path defaults to '/metrics'

  22. # scheme defaults to 'http'.

  23. static_configs:

  24. - targets: ['localhost:9090']

  25. - job_name: 'node'

  26. static_configs:

  27. # 新增的服务器配置信息

  28. - job_name: 'node'

  29. static_configs:

  30. - targets: ['192.168.1.26:9100']

AI写代码python运行

5、保存配置文件,启动 prometheus
nohup ./prometheus &

6、检查 nohup.out 日志,如果有以下信息,启动成功
vi nohup.out
通过反斜杠 '/Server is ready to receive' 回车查询

7、在浏览器中访问部署的prometheus:http://192.168.1.33:9090

8、点击菜单栏“Status-Targets”,看到页面中有如下 node 节点,代表 prometheus 和node_exporter 链接成功

04、部署 Grafana

1、下载安装grafana(建议使用8.0.6版本,6.5.3有不兼容问题)
sudo apt-get install -y adduser libfontconfig1
wget https://dl.grafana.com/oss/release/grafana_6.5.3_amd64.deb
sudo dpkg -i grafana_6.5.3_amd64.deb

2、启动 grafana
systemctl start grafana-server

3、在浏览器访问:http://192.168.1.33:3000/
输入用户名/密码:admin/admin 登录

4、添加数据源,选择 prometheus

5、进行数据源配置,因为我的 prometheus 和 grafana 装在同一台机器上,所以 ip 写的是 localhost,如果没在一台机器上,写上 prometheus 的 IP

点击“save and test”,如果提示 success,代表配置成功

6、官网查找监控模板
打开 grafana 官网,查找官网提供的 prometheus 监控模板
https://grafana.com/grafana/dashboards

点击 Linux 服务器监控的中文模板,记录该模板的 id:8919

7、在 grafana 系统页面中,通过 id 导入该模板,即可在 grafana 中看到 192.168.1.26 机器的性能监控数据

8、将数据更新频率很具需要设置,就可以看到设置时间步长内的各项性能指标。包含了 CPU、Load、内存、网络、磁盘、IO 耗时等指标。监控数据永久保存,可以随时查看任意时间点内的历史统计数据,非常方便。

9、grafana服务启停

05、MySQL 的监控

1、下载 MySQL 的 exporter
https://github.com/prometheus/mysqld_exporter/releases/download/v0.12.1/mysqld_exporter-0.12.1.linux-amd64.tar.gz

2、上传至 MySQL 服务器上,解压包

tar xvf mysqld_exporter-0.12.1.linux-amd64.tar.gz

3、执行命令
export DATA_SOURCE_NAME='root:admin1234@(192.168.1.30:3306)/'

4、启动 mysql exporter
进入到解压后的文件夹中,执行命令
nohup ./mysqld_exporter &
监控 nohup.out 日志,有如下日志代表成功

5、修改 prometheus的配置文件 prometheus.ymlvi prometheus.yml
增加监控 MySQL 的 job(注意缩进格式)

  1. # my global config

  2. global:

  3. scrape_interval: 2s # Set the scrape interval to every 15 seconds. Default is every 1 minute.

  4. evaluation_interval: 2s # Evaluate rules every 15 seconds. The default is every 1 minute.

  5. # scrape_timeout is set to the global default (10s).

  6. # Alertmanager configuration

  7. alerting:

  8. alertmanagers:

  9. - static_configs:

  10. - targets:

  11. # - alertmanager:9093

  12. # Load rules once and periodically evaluate them according to the global 'evaluation_interval'.

  13. rule_files:

  14. # - "first_rules.yml"

  15. # - "second_rules.yml"

  16. # A scrape configuration containing exactly one endpoint to scrape:

  17. # Here it's Prometheus itself.

  18. scrape_configs:

  19. # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.

  20. - job_name: 'prometheus'

  21. # metrics_path defaults to '/metrics'

  22. # scheme defaults to 'http'.

  23. static_configs:

  24. - targets: ['localhost:9090']

  25. - job_name: 'node'

  26. static_configs:

  27. # 新增的服务器配置信息

  28. - job_name: 'node'

  29. static_configs:

  30. - targets: ['192.168.1.26:9100']

  31. # 新增的MySQL服务器配置信息

  32. - job_name: 'mysql'

  33. static_configs:

  34. - targets: ['192.168.1.30:9104']

AI写代码python运行

targets 中的 IP 为 mysql_exporter 所在机器的 IP,端口号固定为 9104,重启 prometheus,进入 prometheus 的 UI 界面,在 status-targets 页面下,可以看到 MySQL exporter 的状态

6、在 Grafana 中添加 MySQL 的监控模板
在 grafana 官网模板中找到 MySQL 监控模板 Mysql Overview,id 为 7362,并导入到 Grafana 中(具体操作步骤参考上面导入 Linux 监控模板操作)

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 13:07:45

组合机床设计

第二章 工艺方案的拟定 2.1 梳棉机箱体结合件零件的工艺技术分析 梳棉机箱体结合件零件如图1-1&#xff1a; 图2-l 梳棉机箱体结合件图 主要技术参数如下&#xff1a; 2.1.1面&#xff1a; &#xff08;1&#xff09;上下两平面的光洁度 &#xff08;2&#xff09;两侧面、两…

作者头像 李华
网站建设 2026/4/14 21:13:54

阶梯轴车削加工及数控车削机床仿真的研究

第3章 数控加工关键技术的研究 3.1 基本概念 数控编程&#xff1a; 在数控机床上加工零件&#xff0c;首先要进行程序编制&#xff0c;将零件的加工顺序、工件与刀具相对运动轨迹的尺寸数据、工艺参数&#xff08;主运动和进给运动速度、切削深度等&#xff09;以及辅助操作等…

作者头像 李华
网站建设 2026/4/16 12:34:22

利用8款AI工具优化软件工程毕业设计的论文与代码质量

文章总结表格&#xff08;工具排名对比&#xff09; 工具名称 核心优势 aibiye 精准降AIGC率检测&#xff0c;适配知网/维普等平台 aicheck 专注文本AI痕迹识别&#xff0c;优化人类表达风格 askpaper 快速降AI痕迹&#xff0c;保留学术规范 秒篇 高效处理混AIGC内容&…

作者头像 李华
网站建设 2026/3/13 2:17:49

第 478 场周赛Q1——3759. 统计合格元素的数目

题目链接&#xff1a;3759. 统计合格元素的数目&#xff08;中等&#xff09; 算法原理&#xff1a; 解法&#xff1a;双指针 47ms击败49.92% 时间复杂度O(Nlogn) ①边界条件&#xff1a; 如果k0&#xff0c;说明没有元素比它大&#xff0c;直接返回长度n 如果n0&#xff0c;直…

作者头像 李华
网站建设 2026/4/15 8:48:53

自动化测试框架搭建全过程

前段时间写了一系列自动化测试相关的文章&#xff0c;当然更多的是方法和解决问题的思路角度去阐述我的一些观点。这篇文章来聊聊新手如何从零到一落地实践接口自动化测试。 为什么要做接口测试 测试理念的演变 早些时候&#xff0c;软件研发交付流程大多遵循V型或W型的瀑布…

作者头像 李华