一.nmon工具介绍
nmon 是一个分析aix和linux性能的免费工具(主要是ibm为自己的aix操作系统开发的,但是也可以用在linux操作系统),而nmon_analyser是nmon的一个工具可以把nmon生成的报告转化成excel报表的形式供查看
nmon 工具可以在一个屏幕上显示所有重要的性能优化信息,并动态地对其进行更新。它并不会消耗大量的 CPU ,通常低于百分之二
下载地址:
http://nmon.sourceforge.net/pmwiki.php?n=Site.Download
http://sourceforge.net/projects/nmon/files/?source=navbar
注意选择和自己机器对应的版本:
linux查看系统版本号:
1.方法1
对于linux系统而已,有成百上千个发行版。对于发行版的版本号查看方法
如以centos为例。输入lsb_release -a即可
该命令适用于所有的linux,包括Redhat、SuSE、Debian等发行版
2.
3.
查看系统位数
同样对于Linux系统而言也有32和64位之分,用上述查看内核方法,输入
uname -a 或 more /proc/version
在内核版本后面会有一个X86_64就是表示64为系统啦
# uname -a
x86_64则说明你是64位内核, 跑的是64位的系统.
i386, i686说明你是32位的内核, 跑的是32位的系统
查看内核的几种方法:
1. uname -a#显示详细的内核信息,
Linux localhost.localdomain 2.6.18-92.1.6.el5xen #1 SMP Wed
Jun 25 12:56:52 EDT 2008 x86_64 x86_64 x86_64 GNU/Linux
2. cat /etc/issue#显示版本类型
Scientific Linux SL release 5.2 (Boron)
Kernel \r on an
\m
3. cat /proc/version
Linux version 2.6.18-92.1.6.el5xen (brewbuilder@norob.fnal.gov) (gcc version 4.1.2
20071124 (Red Hat 4.1.2-42)) #1 SMP Wed Jun 25 12:56:52 EDT 2008
查看操作系统位数:
1.ls / #如果有lib64或这个目录,那操作系统就是64位的
2.getconfig
LONG_BIT 若输出32即为32位系统,64为64位系统
32位的系统中int类型和long类型一般都是4字节,
64位的系统中int类型还是4字节的,但是long已变成了8字节。
inux系统中可 用"getconf
WORD_BIT"和"getconf LONG_BIT"获得word和long的位数。
64位系统中应该分别得到32和64。
3. uname
-a中若为X86示意为64位系统,i386等位32位系统
二.下载安装
nmon默认下载之后只是一个可执行测的文件,但是下载时根据不同的系统来进行区分的
大家可以根据自己的系统选择相应的版本。
执行命令 more /etc/issue 查看系统版本。
首先将下载的nmon_x86_64_centos6文件上传到linux服务器上
[root@localhost source]#cp nmon_x86_64_centos6 /usr/bin
[root@localhost source]#cd /usr/bin
[root@localhost source]# chmod 777 nmon_x86_64_centos6
[root@localhost source]# ./nmon_x86_64_centos6(切换到nmon_x86_rhel45文件所在的目录)
[root@localhost source]# env
[root@localhost source]# mv nmon_x86_64_centos6 nmon
[root@localhost source]# nmon(此时nmon就是全局命令)
也有可能
监控设置
15分钟=900s
#alias nmon15='nmon -f -s3 -c300 -m /root/qumf/'
nmon工具命令的使用:
#nmon -s 300 -c 288 -f -m /tmp
-s 300:表示每300秒采集一次数据,
-c 288 :表示采集288次,300*288=86400秒,刚好是1天的数据,这样运行一次这个程序就会生成一个一天的数据文件,
-m /tmp: 表示生成的数据文件的路径
-f :表示生成的数据文件名中有时间
也可以让其自动监控,每天一个文件夹,每小时一个文件,每分钟或5分采样一次
参数解释:
-s10 每 10 秒采集一次数据。
-c60 采集 60 次,即为采集十分钟的数据。
-f 生成的数据文件名中包含文件创建的时间。
-m 生成的数据文件的存放目录。
nmon -f -s 10 -c 60
-f 表示生成的数据文件名中有时间;
-s 10 表示每 10 秒采集一次数据;
-c 60 表示采集 60 次,10*60=600 秒,
刚好是 10分钟的数据,这样运行一次这个程序就会生成一个采集 10分钟数据的文件。该行命令将在当前目录中创建输出文件,其名称为:<hostname>_date_time.nmon", hostname" 是这台主机的主机名。
更多用法
crontab -e
0 0 * * * /usr/local/nmo -s300 -c288 -f -m /home/nmon/ > /dev/null 2>&1
表示:
300*288=86400 秒,正好是一天的数据。
0 8 * * 1,2,3,4,5 /usr/local/nmon -f -N -m /home/nmon/log -s 30 -c 1200
表示:
周一到周五,从早上08点开始,监控10个小时(到18:00整为止),输出到/home/nmon/log。
范例1:
自动按天采集数据:
在 crontab 中增加一条记录:
0 0 * * * nmon -s300 -c288 -f -m /home/ > /dev/null 2>&1:
300*288=86400 秒,正好是一天的数据。
范例2:
A、执行命令:#crontab -e
B、在最后一行添加如下命令:
0 8 * * 1,2,3,4,5 /nmon/scriptn/mon_x86_rhel52 -f -N -m /nmon/log -s 30 -c 1200
表示:
周一到周五,从早上08点开始,监控10个小时(到18:00整为止),输出到/nmon/log
三、nmon数据采集
1、数据采集
为了实时监控系统在一段时间内的使用情况并将结果记录下来,我们可以通过运行以下命令实现:
1 | #./ nmon -f -t -s30 -c 180 |
参数说明:
l-f:按标准格式输出文件:<hostname>_YYYYMMDD_HHMM.nmon;
l-t:输出中包括占用率较高的进程;
l-s30:每30秒进行一次数据采集
l-c180:一共采集180次
输入命令回车后,将自动在当前目录生成一个hostname_timeSeries.nmon的文件,nmon输出文件的命名方式是服务器名_日期时间.nmon
特别说明:
该命令启动后,会在nmon所在目录下生成监控文件,并持续写入资源数据,直至360个监控点收集完成——即监控1小时,这些操作均自动完成,无需手工干预,测试人员可以继续完成其他操作。如果想停止该监控,需要通过“#ps–ef|grepnmon”查询进程号,然后杀掉该进程以停止监控。
[root@localhost source]# hostname
linux_test
[root@localhost source]# ./nmon -f -s 10 -c 60
[root@localhost source]# ps -ef | grep nmon
root 17815 1 0 08:22 pts/1 00:00:00 ./nmon -f -s 10 -c 60
root 17888 6977 0 08:22 pts/1 00:00:00 grep nmon
[root@localhost source]# ls linux_test_120724_0822.nmon
linux_test_120724_0822.nmon
当我们执行相关命令后,就在当前目录生成了一个以本主机名linux_test开头,以执行日期为规则,nmon结尾的文件,并且我们通过ps命令会看到相关的nmon进程,这里我们当10分钟过去以后我们会发现相关nmon进程会消失的。
linux_test_120724_0822.nmon 就是我们所生成的数据文件,所有的信息都在linux_test_120724_0822.nmon记录,而且我们通过more命令后发现都是我们看不懂的一些文本,这就需要我们把其转化成我们能看懂的excel格式的文件。首先我们把linux_test_120724_0822.nmon文件导出到我们的windows本地。然后我们从http://www.ibm.com/developerworks/wikis/display/Wikiptype/nmonanalyser
下载nmonanalyser软件到windows本地。打开解压缩文件后,我们会发现2个文件,一个是nmonanalyse的说明word格式的说明稳定,另一个是excel格式的nmonanalyse文件。
我们这里所需要的就是excel格式问文件,我们双击打开。
四.生成图形化结果
下载 nmon analyser (生成性能报告的免费工具):
下载地址:
解压之后可以得到一个nmon analyser v34a.xls,
双击打开nmon analyser v34a.xls;
设置excel宏的安全级别调低
选中上图中的选项,
打开nmon_analyser中的excel,然后载入nmon数据,保存输出的excel即可。
动态显示: