一 、nmon部署安装:
部署编译好的可执行程序
1.先查看需要部署的服务器系统版本。
cat /etc/system-release
#Red Hat Enterprise Linux Server release 6.5 (Santiago)
2.根据系统版本选择对应的nmon版本,上传到服务器中。
3.在使用nmon工具之前应先先查看nmon工具的可执行权限,若权限不够可以使用chmod命令进行修改。
chmod 777 nmon工具包名称
4.执行./nmon_xx_xx_ubntu(nmon工具名称)启动nmon,如果nmon的版本与linux操作系统不对应,会报如下错误:
bash: ./nmon_x86_64_ubuntu7: cannot execute binary file: Exec format error。
如果出现NMON界面,说明部署成功。
二、nmon执行:
1.执行命令: ./nmon -f -s 30 –c 100 -m /home/app/
# 参数说明
-f 监控结果以文件形式输出,默认机器名+日期.nmon格式
-F 指定输出的文件名,比如test.nmon
-s 指的是采样的频率,单位为秒
-c 指的是采样的次数,即以上面的采样频率采集多少次
-m 指定生成的文件目录
要查看该进程是否仍在运行,可以输入:
ps -ef | grep nmon
三、nmon结果分析-Nmon Analyser工具使用:
1.监控命令执行后,会在指定目录下生成一个nmon文件,采集结束后,下载nmon文件到本地即可,通过ftp方式下载文件或者sz xxxx.nmon(nmon文件名)。
2.将nmom数据文件下载到本地后,使用nmon analyzer 文件打开。
3.首先将nmon analyser v339.xls文件打开,然后点击启用宏。
4.点击Analyse nmon data,选择下载到本地的数据采样nmon文件,打开后,可以看到nmon文件中各个指标的图表信息。
注:
1、 资源方面我们主要关注服务器CPU,内存,网络和磁盘情况。
2、 cpu方面我们需要关注CPU_ALL页,User%和Sys%。
3、 内存方面我们需要关注MEM页。
4、网络方面我们需要关注NET页,Total-Read和Total-Write。
附:nmon分析文件打开后有多个sheet页,下面是详细指标详解:
指标类型 | 指标名称 | 指标含义 |
SYS_SUMM | CPU% | cpu占有率变化情况; |
IO/sec | IO的变化情况; | |
AAA | AIX | AIX版本号; |
build | build版本号; | |
command | 执行命令; | |
cpus | CPU数量; | |
date | 执行日期; | |
disks_per_line | ||
hardware | 被测主机处理器技术; | |
host | 被测主机名; | |
interval | 监控取样间隔;(秒) | |
kernel | 被测主机内核信息; | |
ML | 维护等级; | |
progname | 执行文件名称; | |
runname | 运行主机名称; | |
snapshots | 实际快照次数; | |
subversion | nmon版本详情; | |
time | 执行开始时间戳; | |
user | 执行命令用户名; | |
version | 收集数据的nmon版本; | |
analyser | nmon analyser版本号; | |
environment | 所用excel版本; | |
parms | excel参数设定; | |
settings | excel环境设置; | |
elapsed | 生成excel消耗时间; | |
BBBB | name | 存储磁盘名称; |
size(GB) | 磁盘容量; | |
disc attach type | 磁盘类型; | |
BBBC | hdisknn | 各个磁盘信息、状态以及MOUNT位置; |
BBBD | Adapter_number | 磁盘适配器编号; |
Name | 磁盘适配器名称; | |
Disks | 磁盘适配器数量; | |
Description | 磁盘适配器描述; | |
BBBE | ||
BBBG | ||
BBBL | ||
BBBN | NetworkName | 网络名称; |
MTU | 网络上传送的最大数据包,单位是字节; | |
Mbits | 带宽; | |
Name | 名称; | |
BBBP | vmtune, schedtune, emstat 和 lsattr命令的输出信息; | |
CPUnn | CPU nn | 执行间隔时间列表; |
User% | 显示在用户模式下执行的程序所使用的 CPU 百分比; | |
Sys% | 显示在内核模式下执行的程序所使用的 CPU 百分比; | |
Wait% | 显示等待 IO 所花的时间百分比; | |
Idle% | 显示 CPU 的空闲时间百分比; | |
CPU% | CPU总体占用情况; | |
CPU_ALL | CPU nn | 执行间隔时间列表; |
User% | 显示在用户模式下执行的程序所使用的 CPU 百分比; | |
Sys% | 显示在内核模式下执行的程序所使用的 CPU 百分比; | |
Wait% | 显示等待 IO 所花的时间百分比; | |
Idle% | 显示 CPU 的空闲时间百分比; | |
CPU% | CPU总体占用情况; | |
Logical CPUs (SMT=on) | ||
CPU_SUMM | CPU_SUMM | CPU编号; |
User% | 显示在用户模式下执行的程序所使用的 CPU 百分比; | |
Sys% | 显示在内核模式下执行的程序所使用的 CPU 百分比; | |
Wait% | 显示等待 IO 所花的时间百分比; | |
Idle% | 显示 CPU 的空闲时间百分比; | |
DGBUSY | ||
DGREAD | ||
DGSIZE | ||
DGWRITE | ||
DGXFER | ||
DISKBSIZE | Disk Block Size Hostname | 执行间隔时间列表; |
hdisknn | 磁盘传输速度时间间隔采样;(读和写的总趋势图) | |
DISKBUSY | Disk %Busy Hostname | 执行间隔时间列表; |
hdisknn | 每个磁盘执行采样数据;(磁盘设备的占用百分比) | |
DISKREAD | Disk Read kb/s Hostname | 执行间隔时间列表; |
hdisknn | 每个磁盘执行采样数据;(磁盘设备的读速率) | |
DISKWRITE | Disk Write kb/s Hostname | 执行间隔时间列表; |
hdisknn | 每个磁盘执行采样数据;(磁盘设备的写速率) | |
DISKXFER | Disk transfers per second Hostname | 执行间隔时间列表; |
hdisknn | 每秒钟输出到物理磁盘的传输次数; | |
DISKSERV | ||
DISK_SUMM | Disk total kb/s Hostname | 执行间隔时间列表; |
Disk Read kb/s | 每个磁盘执行采样数据;(磁盘设备的读速率) | |
Disk Write kb/s | 每个磁盘执行采样数据;(磁盘设备的写速率) | |
IO/sec | 每秒钟输出到物理磁盘的传输次数; | |
EMCBSIZE/FAStBSIZE | ||
EMCBUSY/FAStBUSY | ||
EMCREAD/FAStREAD | ||
EMCWRITE/FAStWRITE | ||
EMCXFER/FAStXFER | ||
EMCSERV/FAStSERV | ||
ESSBSIZE | ||
ESSBUSY | ||
ESSREAD | ||
ESSWRITE | ||
ESSXFER | ||
ESSSERV | ||
FILE | iget | 在监控期间每秒钟到节点查找例行程序的呼叫数 |
namei | 在监控期间每秒钟路径查找例行程序的呼叫数(sar -a ). | |
dirblk | 在监控期间通过目录搜索例行程序每秒钟扫描到的目录块数 (sar -a) | |
readch | 在监控期间通过读系统呼叫每秒钟读出的字节数(sar -c) | |
writech | 在监控期间通过写系统呼叫每秒钟写入的字节数(sar -c) | |
ttyrawch | 在监控期间通过TTYs每秒钟读入的裸字节数(sar -y ). | |
ttycanch | 终端输入队列字符 . 对于aix Version 4或者更后的版本这个值总是0 | |
ttyoutch | 终端输出队列字符. (sar -y ). | |
FRCA | ||
IOADAPT | Disk Adapter Hostname(KB/s) | 执行间隔时间列表; |
Disk Adapter_read | 磁盘适配器读速率; | |
Disk Adapter_write | 磁盘适配器写速率; | |
Disk Adapter_xfer-tps | 磁盘适配器传输速率;(该物理磁盘每秒的 IO 传输请求数量) | |
JFSFILE | JFS Filespace %Used Hostname | 执行间隔时间列表; |
file system/LV | 文件系统以及mount磁盘设备已使用空间百分比; | |
JFSINODE | JFS Inode %Used Hostname | 执行间隔时间列表; |
file system/LV | 文件系统以及mount磁盘设备的inode已使用空间百分比; | |
LARGEPAGE | ||
LPAR | ||
MEM | Memory Hostname | 执行间隔时间列表; |
Real Free % | 实际剩余内存百分比; | |
Virtual free % | 虚拟剩余内存百分比; | |
Real free(MB) | 实际剩余内存大小;(MB) | |
Virtual free(MB) | 虚拟剩余内存大小;(MB) | |
Real total(MB) | 实际内存总体大小;(MB) | |
Virtual total(MB) | 虚拟内存总体大小;(MB) | |
MEMUSE | %numperm | 分配给文件页的实际内存百分比 |
%minperm | mixperm的缺省值约为20%的物理内存.通常会不断的运行,除非vmtune或rmss命令中使用收集 | |
%maxperm | maxperm的缺省值约为80%的物理内存. 通常会不断的运行,除非vmtune或rmss命令中使用收集 | |
minfree | 空闲页面数的最小值 | |
maxfree | 空闲页面数的最大值 指定的vmtune命令或系统默认 | |
%comp | 分配给计算页的内存百分比,NMON分析器计算这个值 计算页是可被 page space支持的,包括存储和程序文本段 他们不包括数据,可执行的和共享的库文件 | |
MEMNEW | Process% | 分配给用户进程的内存百分比 |
FSCache% | 分配给文件系统缓存的内存百分比 | |
System% | 系统程序使用的内存百分比 | |
Free% | 未被分配的内存百分比 | |
User% | 非系统程序使用的内存百分比 | |
NET | read/write | 显示系统中每个网络适配器的数据传输速率(千字节/秒) |
NETPACKET | reads/s | 统计每个适配器网络读包的数量 |
writes/s | 统计每个适配器网络写包的数量 | |
NFS sheets | ||
PAGE | faults | 每秒的page faults数 |
pgin | 每秒钟所读入的页数,包括从文件系统读取的页数 | |
pgout | 每秒钟所写出的页数,包括写到文件系统的页数 | |
pgsin | 每秒钟从页面空间所读取的页数 | |
pgsout | 每秒钟写到页面空间的页数 | |
reclaims | 从nmon回收这项之前的10个,和vmstat报告的值是一样的,代表了页替换机制释放的pages/sec的数量 | |
scans | 扫描页替换机制的pages/sec的数量,和vmstat报告的值是一样的,页替换在空闲页数量到达最小值时初始化,在空闲到达最大值时停止 | |
cycles | 周期 times/sec的数值,页替换机制需要扫描整个页表,来补充空闲列表。这和vmstat报告的cy数值一样,只是vmstat报告的这个值是整形值,而nmon报告的是实型值 | |
fsin | 分析器计算的数据为pgin-pgsin的图形处理所用 | |
fsout | 分析器计算的数据为pgout-pgsout的图形处理所用 | |
sr/fr | 分析器计算的数据为scans/reclaims的图形处理所用 | |
PROC | RunQueue | 运行队列中的内核线程平均数(同sar -q中的runq-sz) |
Swap-in | 等待page in的内核线程平均数 (同sar -q中的swpq-sz) | |
pswitch | 上下文开关个数 (同sar -w中的pswch/s) | |
syscall | 系统调用总数.(同sar -c中的scall/s) | |
read | 系统调用中read的数量. (同sar -c中的sread/s) | |
write | 系统调用中write的数量. (同sar -c中的swrit/s) | |
fork | 系统调用中fork的数量. (同sar -c中的 fork/s) | |
exec | 系统调用中exec 的数量. (同sar -c中的 exec/s) | |
rcvint | tty接收中断的数量. (同sar -y中的 revin/s) | |
xmtint | tty传输中断的数量. (同sar -y中的 xmtin/s) | |
sem | IPC信号元的数量 创建,使用和消除). (同sar -m中的 sema/s) | |
msg | IPC消息元的数量 (发送和接收). (同sar -m中的 sema/s) | |
PROCAIO | ||
TOP | PID | 进程号 |
%CPU | CPU使用的平均数 | |
%Usr | 显示运行的用户程序所占用的CPU百分比 | |
%Sys | 显示运行的系统程序所占用的CPU百分比 | |
Threads | 被使用在这个程序中的线程数 | |
Size | 对于这个程序一次调用分配给数据段的paging space平均值 | |
ResText | 对于这个程序一次调用分配给代码段的内存平均值 | |
ResData | 对于这个程序一次调用分配给数据段的内存平均值 | |
CharIO | 通过读写系统调用的每秒字节数 | |
%RAM | 此命令所使用的内存百分比 ((ResText + ResData) / Real Mem) | |
Paging | 此进程所有page faults的总数 | |
Command | 命令名称 | |
WLMClass | 此程序已分配的 Workload Manager superclass名称 | |
IntervalCPU | 详细信息中显示在时间间隔中所有调用命令所使用的CPU总数 | |
WSet | 详细信息中显示在时间间隔中所有调用命令所使用的内存总数 | |
User | 运行进程的用户名 | |
Arg | 包含完整的参数字符串输入命令 | |
UARG | ||
WLM sheets | ||
ZZZZ |