Nmon 工具安装和使用

1. Nmon 工具简介

Nmon是一款计算机性能系统监控工具。优点: 免费,体积小,安装简单,耗费资源低,广泛应用于AIX和Linux系统。

2  Nmon 下载安装

1) 下载tar包

方法一: wget 下载

wget https://nchc.dl.sourceforge.net/project/nmon/nmon16d_x86.tar.gz

执行命令后,默认nmon16d_x86.tar.gz会下载至当前目录,直接解压即可。

方法二:官网下载tar包

下载地址http://nmon.sourceforge.net/pmwiki.php?n=Site.Download

2) 解压

3) 添加权限

a.  对 执行文件添加执行权限 (根据自己系统的实际版本查找相应的使用命令)

chmod +x nmon_x86_64_linux

b. 再把该程序文件加入环境变量运行目录

mv nmon_x86_64_linux /usr/local/bin/nmon

3  运行Nmon

1)交互式运行

直接在命令行中输入nmon,会直接跳出 nmon 的交互式窗口

直接输入c,会展示当前节点的cpu 利用率。下图是展示 c m d (cpu  Memory disks )的使用情况

参数含义介绍:

4  采集数据

性能测试时,需要根据测试场景的执行情况,分析一段时间内系统资源的变化,这时需要nmon采集数据并保存下来,以下是常用的参数:

f 参数:生成文件,文件名=主机名+当前时间.nmon

T 参数:显示资源占有率较高的进程

s 参数:-s 10表示每隔10秒采集一次数据

c 参数:-s 10表示总共采集十次数据

m 参数:指定文件保存目录

例如:

如每隔5秒采集一次,一共采集24次,就是2分钟的数据(生成的文件已标红):

命令:nmon -f -s 5 -c 24 -m ./

执行完命令后,会在当前指定目录下生成一个命名为 hostname_year_mouth_day.nmon 的文件。如下图所示

等nmon 运行结束后,将该文件dump至本地进行数据分析

5 分析数据

1)下载nmon analyser

借助nmon analyser可以把nmon采集的数据生成直观的Excel表,下载地址

http://nmon.sourceforge.net/pmwiki.php?n=Site.Nmon-Analyser

下载后解压,有word和excel两个文档,PDF是说明文档,包括更新日志,详细参数等,其中的Excel就是nmon analyser工具了

2)打开nmon analyser生成图表

双击打开nmon analyser v66.xlsm(注意要启用宏)点击Analyze nmon data按钮:

Excel是自带宏插件的,如果宏不能运行,需要做以下操作:

工具 -> 宏 -> 安全性 -> 中,然后再打开文件并允许运行宏.

成功打开nmon analyser后,点击Analyze nmon data按钮,选择nmon数据文件,会再次提示另存为,选择地址保存即可。 

 下图就是nmon生成的数据报告截图,底部可以切换其他资源信息

1 系统汇总界面:对应标签页(SYS_SUMM)

页面显示项主要有主机名,执行日期,系统cpu使用情况(蓝线),系统I/O情况(粉红线),其中坐标左纵轴为系统cpu(user%+sys%)使用率,横轴为运行时长(下图为一个小时),右纵轴为系统磁盘传输(Disk xfers),坐标下侧为统计信息:系统I/O情况(一个采集间隔内的平均值、最大值、出现最大值的时间),系统CPU使用情况等。

参数说明

Avg disk tps during an interval采集间隔内磁盘平均I/O次数该值等于Sheet DISK_SUMM中IO/sec列的平均值

Max disk tps during an interval采集间隔内磁盘最大I/O次数该值等于Sheet DISK_SUMM中IO/sec列的最大值

Max disk tps interval time显示磁盘最大I/O所在时间点

Total number of Mbytes read采集间隔内磁盘读的总兆字节数

Total number of Mbytes written采集间隔内磁盘写的总兆字节数

Read/Write Ratio读写比率

User%采集间隔内所有CPU在User Mode下的Time占比(Avg、Max)

Sys%采集间隔内所有CPU在System Mode下的Time占比(Avg、Max)

Wait%采集间隔内所有CPU处于空闲且等待I/O完成的时间比例(Avg、Max)

Idel%采集间隔内所有CPU处于空闲Time的占比(Avg、Max)

CPU%CPU总体占用情况(Avg、Max)

如果一个CPU被充分使用,CPU占用时间配比应为User%(65-70%),Sys%(30-35%),Idel%(0-5%)

如果Sys%占比过大说明系统进程本身占领大部分cpu资源,可考虑系统是否存在过多僵尸进程或者系统进程存在死循环等原因;

CPU Wait%占比过大说明可能IO或内存方面存在瓶颈,可能是由于内存不够而引起频繁的的数据交换。

2.系统信息:标签页(AAA)

信息主要包括:执行命令,主机CPU数,操作系统内核版本信息,主机名等信息。

3.系统详细信息:标签页(BBBP)

页面信息主要包括:操作系统版本,主机磁盘信息,主机CPU型号、主频信息,内存信息,网卡信息等。

4.磁盘读写情况汇总:标签页(DISK_SUMM,DISKBSIZE,DISKBUSY,DISKREAD,DISKWRITE,DISKXFER)

磁盘的读、写及I/O统计信息,系统各磁盘分区的读写情况。此处重点关注DISK_SUMM即可。

DISK_SUMM按采集时间显示所有磁盘和分区的Read/Write的速率(KB/s)和所有磁盘和分区的I/O率。

5.CPU使用情况:标签页(CPU_ALL,CPU_SUMM,CPU001,CPU002,CPU003,CPU004…)

包括主机CPU使用情况汇总以及每个CPU的运行情况。

此处重点关注CPU_ALL页面。CPU_ALL页面可以看到如下图的CPU整体上在每个监控点的数据,包括User%、Sys%、Wait%、Idle%、Steal%、CPU%以及CPUs(cpu个数)及对应图表。

6.系统网络情况:标签页(NET,NETPACKET)

反映系统的网络运行情况,系统各个网络适配器读写的数据包数。此处重点关注NET页面。

NET页面显示系统中每个网络适配器的数据传输速率(千字节/秒)。

让我们一起开心的玩耍吧。。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容