LoadRunner使用笔记(6)-性能测试监控工具nmon安装及使用方法
概述
监控,在检查系统问题或优化系统性能工作上是一个不可缺少的部分。通过操作系统监控工具监视操作系统资源的使用情况,间接地反映了各服务器程序的运行情况。根据运行结果分析可以帮助我们快速定位系统问题范围或者性能瓶颈点。
nmon是一种在AIX与各种Linux操作系统上广泛使用的监控与分析工具,相对于其它一些系统资源监控工具来说,nmon所记录的信息是比较全面的,它能在系统运行过程中实时地捕捉系统资源的使用情况,并且能输出结果到文件中,然后通过nmon_analyzer工具产生数据文件与图形化结果。
nmon所记录的数据包含以下一些方面(也是我们在寻找问题过程中所关注的资源点):
- cpu占用率
- 内存使用情况
- 磁盘I/O速度、传输和读写比率
- 文件系统的使用率
- 网络I/O速度、传输和读写比率、错误统计率与传输包的大小
- 消耗资源最多的进程
- 计算机详细信息和资源
- 页面空间和页面I/O速度
- 用户自定义的磁盘组
- 网络文件系统
另外在AIX操作系统上,nmon还能监控到其他的一些信息,如异步I/O等。
下载安装nmon
如何获取nmon呢?我们可以在IBM的官方网站上免费下载获取,下载网址为:http://www.ibm.com/developerworks/wikis/display/WikiPtype/nmon。
nmon的安装步骤如下:
1)用root用户登录到系统中;
2)建目录:#mkdir /test;
3)把nmon用ftp上传到/test,或者通过其他介质拷贝到/test目录中;
4)执行授权命令:#chmod +x nmon。
nmon数据采集
- 数据采集
为了实时监控系统在一段时间内的使用情况并将结果记录下来,我们可以通过运行以下命令实现:
#./ nmon -f -t -s 30 -c 180
n -f:按标准格式输出文件:_YYYYMMDD_HHMM.nmon;
n -t:输出中包括占用率较高的进程;
n -s 30:每30秒进行一次数据采集
n -c 180:一共采集180次
输入命令回车后,将自动在当前目录生成一个hostname_timeSeries.nmon的文件,如果hosname为test1,生产的文件为:test1_090308_1313.nmon。
通过sort命令可以将nmon结果文件转换为csv文件:
# sort -A test1_090308_1313.nmon > test1_090308_1313.csv
执行完sort命令后即可在当前目录生产test1_090308_1313.csv文件。
- 生成图形化结果
为了分析nmon监控获得的结果,IBM还提供了相应的图形化分析工具nmon_analyser,通过nmon analyser.xls工具可以把监控的结果文件转换成excel文件,方便分析系统的各项资源占用情况。
nmon analyser.xls工具的使用方法如下:
(1)打开nmon analyser.xls工具;
(2)调整excel宏安全性:工具-宏-安全性
(修改安全级别与可靠发行商)
(选择)安全级别:低
(勾上)信任所有安装的加载项和模板
(勾上)信任对于“Visual Baisc项目”的访问
(3)修改完后,确定-关闭nmon analyser.xls,重新打开;
(4)点击Analyse nmon data按钮,加载之前下载的test1_090308_1313.csv文件。
以下是分析结果的截图:
以上就是nmon的简单描述与使用介绍,大家可以根据自己所采集到的结果分析系统的情况。 - 数据分析
用nmon_analyser_hzt.xls等分析工具打开nmon结果文件,如果出现无法加载宏的提示,点击工具-宏-安全性,将安全及调至低,保存后,重新打开。
Ø Sys_summ页,为服务器资源使用率汇总
我们需求的主要数据为cpu,mem,io和net。如下图:
以上内容,如实填写至测试报告中。
①Cpu_all页,是服务器cpu使用率的详细数据
我们主要关注的内容为下图:
Cpu使用率分为三部分,系统、用户和等待,分别对应图中红色、蓝色和绿色部分。cpu使用率100%的情况,如果红色占大部分,说明系统进程本身占据大部分cpu资源,可考虑系统是否存在过多僵尸进程或者系统进程存在死循环等原因;如果蓝色占大部分,说明用户进程占用大量cpu资源,可考虑被压系统是否压力过大,或者被压系统存在大量运算等消耗cpu资源的操作。
② Mem页,是服务器内存使用率的概况。
图内蓝色线条为物理内存使用率,红色线条为虚拟内存使用率。我们统计的内存使用率为:(已用物理内存+已用虚拟内存)/(物理内存+虚拟内存)x100%。
③ Memnew页,是服务器内存使用率的详细数据
我们重点关注下图:
图中蓝色部分为系统占用内存,紫色为进程占用内存,黄色为文件占用内存。假设出现内存使用率100%的情况,如蓝色+紫色部分较低,其余全是黄色部分,则说明系统存在大量文件操作,文件被写入内存以加速读写,不影响内存实际使用效率;如蓝色+紫色部分占90%以上,则说明内存使用率较高,需要结合page页综合分析是否存在内存泄露等问题。
④Page页,是交换空间的使用情况
pgin每秒钟所读入的页数,包括从文件系统读取的页数
pgout每秒钟所写出的页数,包括写到文件系统的页数
pgsin每秒钟从页面空间所读取的页数
pgsout每秒钟写到页面空间的页数
fsin分析器计算的数据为pgin-pgsin的图形处理所用
fsout分析器计算的数据为pgout-pgsout的图形处理所用
如果存在大量的频繁换入换出现象,则说明物理内存与虚拟内存之间存在频繁的切换,物理内存可能存在问题。
⑤ Disk_SUMM页,磁盘
Disk Read 每秒读的千字节数目 图中为蓝色部分
Disk Write 每秒写的千字节数目 图中为红色部分
IO/sec 每秒进行的IO数(一次IO就是控制操作一次读或写,IO块就是读或写的大小),图中为上方黑色的线,报告中写的是这个参数的值
⑥ Net页 ,网络
Total read 每秒接收到的千字节的数目,如图蓝色部分
Total write 每秒发送的千字节的数目,如图红色部分
网络=Total read-Total write
网络的指标一般要根据设备来确定,百兆网卡的意思是每秒能够传输的网络流量是100Mbps,即最大的下载速度是12.5MB/s,一般服务器是千兆网卡,即125MB/s
⑦Top页,是各种使用率的top事件
如下图,top页里记录了各个进程的cpu使用率,mem使用率,disk使用率以及net使用率。我们可以从图中轻松抓取到最占用cpu或者最占用mem的程序,为调优提供线索。