nmon进行性能资源监控

一、前言

在工作中可能会遇到需要在压测的时候对Linux服务器进行性能资源监控的情况。这时可以用nmon来对服务器进行监控。

二、nmon的下载安装

1.查看系统信息

cat /etc/os-release

结果为

PRETTY_NAME="Debian GNU/Linux 12 (bookworm)"NAME="Debian GNU/Linux"VERSION_ID="12"VERSION="12 (bookworm)"VERSION_CODENAME=bookwormID=debianHOME_URL="https://www.debian.org/"SUPPORT_URL="https://www.debian.org/support"BUG_REPORT_URL="https://bugs.debian.org/"

很明显,我们的系统为Debian 12

  • 2.查看CPU信息

lscpu

结果为

Architecture:            x86_64  CPU op-mode(s):        32-bit, 64-bit  Address sizes:         36 bits physical, 48 bits virtual  Byte Order:            Little EndianCPU(s):                  16  On-line CPU(s) list:   0-15Vendor ID:               AuthenticAMD  Model name:            AMD Ryzen 7 4800H with Radeon Graphics    CPU family:          23    Model:               96    Thread(s) per core:  2    Core(s) per socket:  8    Socket(s):           1    Stepping:            1    CPU(s) scaling MHz:  100%    CPU max MHz:         2900.0000    CPU min MHz:         0.0000    BogoMIPS:            5800.00    Flags:               fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse ss                         e2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm pni pclmulqdq monitor ssse3 fma cx16 sse4_1                         sse4_2 movbe popcnt aes xsave osxsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy                          abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt tce topoext perfctr_core perfctr_nb bp                         ext perfctr_llc mwaitx fsgsbase bmi1 avx2 smep bmi2 cqm rdt_a rdseed adx smap clflushopt clwb s                         ha_ni umip rdpidVirtualization features:  Virtualization:        AMD-V  Hypervisor vendor:     Windows Subsystem for Linux  Virtualization type:   container

这里可以看出我们系统为x86_64的,CPU为AMD的

  • 3.下载

nmon下载地址:https://nmon.sourceforge.io/pmwiki.php点击左侧Download Binaries ,在右侧找到上面查到的信息对应版本的nmon进行下载

  • 4.解压

将下载好的压缩包放进Linux中,解压。

 

新建文件夹nmonTest,找到对应的或者最近版本的nmon,复制到文件夹中,

mkdir nmonTestcp nmon_x86_64_debian10 ./nmonTest/nmoncd nmonTest

然后需要赋予nmon文件执行权限,否则无法正常执行nmon

chmod u+x nmon

检查依赖

ldd nmon
  • 5.一个小问题

在初次安装时,遇到了问题:error while loading shared libraries: libncurses.so.6: cannot open shared object file: No such file or directory

根据报错内容提示,没有找到共享库libncurses.so.6

解决方法:

缺啥补啥,安装一下该依赖即可​​​​​​​

sudo apt-get install libncurses6  // Debian和Ubuntu等Debian系发行版使用该命令sudo yum install libncurses.so.6 // Red Hat、CentOS等Red Hat系发行版使用该命令

三、在性能测试时使用命令行进行监控并生成报告

  • 1.在前台进行资源监控

 

可根据提示进行动态查看数据,例如,按c可查看cup信息,再次按c取消。

  • 2.在后台进行资源监控

可以在帮助文档中查询具体用法

./nmon -h

以下方命令为例:

./nmon -ft -s5 -c 1000 

nmon的命令其实与JMeter的命令类似

上面命令中

  • -t:使用高频率的进程展示出来

  • -f :输出到指定的文件

  • -s5 -c 1000 :每隔5s采集1次,一共采集1000次(默认采集1天,-s300 -c288)

  • 3.在性能测试中使用

首先需要算出性能测试持续的时间。假设性能测试持续时间为五分钟,那么我们需要将nmon的运行时间设置的长一些。这里我们运行350秒,运行顺序为,先运行nmon,再运行JMeter

./nmon -ft -s5 -c  70

我们可以查看进程,可以发现nmon在运行中,代表在采集中,想要强行停止可以kill掉进程

ps -ef | grep nmon

运行完成后得到结果文件

 

  • 4.结果文件查看

可以发现nmon生成的报告为.nmon格式,那么我们需要怎么查看我们的结果呢?

这时需要使用nmon analyser来进行解析。

下载同样是在nmon官网点击左侧nmon-Analyser,下拉找到下载即可

 

将下载下来的压缩包解压,使用Microsoft Office打开nmon analyser v69_2.xlsm,不建议使用WPS打开,因为WPS使用宏是需要付费的

点击按钮上传生成的.nmon文件生成对应excel

 可查看各项性能指标

​现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:485187702【暗号:csdn11】

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走! 希望能帮助到你!【100%无套路免费领取】

  • 20
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值