Jmeter基础篇(22)服务器性能监测工具Nmon的使用

一、前言

我们在日常做压测的过程中,不仅仅需要监控TPS,响应时间,报错率等这些系统基础性能数据,还需要对服务器的性能(如CPU、磁盘、内存、网络IO等)做监控,以求对系统运行过程中的硬件性能有一个较为通透的掌握。在做服务器性能监控过程中,Nmon就是我们最为常用的一个工具啦!

今天博主带大家一起学习一下,如何使用Nmon这款工具,执行服务器性能的监控操作!

二、Nmon简介

Nmon是一款仅适用于Linux操作系统的开源性能监控工具

它可以通过运行简单的指令,来获取服务器的CPU利用率、磁盘占用率、I/O等各个方面的资源使用数据,并可利用 Excel 分析工具(nmon analyser)或者其他的一些工具,来进行数据的统计分析

三、安装Nmon服务器性能监控工具

1. 查询操作系统版本

在安装之前,需要先查询一下操作系统的版本信息,方式如下:

yum install -y redhat-lsb
lsb_release -a 

这样你就可以看到对应的系统版本情况啦:

Distributor ID: CentOS
Description:    CentOS Linux release 7.8.2003 (Core)
Release:        7.8.2003
Codename:       Core

2.安装Nmon

你可以从这个地址,下载Nmon完整组件套装:Nmon超级无敌小套装

然后将对应版本的组件,上传到服务器上,解压。

例如你的操作系统是CentOS7,那你就可以上传CentOS7对应的版本;

如果你是Ubuntu操作系统,就可以上传Ubuntu对应的版本;

如果你是国产操作系统例如欧拉,银河麒麟等,可以直接尝试使用nmon_x86_64_centos7

3.Nmon组件的放置位置示意

我一般是这样子放的,首先建一个nmon文件夹:

然后把nmon_x86_64_centos7文件丢这个文件夹里即可(你可以根据自己的操作系统版本自行斟酌放入哪个组件)。

然后在nmon文件夹内再创建一个目录,名字叫reports。这样你就有了这样的一个结构:

4.分权限

接下来我们给Nmon文件夹分777权限:

分好后就是这样子啦:

如果你想要用命令实现分权限,也可以使用这个命令:

sudo chmod -R 777 /root/Downloads/nmon(这里是你nmon文件夹的绝对路径)

四、启动Nmon

cd /到nmon的安装目录

./nmon_x86_64_centos7 -s 2.5 -c 300 -f -m /nmon/reports

使用上面这句指令,就可以启动Nmon了,相关参数解释如下:

  • -f 监控结果报告以文件形式输出,默认_日期.nmon格式
  • -s 2.5 每隔2.5秒抽样一次
  • -c 指的是取出多少个采样点,如果为300,则为2×300/60=10分钟。建议最多设置300个抽样
  • -m 指定监控文件的存放目录,-m后跟指定目录,如果不指定目录,则会在该命令的原目录下生成相应的监控文件(需要注意的是,在某些版本的操作系统中,reports后面不能加/,否则会无法正常记录结果)

五、停止nmon监控

如果想要停止监控,可以使用如下方式:

# 查询进程号
ps -ef|grep nmon
# 查出进程号后,使用如下语句杀掉进程即可
kill -9 PID

六、导出nmon测试结果

导出reports文件夹下最新生成的.nmon文件即可。

七、nmon文件解析成图表

这时你就需要下载一个nmon_analyser_v52_1.xlsm工具了,可以在这里下载:

然后打开nmon_analyser_v52_1.xlsm,把刚才生成的nmon文件拖拽进去,就可以生成一个xlsm文件!这个就是结果文件啦!

结果文件大概就是长这个样子:

1.注意事项

使用nmon analyser需要借助Excel的宏,但WPS Office默认没有安装宏,即使你下载了插件,貌似也不能正常使用。所以还是老老实实的使用Microsoft的Office吧,博主使用的2006,能够正常的生成报表。

2.生成的报表中的参数意义

以下图片来自网络哦,仅作参考:



上一篇:Jmeter基础篇(21)教你手动修改Jmeter测试报告和压测结果

测试开发工程师一只,也在不断的学习阶段,平时的小经验不定期分享。
希望看我写的文字的人,可以少走弯路 祝工作学习顺利。
博主经验有限,若有不足,欢迎交流,共同改进~
愿与同在CSDN的你共同进步。
相关推荐
Youkiup23 分钟前
【linux 常用命令】
linux·运维·服务器
qq_2975046127 分钟前
【解决】Linux更新系统内核后Nvidia-smi has failed...
linux·运维·服务器
_oP_i32 分钟前
.NET Core 项目配置到 Jenkins
运维·jenkins·.netcore
weixin_4373982140 分钟前
Linux扩展——shell编程
linux·运维·服务器·bash
小燚~42 分钟前
ubuntu开机进入initramfs状态
linux·运维·ubuntu
字节程序员1 小时前
Jmeter分布式压力测试
分布式·jmeter·压力测试
小林熬夜学编程1 小时前
【Linux网络编程】第十四弹---构建功能丰富的HTTP服务器:从状态码处理到服务函数扩展
linux·运维·服务器·c语言·网络·c++·http
上海运维Q先生1 小时前
面试题整理15----K8s常见的网络插件有哪些
运维·网络·kubernetes
hhhhhhh_hhhhhh_1 小时前
ubuntu18.04连接不上网络问题
linux·运维·ubuntu
冷心笑看丽美人1 小时前
探秘 DNS 服务器:揭开域名解析的神秘面纱
linux·运维·服务器·dns