prometheus + grafana进行服务器资源监控

在性能测试中,服务器资源是值得关注一项内容,目前,市面上已经有很多的服务器资 源监控方法和各种不同的监控工具,方便在各个项目中使用。

但是,在性能测试中,究竟哪些指标值得被关注呢?

监控有着的分级体系,下面引用:

在以前的工作中,想要实现服务器资源监控和DB的监控,只能依靠任务管理器和肉眼, 也无法保存历史数据,结果也存在很大误差,导致无法给出精确结果。

下面对 prometheus 进行介绍:

node_expoert:被监控机器。Windows 或者是 Linux 的系统都可以 Prometheus:Prometheus 服务,用于监控数据收集和查询,部署在 windows 下和 Linux 下 都可以

Grafana:Grafana 服务,用于数据展示,部署在 windows 下和 Linux 下都可以

node_expoert:(windows)

第一步:

打开运行 windows_exporter.exe

验证方法:在浏览器里面访问:locahost:9182,如果能正常访问,出现以下内容,表 示启动成功:

第二步:服务器应该都开启了防火墙,需要把使用的端口允许通过防火墙,才可以使用。

第三步:验证在另外的机器上是否可以正常 在另外的机器上的浏览器中输入服务器的 ip+9182 检查是否出现和第一步相同的结果

node_expoert:(Linux,以 centos7 为例)

第一步:

上传 node_expoert。Windows 和 Linux 使用到的 node_expoert 不一致 第二步:

移动进行目录

第三步:后台启动

nohup /usr/local/node_exporter/node_exporter & 如果出现把输出追加到 nohup.out,为正常 第四步:检查服务是否正常开启

运行:netstat -nultp

启动成功结果:

第四步:服务器应该都开启了防火墙

在 Linux 下,node_expoert 使用的端口为 9100。先检查端口是否开启:

运行:firewall-cmd --query-port=9100/tcp

如果返回 no,则端口未开启

开启对应端口:

firewall-cmd --zone=public --add-port=9100/tcp –permanent 开启端口之后需要重启一下防火墙:

firewall-cmd –reload

第五步:

在另外的机器上访问采集地址:

服务器 ip:9100/metrics

如果出现以下内容表示成功

Prometheus:

以 windows 为例,如果需要使用 docker 或者是 Linux,请参考:https://testerhome.com/topics/22231 下载:在官网上即可获取到最新的安装包

第一步:服务启动:双击运行即可

验证方法:

访问服务器 ip+9090,能正常访问,出现以下内容表示启动成功

第二步:

准备 node_expoert

打开 prometheus.yml 的配置文件,在配置文件中添加一个新的 job

第三步:重启 prometheus 的服务

第四步:

经过短暂的延迟之后,访问 prometheus 的服务地址。进入 status---targets 即可看到刚刚添加的 node_expoert

node_expoert 的状态为 up,则表示成功访问 node_expoert 的状态为 down,则表示失败

Grafana:

Grafana 是一个开源的度量分析和可视化工具,可以通过将采集的数据分析,查询,然 后进行可视化的展示,并能实现报警。

服务安装:

访问官网获取安装包

服务启动:

进入 GrafanaLabs\grafana\bin,运行 grafana-server.exe 启动服务 访问地址为:服务器 ip+3000

同样,如果防火墙打开,需要允许 grafana-server.exe 通过防火墙 第一次访问,使用

admini/admini 进行登录即可 成功之后系统会提示修改密码,修改符合规则要求的密码即可

第一步:

添加数据源

进入 Configuration-Data Sources,添加数据源,选择 Prometheus

数据源设置:

填写完成 name 和 url 之后保存即可

第二步:

添加监控看板 目前,我们使用官方提供的看板 点击 create----import

特别注意:

1.Windows 系统的机器和 Linux 系统的机器,使用的看板文件是不一致的,windows 机器只 能使用 windows 看板,Linux 机器只能使用 Linux 看板

2.如果在监控 window服务器的时候,node_expoert 使用的是最新的 V0.13.0 版本,需要把 看板中的查询语句进行修改替换

需要把 wmi_修改为 windows_

