nmon基本介绍,
nmon是帮助在一个屏幕上显示所有重要的性能优化信息,并动态地对其进行更新。
分析工具
分析 AIX 和 Linux 性能的免费工具, 这个高效的工具可以工作于任何哑屏幕、telnet 会话、甚至拨号线路。另外,它并不会消耗大量的 CPU 周期,通常低于百分之二。在更新的计算机上,其CPU使用率将低于百分之一。 使用哑屏幕,在屏幕上对数据进行显示,并且每隔两秒钟对其进行更新。然而,您可以很容易地将这个时间间隔更改为更长或更短的时间段。如果您拉伸窗口,并在X Windows、VNC、PuTTY 或类似的窗口中显示这些数据,nmon 工具可以同时输出大量的信息。 nmon 工具还可以将相同的数据捕获到一个文本文件,便于以后对报告进行分析和绘制图形。输出文件采用电子表格的格式 (.csv)。
性能介绍 nmon 工具可以为 AIX 和 Linux 性能专家提供监视和分析性能数据的功能,
其中包括:
CPU 使用率
内存使用情况
内核统计信息和运行队列信息
磁盘 I/O 速度、传输和读/写比率 文件系统中的可用空间
磁盘适配器
网络 I/O 速度、
传输和读/写比率 页面空间和页面速度
CPU 和 AIX 规范
消耗资源最多的进程
IBM HTTP Web 缓存
用户自定义的磁盘组
计算机详细信息和资源
异步 I/O,仅适用于 AIX
工作负载管理器 (WLM),仅适用于 AIX
IBM TotalStorage® Enterprise Storage Server® (ESS) 磁盘,
仅适用于 AIX
网络文件系统 (NFS)
动态 LPAR (DLPAR) 更改,仅适用于面向 AIX 或 Linux 的 pSeries p5 和 OpenPower、
===============================================================
一、nmon的安装(所有的包)
1.下载地址:http://nmon.sourceforge.net/pmwiki.php?n=Site.Download
2.下载对应系统的 nomn 工具(我用 centos6.5_64 位下载的是 nmon_linux_14i.tar.gz)
3.Linux 中使用 ROOT 账户进入后,创建目录 Nmon(mkdir /nmon)
4.进入 Nmon 目录中通过 rz 命令导入 nmon_linux_14i.tar.gz 压缩包到 Linux 下 Nmon 目录中
5.解压压缩包 tar -zxvf nmon_linux_14i.tar.gz
6.修改文件权限 chmod 777 nmon_x86_64_sles11
7.将 nmon_x86_64_sles11 启动文件重命名为 Nmon (mv nmon_x86_64_sles11 Nmon),目的是方便执行启动操作命令
8.启动 Nmon (./Nmon)启动后如下:
备注:如果./Nmon启动不了,就用./nmon_x86_sles11 启动
=========================================================
nmon的使用
Nmon 操作
Nmon 启动后可以显示 Linux 系统 CPU、内存、进程信息,包括了 CPU 的用户、系统、等待和空闲状态值,可用内存、缓存大小以及进程的 CPU 消耗等详细指标。该种方式显示信息实时性强,能够及时掌握系统承受压力下的运行情况,每颗 CPU 利用率是多少、内存使用多少、网络流量多少、磁盘读写……这些数据均是实时刷新,一目了然。
q : 停止并退出 Nmon h : 查看帮助 c : 查看 CPU 统计数据 m : 查看内存统计数据 d : 查看硬盘统计数据 k : 查看内核统计数据 n : 查看网络统计数据 N : 查看 NFS 统计数据 j : 查看文件系统统计数据 t : 查看高耗进程 V : 查看虚拟内存统计数据 v : 详细模式
h : 查看帮助
c : 查看 CPU 统计数据
m : 查看内存统计数据
d : 查看硬盘统计数据
k : 查看内核统计数据
n : 查看网络统计数据
N : 查看 NFS 统计数据
NFS
j : 查看文件系统统计数据
t : 查看高耗进程
V : 查看虚拟内存统计数据
v : 详细模式
采集数据 #./nmon -s10 -c60 -f -m /home/
-s10 每 10 秒采集一次数据
-c60 采集 60 次,即为采集十分钟的数据
-f 生成的数据文件名中包含文件创建的时间
-m 生成的数据文件的存放目录
这样就会生成一个 nmon 文件,并每十秒更新一次,直到十分钟后
nmon 运行本身是会消耗系统资源,如需关闭 nmon,直接 kill 掉
ps -ef | grep nmon
kill -9 pid
(二)
生成报表:
(1)下载 nmonanalyser (生成性能报告的免费工具)
打开压缩包;
(2)将之前生成的 nmon 结果数据文件通过 sz 命令传到 Windows 桌面
用 Excel 打开分析工具 nmon analyser.xlsm
安装wps
wps2019vba.exe是wps2019版本的宏程序破解工具
点击 Excel 文件中的 "Analyze nmon data" 按钮,选择 nmon 数据文件,这样就会生成一个分析后的结果文件: hostname_090824_1306.nmon.xls
用 Excel 打开生成的文件就可以看到结果了
wps宏都被禁止
如果宏不能运行,需要做以下操作:
开发工具 -> 宏 -> 安全性 -> 中,然后再打开文件并允许运行宏
如果宏被禁用,需要安装破解插件
====================================================================
分析性能测试
一:CPU信息
SYS_SUMM图表:
1.折线图中蓝线为cpu占有率变化情况;粉线为磁盘IO的变化情况;
2.下面表各种左边的位磁盘的总体数据,包括如下几个:
Avg tps during an interval:每个间隔时间内,平均每秒IO数,也可以理解为提交处理的次数
Max tps during an interval:每个间隔时间内,每秒最大IO次数;
Max tps interval time:最大传送次数出现的时间点;
Total number of Mbytes read:整个监控时间内读的字节数;
Total number of Mbytes written:整个监控时间内写的字节数;
Read/Write Ratio:读写比率;
3.右边的为CPU的总体数据,可以获取如下信息;
cpu被User/Sys/Wait所占百分比;
cpu整体平均空闲率/占有率,以及最大的空闲率/占有率;
cpu各项数据最大值和平均值的比率;
CPU_ALL页面:该页面可以看到如下图的CPU整体上在每个监控点的数据,包括User%、Sys%、Wait%、Idle%、CPU%以及CPUs(cpu个数)及对应图表
关键指标名称及含义:
User% |
显示在用户模式下执行的程序所使用的 CPU 百分比; |
Sys% |
显示在内核模式下执行的程序所使用的 CPU 百分比; |
Wait% |
显示等待 IO 所花的时间百分比; |
Idle% |
显示 CPU 的空闲时间百分比; |
CPU% |
CPU总体占用情况; |
Cpu使用率分为三部分,系统、用户、等待、闲置等,分别对应图中,cpu使用率100%的情况,如果橙色占大部分,说明系统进程本身占据大部分cpu资源,可考虑系统是否存在过多僵尸进程或者系统进程存在死循环等原因;如果蓝色占大部分,说明用户进程占用大量cpu资源,可考虑被压系统是否
压力过大,或者被压系统存在大量运算等消耗cpu资源的操作。
CPU_SUMM页面:该页面可以看到如下图的各个CPU在总体数据,User%、Sys%、Wait%、Idle%(闲置)以及对应图表
二:磁盘信息
DISK_SUMM图表:记录各个监控时间点的磁盘读写和IO次数
关键指标名称及含义:
Disk total kb/s Hostname |
执行间隔时间列表; |
Disk Read kb/s |
每个磁盘执行采样数据;(磁盘设备的读速率) |
Disk Write kb/s |
每个磁盘执行采样数据;(磁盘设备的写速率) |
IO/sec |
每秒钟输出到物理磁盘的传输次数; |
DISKBSIZE页面:详细记录了各监控时间点每个hdisk的磁盘块的大小,如我的服务器包括了sda、sda1、sda2、sda3
三:内存信息
MEM图表:该页面包含了如下图各监控时间点内存各方面的信息数据和图表
memtoatl:服务器总内存,单位M;
swaptotal:虚拟总内存;
memfree:剩余总内存;
swapfree:剩余虚拟内存;
四:网络信息
Net页面:该页面包含了每个监控时间点各个网络适配器的读写等数据传输速率(千字节/秒),如我的服务器包括适配器有eth0和lo
Total read 每秒接收到的千字节的数目,如图蓝色部分
Total write 每秒发送的千字节的数目,如图红色部分
网络=Total read-Total write
网络的指标一般要根据设备来确定,百兆网卡的意思是每秒能够传输的网络流量是100Mbps,即最大的下载速度是12.5MB/s,一般服务器是千兆网卡,即125MB/s
。