-- linux 解压 tar.gz 包 命令: tar -xzvf nmon16h_helpsystems_v2.tar.gz
-- 查看服务器信息, lsb_release -a查看当前服务器操作系统版本信息
-- 启动命令 ,到目录下 ./nmon_x86_64_centos6 根据服务器版本选择
-- nmon 命令
操作快捷键
键入“c”查看系统CPU使用情况
键入“m”查看系统内存使用情况
键入“d”查看系统磁盘I/O情况
键入“h”查看帮助信息
q 停止并退出 Nmon
h 查看帮助
c 查看 CPU 统计数据
m 查看内存统计数据
k 查看内核统计数据
n 查看网络统计数据
N 查看 NFS 统计数据
j 查看文件系统统计数据
t 查看高耗进程
V 查看虚拟内存统计数据
v 详细模式
后台监控
为了配合性能测试,我们往往需要将一个时间段内系统资源消耗情况记录下来,这时可以使用命令在远程窗口执行命令:
cd /app/nmon/ && ./nmon_x86_64_centos6 -f -N -m ./reportData -s 5 -c 120
./nmon/ nmon_x86_rhel5 -f -N -m /nmon/log -s 30 -c 120
执行./nmon -s3 -c60 -f -m ./report -s3为每3s收集一次性能信息,-c60为收集60次,-f为生成的文件名包含该文件创建时间,
其中各参数表示:
-f 按标准格式输出文件:_YYYYMMDD_HHMM.nmon
-N include NFS sections
-m 切换到路径去保存日志文件
-s 每隔n秒抽样一次,这里为30
-c 取出多少个抽样数量,这里为120,即监控=120*(30/60/60)=1小时
特别说明:
该命令启动后,会在nmon所在目录下生成监控文件,并持续写入资源数据,直至360个监控点收集完成——即监控1小时,这些操作均自动完成,无需手工干预,测试人员可以继续完成其他操作。如果想停止该监控,需要通过“#ps–ef|grepnmon”查询进程号,然后杀掉该进程以停止监控。
通过sort命令可以将nmon结果文件转换为csv文件:
1
# sort -A hostname_timeSeries.nmon> hostname_timeSeries.nmon.csv
执行完sort命令后即可在当前目录生产hostname_timeSeries.nmon.csv文件。
2、生成图形化结果
为了分析nmon监控获得的结果,IBM还提供了相应的图形化分析工具nmon_analyser,通过nmonanalyser.xls工具可以把监控的结果文件转换成excel文件,方便分析系统的各项资源占用情况。
定时任务
除配合性能测试的短期监控,我们也可以实现对系统的定期监控,作为运营维护阶段的参考。定期监控实现如下:
1) 执行命令:#crontab –e
2) 在最后一行添加如下命令:
0 8 * * 1,2,3,4,5 /nmon/nmon_x86_rhel5 -f -N -m /nmon/log -s 30 -c 1200
表示:
周一到周五,从早上08点开始,监控10个小时(到18:00整为止),输出到/nmon/log
测试指标可视化
nmon命令 生成的nmon可以通过工具进行可视化展示,一般可以使用nmonchart、nmon_analyser
nmonchart
nmonechart 使用Google charts 生成html报告,唯一的缺点是google charts的接口被国内墙了。
----------------- 安装图表化工具
wget http://sourceforge.net/projects/nmon/files/nmonchart31.tar
tar -xvf nmonchart31.tar
chmod u+x nmonchart
mv nmonchart /usr/bin/
----------- 分析参数 ,若文件超过10M 需要用64位EXCEL 打开工具
以上就是nmon的简单描述与使用介绍,大家可以根据自己所采集到的结果分析系统的情况。点击在EXCEL工具下的标签可以看见不同的性能报告,参考如下:
sheet名称
sheet含义
SYS_SUMM
系统汇总,蓝线为cpu占有率变化情况,粉线为磁盘IO的变化情况;
AAA
关于操作系统以及nmon本身的一些信息;
BBBB
系统外挂存储容量以及存储类型;
BBBC
系统外挂存储位置、状态以及描述信息;
BBBD
磁盘适配器信息;(包含磁盘适配器名称以及描述)
BBBE
包含通过lsdev命令获取的系统设备及其特征,显示vpaths和hdisks之间的映射关系;
BBBG
显示磁盘组详细的映射关系;
BBBL
逻辑分区(LPAR)配置细节信息;
BBBN
网络适配器信息;
BBBP
vmtune, schedtune, emstat和lsattr命令的输出信息;
CPUnn
显示执行之间内CPU占用情况,其中包含user%、sys%、wait%和idle%;
CPU_ALL
所有CPU概述,显示所有CPU平均占用情况,其中包含SMT状态;
CPU_SUMM
每一个CPU在执行时间内的占用情况,其中包含user%、sys%、wait%和idle%;
DGBUSY
磁盘组每个hdisk设备平均占用情况;
DGREAD
每个磁盘组的平均读情况;
DGSIZE
每个磁盘组的平均读写情况(块大小);
DGWRITE
每个磁盘组的平均写情况;
DGXFER
每个磁盘组的I/O每秒操作;
DISKBSIZE
执行时间内每个hdisk的传输块大小;
DISKBUSY
每个hdisk设备平均占用情况;
DISKREAD
每个hdisk的平均读情况;
DISKWRITE
每个hdisk的平均写情况;
DISKXFER
每个hdisk的I/O每秒操作;
DISKSERV
本sheet显示在每个收集间隔中hdisk的评估服务时间(未响应时间)
DISK_SUMM
总体disk读、写以及I/O操作;
EMCBSIZE/FAStBSIZE
执行时间内EMC存储的传输块大小;
EMCBUSY/FAStBUSY
EMC存储设备平均占用情况;
EMCREAD/FAStREAD
EMC存储的平均读情况;
EMCWRITE/FAStWRITE
EMC存储的平均写情况;
EMCXFER/FAStXFER
EMCSERV/FAStSERV
ESSBSIZE
本sheet记录在系统中每个vpaths下读写操作的平均数据传输大小(blocksize) Kbytes
ESSBUSY
本sheet记录使用ESS系统的每个vpaths下的设备繁忙情况
ESSREAD
本sheet记录在系统中每个vpaths下读取操作的 data rate (Kbytes/sec)
ESSWRITE
本sheet记录在系统中每个vpaths下写入操作的 data rate (Kbytes/sec)
ESSXFER
本sheet记录在系统中每个vpaths下每秒的IO操作
ESSSERV
本sheet显示在每个收集间隔中vpaths的评估服务时间(未响应时间)
FILE
本sheet包含nmon内核内部的统计信息的一个子集,跟sar报告的值相同
FRCA
IOADAPT
对于BBBCsheet每个IO适配器列表,包含了数据传输速度为读取和写入操作(千字节/秒)和I / O操作执行的总数量
JFSFILE
本sheet显示对于每一个文件系统中,在每个间隔区间正在被使用的空间百分比
JFSINODE
本sheet显示对于每一个文件系统中,在每个间隔区间正在被使用的inode百分比
LARGEPAGE
本图表显示Usedpages和Freepages随着时间的变化
LPAR
MEM
本sheet主图上显示空闲实存的数量
MEMUSE
除 %comp参数外,本sheet包含的所有项都和vmtune命令的报告中一样
MEMNEW
本sheet显示分配的内存片信息,分三大类:用户进程使用页,文件系统缓存,系统内核使用页
NET
本sheet显示系统中每个网络适配器的数据传输速率(千字节/秒)
NETPACKET
本sheet统计每个适配器网络读写包的数量;这个类似于netpmon –O dd 命令
NFS sheets
PAGE
本sheet统计相关页信息的记录
PROC
本sheet包含nmon内核内部的统计信息。其中RunQueue和Swap-in域是使用的平均时间间隔,其他项的单位是比率/秒
PROCAIO
本sheet包含关于可用的和active的异步IO进程数量信息.
TOP
UARG
WLM sheets
ZZZZ