3.如 果 要 获 取 官 方 的 看 板 , 请 访 问 :https://grafana.com/grafana/dashboards

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你! 

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

从零开始制作一个割草机器人

项目背景 为啥要做一个割草机器人呢?(个人因素:我梦想就是做一款人形机器人保护人类,解放人类) 基础准备:我们公司本身做过高精度,基于高精度的技术扩展到农机自动化驾驶。目前可以实现AB线拖…

0003Java安卓程序设计-springboot基于Android的学习生活交流APP

文章目录 **摘** **要**目 录系统设计开发环境 编程技术交流、源码分享、模板分享、网课教程 🐧裙:776871563 摘 要 网络的广泛应用给生活带来了十分的便利。所以把学习生活交流管理与现在网络相结合,利用java技术建设学习生活交流APP&…

【算法】昂贵的聘礼(dijkstra算法)

题目 年轻的探险家来到了一个印第安部落里。 在那里他和酋长的女儿相爱了,于是便向酋长去求亲。 酋长要他用 10000 个金币作为聘礼才答应把女儿嫁给他。 探险家拿不出这么多金币,便请求酋长降低要求。 酋长说:”嗯,如果你能够替我…

云智慧联合北航提出智能运维(AIOps)大语言模型及评测基准

随着各行业数字化转型需求的不断提高,人工智能、云计算、大数据等新技术的应用已不仅仅是一个趋势。各行业企业和组织纷纷投入大量资源,以满足日益挑剔的市场需求,追求可持续性和竞争力,这也让运维行业迎来了前所未有的挑战和机遇…

MacOS安装git

文章目录 通过Xcode Command Lines Tool安装(推荐)终端直接运行git命令根据流程安装先安装Command Lines Tool后再安装git 官网下载二进制文件进行安装官方国外源下载二进制文件(不推荐)国内镜像下载二进制文件(推荐)安装git 通过Xcode Command Lines Tool安装(推荐) 简单来讲C…

vivado布局分析

1、高亮显示布局 1. 在“ Netlist ” ( 网表 ) 窗口中 , 选择要分析的层级。 2. 从弹出菜单中 , 选择“ Highlight Leaf Cells ” → “ Select a color ” ( 高亮叶节点单元 > 选择颜色 ) 。 3. …

Docker DeskTop安装与启动(Windows版本)

一、官网下载Docker安装包 Docker官网如下: Docker官网不同操作系统下载页面https://docs.docker.com/desktop/install/windows-install/ 二、安装Docker DeskTop 2.1 双击 Docker Installer.exe 以运行安装程序 2.2 安装操作 默认勾选,具体操作如下…

【React】【react-globe.gl】3D Objects效果

目录 想要实现的效果实现过程踩坑安装依赖引入页面 想要实现的效果 示例地址 实现过程 踩坑 示例是通过script引入的依赖,但本人需要在react项目中实现该效果。按照react-globe.gl官方方法引入总是报错 Cant import the named export AmbientLight from non EcmaS…

玩转AIGC:如何选择最佳的Prompt提示词?

🌷🍁 博主猫头虎 带您 Go to New World.✨🍁 🦄 博客首页——猫头虎的博客🎐 🐳《面试题大全专栏》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~🌺 &a…

rust入门基础案例:猜数字游戏

案例出处是《Rust权威指南》,书中有更加详细的解释。从这个例子中,我们可以了解到 rust 的两个操作: 如何从控制台读取用户输入rust 如何生成随机数 代码格式化 编译器可在保存时对代码做格式化处理,底层调用 rustfmt 来实现&a…

http中的Content-Type类型

浏览器的Content-Type 最近在做web端下载的时候需要给前端返回一个二进制的流,需要在请求头中设置一个 writer.Header().Set("Content-Type", "application/octet-stream")那么http中的Content-Type有具体有哪些呢?他们具体的使用场…

正点原子嵌入式linux驱动开发——Linux 块设备驱动

经过之前这些笔记的学习,都是字符设备驱动,本章来学习一下块设备驱动框架,块设备驱动是Linux三大驱动类型之一。块设备驱动要远比字符设备驱动复杂得多,不同类型的存储设备又对应不同的驱动子系统,本章重点学习一下块设…