一、安装nmon
- 在线安装
wget http://jaist.dl.sourceforge.net/project/nmon/nmon16d_x86.tar.gz - 下载安装
下载地址:http://sourceforge.net/projects/nmon/files/?source=navbar
选择Linux版本安装
- 需要使用root用户将nmon安装包上传到服务器解压;
解压:tar zxvf nmon16d_x86.tar.gz
mv nmon_x86_64_rhel54 nmon 重命名为nmon
chmod 755 nmon
cp nmon_x86_64_rhel54 /usr/local/bin/nmon
- 添加nmon命令,以后就可以直接使用nmon命令进入nmon监控界面
- 增加全局环境变量
- 例如nmon安装在/usr/local/bin/目录下
vi /etc/profile
- 在文件底部填加环境变量
nmon
export NMON_HOME=/opt/nmon
export PATH=$NMON_HOME:$PATH
使配置文件生效
source /etc/profile
- 运行nmon:./nmon_x86_64_rhel6 -s10 -c60 -f -m . 此时,会自动生成log文件
- 命令解释:
-s10每 10 秒采集一次数据。 -c60采集 60 次,即为采集十分钟的数据。
-f生成的数据文件名中包含文件创建的时间。
-m生成的数据文件的存放目录。
-nmon-h查看更多帮助信息。
这样就会生成一个 nmon 文件,并每十秒更新一次,直到十分钟后。
生成的文件名如:xxxxxx _081324_1206.nmon ,是这台主机的主机名。
也可以在启动nmon后,运行以下命令来采集数据 :nmon -s 5 -c 120 -F test_15thread_30min_101.nmon 表示:每5秒采集一个数据,共采集120次,也就是取压测10min的数据.
二、数据分析
- 下载 nmon analyser (生成性能报告的免费工具):
- 下载页面:https://www.ibm.com/developerworks/community/wikis/home?lang=zh#!/wiki/Power%20Systems/page/nmon_analyser
- 下载地址:https://www.ibm.com/developerworks/community/wikis/form/anonymous/api/wiki/61ad9cf2-c6a3-4d2c-b779-61ff0266d32a/page/b7fc61a1-eef9-4756-8028-6e687997f176/attachment/721e9797-b5fc-41d7-9b2f-5bd2aa2c8f7d/media/nmon_analyser_34a.zip
- 解压之后可以得到一个nmon analyser v34a.xls,双击打开
-
点击中间的按钮 Analyse nmon data ,选择 nmon 数据文件,这样就会生成一个分析后的结果文件。最后得到的报表如下
-
Sys_summ页,为服务器资源使用率汇总
我们需求的主要数据为cpu,mem,io和net。如下图:
- Cpu_all页,是服务器cpu使用率的详细数据
Cpu使用率分为三部分,系统、用户和等待,分别对应图中红色、蓝色和绿色部分。cpu使用率100%的情况,如果红色占大部分,说明系统进程本身占据大部分cpu资源,可考虑系统是否存在过多僵尸进程或者系统进程存在死循环等原因;如果蓝色占大部分,说明用户进程占用大量cpu资源,可考虑被压系统是否压力过大,或者被压系统存在大量运算等消耗cpu资源的操作。
故: CPU取CPU_ALL中User%的平均值:
- Net页 网络
Total read 每秒接收到的千字节的数目,如图蓝色部分
Total write 每秒发送的千字节的数目,如图红色部分
网络=Total read-Total write
网络的指标一般要根据设备来确定,百兆网卡的意思是每秒能够传输的网络流量是100Mbps,即最大的下载速度是12.5MB/s,一般服务器是千兆网卡,即125MB/s
故:net取 net页面中ens160-total字段平均值