一、NMON介绍
nmon是一种在AIX与各种Linux操作系统上广泛使用的监控与分析工具, nmon所记录的信息是比较全面的,它能在系统运行过程中实时地捕捉系统资源的使用情况,并且能输出结果到文件中。nmon工具可以帮助在一个屏幕上显示所有重要的性能优化信息,并动态地对其进行更新。并且,nmon运行不会占用过多的系统资源,通常情况下CPU利用率不会超过2%。针对不同的操作系统版本,nmon有相应版本的程序。
我使用的NMON软件包:nmon_linux_14g.tar.gz 这是一个集合包,里面有各种操作系统的版本
二、NMON安装
1.将NMON软件拷贝至服务器的/usr/local/nmon目录下,没有的话请先创建一个。
2.解压文件 tar zxf nmon_linux_14g.tar.gz
3.选择对应操作系统的文件,对应我的服务器操作系统,选的是:nmon_x86_64_sles11
4.chmod +x nmon_x86_64_sles11
5.mv nmon_x86_64_sles11 /usr/local/bin/nmon
三、NMON使用:
NMON使用很简单,直接执行命令
nmon
即可
实际工作中,nmon有三种常用的使用模式,分别是实时监控、后台监控和定期监控模式。下面分别加以介绍。
1、实时监控:在完成配置后,只需要“#./nmon”命令即可运行程序,通过一些快捷键调取关心的系统资源指标进行显示,如按键“C”可以查看CPU相关信息;按键“D”可以查看磁盘信息;按键“T”可以查看系统的进程信息;“M”对应内存、“N”对应网络等等,完整的快捷键对应内容可以通过帮助(按键“H”)查看,可以显示Linux系统CPU、内存、进程信息,包括了CPU的用户、系统、等待和空闲状态值,可用内存、缓存大小以及进程的CPU消耗等详细指标。该种方式显示信息实时性强,能够及时掌握系统承受压力下的运行情况,每颗CPU利用率是多少、内存使用多少、网络流量多少、磁盘读写……这些数据实时刷新,一目了然。但是如果我们希望将一段时间的资源情况记录下来,以备后续的分析工作,则需要以另一种方式使用nmon。
2、后台监控:为了配合性能测试,我们往往需要将一个时间段内系统资源消耗情况记录下来,这时可以使用命令:
nmon -s10 -c60 -f -m /home/
参数解释:
-s10 每 10 秒采集一次数据。
-c60 采集 60 次,即为采集十分钟的数据。
-f 生成的数据文件名中包含文件创建的时间。
-m 生成的数据文件的存放目录。
这样就会生成一个 nmon 文件,并每十秒更新一次,直到十分钟后。
生成的文件名如: hostname_090824_1306.nmon ,"hostname" 是这台主机的主机名。
该命令启动后,会在命令指定目录下生成监控文件,并持续写入资源数据,直至60个监控点收集完成——即监控10分钟,这些操作均自动完成,无需手工干预,测试人员可以继续完成其他操作。如果想停止该监控,需要通过“#ps –ef|grep nmon”查询进程号,然后杀掉该进程以停止监控。
3、定期监控:除配合性能测试的短期监控,我们也可以实现对系统的定期监控,作为运营维护阶段的参考。定期监控可通过“#crontab -e”命令实现,在最后一行添加“0 8 * * 1,2,3,4,5 /nmon -f -s 30 -c 1200”,表示:周一到周五,从早上08点开始,监控10个小时(到18:00整为止)。(这个目前还没用过,仅供参考)
四、生成性能报告
通过分析后台监控生成nmon文件。可以生成资源性能报告,便于分析和统计。
性能报告生成工具:nmon_analyser.zip
使用方法:
1.首先把nmon生成的监控文件nmon文件拷贝至本地机器
2.解压该分析工具,用 Excel 打开分析工具 nmon analyser v33C.xls ,如果宏不能运行,需要做以下操作:工具 -> 宏 -> 安全性 -> 中,然后再打开文件并允许运行宏
3.点击xls中的"analyse nmon data",选择nmon文件
4.生成性能报告