Nmon是什么,一篇文章学会使用 nmon

article/2025/10/6 21:25:02

本文摘自:https://www.sohu.com/a/219012698_151779

1.Nmon简介

Nmon (Nigel’s Monitor)是由IBM 提供、免费监控 AIX 系统与 Linux 系统资源的工具。该工具可将服务器系统资源耗用情况收集起来并输出一个特定的文件,并可利用 excel 分析工具(nmon analyser)进行数据的统计分析。

1.1 软件特性

nmon 工具可以在一个屏幕上显示所有重要的性能优化信息,并动态地对其进行更新。这个高效的工具可以工作于任何哑屏幕、telnet 会话、甚至拨号线路。另外,它不会消耗大量的 CPU 周期,通常低于百分之二(在更新的计算机上,其 CPU 使用率将低于百分之一)。nmon使用哑屏幕,在屏幕上对数据进行显示,并且每隔两秒钟对其进行更新。用户可以很容易地将这个时间间隔更改为更长或更短的时间段。如果拉伸窗口,并在 X Windows、VNC、PuTTY 或类似的窗口中显示这些数据,nmon 工具可以同时输出大量的信息。

nmon 工具还可以将相同的数据捕获到一个文本文件,便于以后对报告进行分析和绘制图形。输出文件采用电子表格的格式 (.csv)。

目前nmon已开源,以sourceforge为根据地,网址是http://nmon.sourceforge.net。

1.2 软件组成

Nmon使用需要nmon工具和nmonanalyser分析程序两者配合使用。nmon工具生成性能数据文件,然后monanalyser以nmon生成的数据文件作为输入,输出为Excel电子表格,并自动地生成相应的图形,使得我们能够直观地观察OS性能(CPU、IO和内存等)的变化过程。

1.3 运行环境nmon 工具运行于: • AIX及LINUX

nmon 工具大约每六个月更新一次,或者在可用的新的操作系统发布版中对其进行更新。

1.4 软件功能

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

1.5 软件获取

nmon工具和nmonanalyser工具都可以在IBM的Wike页面上下载到。

1) Nmon下载:

在AIX5.3-09和6.1-02及以后的版本中,nmon工具默认已经安装,对于老的操作系统版本,可以到如下地址下载安装:http://www.ibm.com/developerworks/wikis/download/attachments/53871937/newer_nmon4aix12e.tar.gz?version=1

将软件包上传到主机,解压到部署目录即可,可以看到压缩包里是一些文件,如下:

其实nmon就是shell脚本,nmon文件运行时调用其他的文件,生成性能数据,这个工具运行时也是通过执行nmon脚本接受参数。

2) Nmonanalyser下载:

位置:可从可从IBM Wiki上下载

http://www-941.haw.ibm.com/collaboration/wiki/display/Wikiptype/nmonanalyser

下载页面如下:

例如下载V3.3版本的Nmonanalyser。

2. Nmon使用2.1 安装软件配置定时任务

1) 用root用户登录系统,建立目录:

#mkdir -p /home/backupfile/sys/data/nmondata

2) 创建nmon工具运行脚本文件

#vi /home/backupfile/sys/tools/nmon/nmon.sh

在nmon.sh文件中加入以下内容,nmon命令的路径根据具体情况修改,系统默认安装用/usr/bin/nmon

/usr/bin/nmon -fT -s 120 -c 720 -F /home/backupfile/sys/data/nmondata

/batch_hostname_aix_date +%Y%m%d%H%M.txt

其中各参数表示:

-f 按标准格式输出文件:_YYYYMMDD_HHMM.nmon

-m 切换到路径去保存日志文件

-s 每隔n秒抽样一次,这里为120

-c 取出多少个抽样数量,这里为720,即监控=720(120/60/60)=24小时

根据小时计算这个数字的公式为:c=h3600/s,比如要监控10小时,每隔120秒采样一次,则c=10*3600/120=300

该命令启动后,会在nmon所在目录下生成监控文件,并持续写入资源数据,直至720个监控点收集完成——即监控1天,这些操作均自动完成,无需手工干预,测试人员可以继续完成其他操作。如果想停止该监控,需要通过“#ps –ef|grep nmon”查询进程号,然后杀掉该进程以停止监控。

3) 使用以下命令确保nmon.sh文件具有可执行权限;

#chmod +x /home/backupfile/sys/tools/nmon/nmon.sh

4) 启动nmon,添加crontab item;

crontab -e

在末尾添加一行

0 0 * * * /home/backupfile/sys/tools/nmon/nmon.sh

5) 如需停止nmon,注释crontab item;

#crontab -e

注释nmon脚本任务

#0 0 * * * /home/backupfile/sys/tools/nmon/nmon.sh

6) 如需检查nmon输出数据,查看/home/backupfile/sys/data/nmondata目录下输出

#ls -l /home/backupfile/sys/data/nmondata;

7) nmon开始运行后,每天在/home/backupfile/sys/data/nmondata下产生一个文件,文件名包含日期如batch_hostname_aix_201408152359.txt;

8) nmon数据文件定期备份定期清理

2.2 运行界面

1) 运行/usr/bin/nmon,便可进入nmon的监控界面,如下图:

2) 键入“c”查看系统CPU使用情况

3) 键入“m”查看系统内存使用情况

4) 键入“d”查看系统磁盘I/O情况

5) 键入“h”查看帮助信息

2.3 使用方法

在完成配置后,只需要“/usr/bin/nmon”命令即可运行程序,通过一些快捷键调取关心的系统资源指标进行显示,如按键“C”可以查看CPU相关信息;按键“D”可以查看磁盘信息;按键“T”可以查看系统的进程信息;“M”对应内存、“N”对应网络等等,完整的快捷键对应内容可以通过帮助(按键 “H”)查看,可以显示Linux系统CPU、内存、进程信息,包括了CPU的用户、系统、等待和空闲状态值,可用内存、缓存大小以及进程的CPU消耗等详细指标。

该种方式显示信息实时性强,能够及时掌握系统承受压力下的运行情况,每颗CPU利用率是多少、内存使用多少、网络流量多少、磁盘读写……这些数据均是实时刷新,一目了然。

3. Nmon监控结果介绍3.1 生成结果文件

通过后台监控和定期监控,我们可以得到扩展名为nmon的监控文件(文件名和扩展名可以根据实际需求修改,但nmon analyser只能打开扩展名为csv和nmon的文件),这些文件记录着系统资源的数据,需要配合分析工具(nmon analyser)进行解读。

1) 从服务器上取下生成结果文件/home/backupfile/sys/data/nmondat/batch_wn1cpcglddb1002_aix_1608240000.txt到本机,并修改扩展名为batch_wn1cpcglddb1002_aix_1608240000.nmon。

2) 打开nmon_analyser.zip 包下的nmon analyser v33g.xls 文件,点击Analyse nomn data按钮,选择之前get下来的batch_wn1cpcglddb1002_aix_1608240000.nmon文件。

3) 生成分析结果文件batch_wn1cpcglddb1002_aix_1608240000.xlsx,并生成统计图,直观显示系统资源情况。

3.2 主要性能参数介绍

系统汇总(对应excel标签的‘SYS_SUMM’):其中蓝线为cpu占有率变化情况;粉线为磁盘IO的变化情况。

磁盘读写情况汇总(对应excel标签的‘DISK_SUMM’):其中蓝色为磁盘读的速率KB/sec;紫色为磁盘写的速率KB/sec。

内存情况汇总(对应excel标签的‘MEM’): 曲线表示内存剩余量(MB)

3.3 页面介绍简单介绍生成结果的各个页面:

1) 系统汇总页面:对应标签页(SYS_SUMM)

页面显示项主要有主机名,执行日期,系统cpu使用情况(蓝线),系统I/O情况(粉红线),其中坐标左纵轴为系统cpu(user%+sys%)使用率,横轴为运行时长(下图为一个小时),右纵轴为系统磁盘传输(Disk xfers),坐标下侧为统计信息:系统I/O情况(一个周期内的平均值、最大值、出现最大值的时间),系统CPU使用情况

注释:

如果系统CPU有IO wait存在,说明可能IO或内存方面存在瓶颈,其中主要导致IO Wait的主要原因如下:

内存不够而引起频繁的的数据交换,导致数据存取存在交换空间的 I/O瓶颈

硬盘数据分布不合理

2) 系统信息:标签页(AAA)

页面信息主要包括:执行命令,主机CPU数(4),操作系统内核版本信息,主机名等信息。

3) 系统详细信息:标签页(BBBP)

页面信息主要包括:操作系统版本,主机磁盘信息,主机CPU型号、主频信息,内存信息,网卡信息等。

4) CPU使用情况:标签页(LPAR,CPU_ALL,CPU_SUMM,CPU001,CPU002,CPU003,CPU004…)

主机CPU使用情况汇总以及单颗CPU的运行情况。

5) 磁盘读写情况汇总:标签页(DISK_SUMM,DISKBSIZE,DISKBUSY,DISKREAD,DISKWRITE,DISKXFER)

磁盘的读、写及I/O统计信息,系统各磁盘分区的读写情况。其中DISKBUSY页主要反映系统本地磁盘使用,DISK_SUMM包括本地和存储(ESS, EMC, FASt及HDS)上所有磁盘使用情况。

6) 内存使用情况:标签页(MEM)

系统内存空闲、使用,swap、cached等统计信息。

7) 系统网络情况:标签页(NET,NETPACKET)

反映系统的网络运行情况,系统各个网络适配器读写的数据包数

8) 系统进程:标签页(PROC)

反映系统运行线程及等待切换的线程平均数。其中RunQueue - 每个处理器应该运行队列不超过1-3个线程。

9) 页式调度:标签页(PAGE)

记录系统(AIX)页式调度的情况。这一栏主要记录系统换页(paging)情况和页面扫描:自由比率(page scan:free ratio)。其中系统换页频率应该不大于5次/秒,而当页面扫描:自由比率持续大于4时,需要重点关注下系统内存和分页空间的使用情况

说明:

大量的内存交换操作会极大地影响系统的性能,尤其是在当数据库文件创建在文件系统上时(JFS and JFS2)。在这种情况下经常访问的数据,即在SGA中存在,也同样在文件的缓存中存在。这种相同的数据在内存中缓存两次的情况,会降低内存的使用效率,从而使内存频繁进行交换操作,造成系统的I/O瓶颈,降低整个系统的性能。

10) 采集时间:标签页(ZZZZ)

记录nmon工具采集系统信息的时间点。

4.Nmon监控常见现象和产生原因

性能下降(Performance Degradation),主要是指系统的性能随时间而逐渐下降(这里假定在系统性能下降的过程中系统的负载状况没有明显变化)。系统运行过程中占用的CPU或内存随时间增加也属于广义的性能下降问题。

在生产环境中,通常由终端客户最先感觉到并报告性能下降问题。所以狭义的性能下降问题主要是指系统运行指标随时间变化,比如吞吐率随时间下降或页面响应时间随时间上升,或者两者兼而有之。

下面列举一些引起性能下降问题的原因:

- 应用程序资源使用问题。主要是内存使用问题,即由于应用服务器的内存碎片问题或内存泄漏问题,导致垃圾回收的开销随时间增大。也有可能是因为磁盘临时文件积累造成磁盘访问开销增大。

- 应用程序设计问题。由于应用程序的设计存在可扩展性或可靠性问题,导致运行开销随时间或业务对象的积累而增大。

- 数据库访问问题。该问题又可以分为许多类型,如调优参数问题、表结构或索引设计问题、垃圾数据问题等。其共同特点是导致应用程序利用特定操作访问数据库的开销随时间而增大。

- 服务器软件资源使用问题。虽然可能性很小,但是应用服务器、数据库服务器等服务器程序也是软件程序,也有可能存在性能下降问题。这些服务器程序在自身测试过程中可能遗漏了某些性能问题,而在用户特定的执行状况下触发了这些问题,结果导致这些服务器程序使用的操作系统资源泄漏而出现性能下降问题。

- 测试用例设计问题。性能测试中有可能发现一些“假”的性能下降问题。比如测试用例设计时假设在测试执行过程中系统负载保持恒定,但实际的测试用例实现导致系统负载或特定页面的处理内容随时间增多,也可能导致测试工具的测试报告中出现性能下降问题。


http://chatgpt.dhexx.cn/article/kqYZ1mpP.shtml

相关文章

nmon 的使用

1、概述 监控,在检查系统问题或优化系统性能工作上是一个不可缺少的部分。通过操作系统监控工具监视操作系统资源的使用情况,间接地反映了各服务器程序的运行情况。根据运行结果分析可以帮助我们快速定位系统问题范围或者性能瓶颈点。 nmon是一种在AIX与…

nmon和nmon analyser的下载和使用

nmon 工具可以为 AIX 和 Linux 性能专家提供监视和分析性能数据的功能,AIX是IBM的一个操作系统,相比于Linux,使用范围不算很广,因此我们重点讲下Linux下的nmon应用。首先自然是下载,Linux的nmon有自己的官方网站&#…

nmon用法

一、简介 nmon是一个简单的性能监测工具,可以监测CPU、内存、网络等的使用情况。它是一个系统监视、调优、性能测试工具,它能一次性提供大量性能相关的信息。 二、安装与执行 下载地址:http://nmon.sourceforge.net/pmwiki.php?nMain.HomeP…

Nmon使用方法

一、简介 1、nmon是一种在AIX与各种Linux操作系统上广泛使用的监控与分析工具,它能在系统运行过程中实时地捕捉系统资源的使用情况,记录的信息比较全面, 并且能输出结果到文件中,然后通过nmon_analyzer工具产生数据文件与图形化…

Nmon使用

操作系统监控工具 Nmon使用与介绍 目录 目的 4Nmon简介 4 2.1 软件特性 4 2.2 软件组成 4 2.3 运行环境 5 2.4 软件功能 5 2.5 软件获取 6Nmon使用 7 3.1 下载软件 7 3.2 安装软件 7 3.3 运行界面 8 3.4 使用方法 9 3.4.1 实时监控 9 3.4.2 后台监控 10 3.4.3 定时任务 10Nmo…

Xshell是什么

SSH终端: 超级终端,用于远程访问服务器,使用时是通过模拟命令行的界面来与服务器进行沟通。 常见的SSH软件:Xshell,CRT Xshell新建会话时,通常命名规则:服务器名-Host_IP

实习僧[shixiseng.com]爬虫实战笔记

免责声明:本文所记录的技术手段及实现过程,仅作为爬虫技术学习使用,不对任何人完全或部分地依据本文的全部或部分内容从事的任何事情和因其任何作为或不作为造成的后果承担任何责任。 爬取需求:从网站【www.shixiseng.com】上&…

xshell如何使用

1.首先下载xshell,并安装 下载地址:https://xshell.en.softonic.com/

Xshell官网免费版

官网可以免费申请,不收费,只需一个邮箱即可 xshell官网:https://www.xshell.com/zh/xshell/ 点击下载 点击免费授权页面 填写姓名邮箱,点击下载 邮箱会收到下载链接,点击跳转下载即可

Qt多线程之继承QObject(moveToThread方式)

Qt多线程有两两种方式,第一种继承QThread,复写run()函数,但是run()和main()类似,run()函数才是子线程的入口函数,所以在设计到类的操作时,必须把对象或者指针放在run函数里面,否则就不在一个线程里面了&…

xshell官网最新 中文,xshell

Xshell 是国内比较流行的SSH管理软件,和其他的SSH客户端相比,Xshell更加注重用户体验的一些东西,比如其现代化的界面,多种语言包括简体中文支持,代码高亮等,对于新手非常友好。 Xshell中还提供了一些高级功…

Linux、Xshell

Linux基础命令 linux基础操作1. 创建目录2. 创建文件3. 删除4. 删除前询问5. 复制6. 修改文件名7. 移动文件8. 查看文件9. 查看五行10. 查看文件末尾11. 查看文件后五行12. 动态查看文件(相当于日志)13. 查看文件内容14. 查看输过的命令15. 清除页面16. …

Linux,Xshell

一.部署Linux环境 首先安装VMware和ISO镜像文件。 然后在windows会产生两个虚拟网卡:vmnet1, vmnet8。 登录VM密钥可以自己想办法的。 1.创建虚拟机,直接点击主页创建就OK。 2.选择自定义,点击下一步 3.兼容性选择默认即可点击…

xshell是什么软件

xshell是什么软件? Xshell 是一个强大的远程管理软件,它支持SSH,TELNET 协议。Xshell可以在Windows下访问远端服务器、路由器、网络机顶盒等,类似的常用软件还有putty,以及Windows下的Telnet。 下面简单介绍一下xshell软件。 X…

xshell工具

xshell工具 xshell 是一款非常好用的Linux客户端连接工具,但是是收费的,我们可以使用它的家庭和学校用户的免费许可证 。但是需要我们去官网注册。 https://www.netsarang.com/zh/xshell-download/ 获取到对应的安装软件直接安装即可 xshell的配置 安…

安卓一键清理内存_力推!一键深度清理手机内存垃圾,从此和卡顿告别

今天给大家推荐的这款软件是猎豹清理大师v7.2.9去广告高级版。 该软件可以说是比较专业的垃圾清理软件了,在Google Play已经被下载超过了10亿次。 软件体验 会员功能全部免费使用,这个是不需要进行付费的版本,会员拥有去广告、自动垃圾清理、…

win10深度清理c盘垃圾的方法【系统天地】

C盘作为win10系统安装盘,使用一段时间后会产生大量的垃圾文件,不仅占用内存还会影响电脑运行速度。很多新手不知道c盘哪里文件是可以删除的。带着win10如何深度清理c盘的问题,我们往下看看爱纯净的方法。 win10纯净版深度清理c盘垃圾的方法…

苹果手机如何深度清理_苹果手机还可以这样清理垃圾,怪不得用这么久还流畅如丝...

苹果手机凭借着它优异的功能受到大家的喜欢,独特的IOS系统让它用多久都会觉得非常的流畅,虽然说苹果手机的功能很受大家的青睐,但是苹果手机有一个缺陷,那就是内存不怎么够用,今天教大家如何去清理苹果手机的内存给手机…

微信内测新功能(深度清理),瞬间释放几个G内存!

点击上方关注 “终端研发部” 设为“星标”,和你一起掌握更多数据库知识 微信是国人日常生活离不开的软件,而微信堪称吃存储的大户。我们几乎每天都在使用微信,使用的时间越长,信息积累的也越多。 聊天记录和朋友圈中的图片、视频…

App Cleaner Uninstaller for Mac v8.1.2 应用深度清理卸载工具 兼容 M1

App Cleaner & Uninstaller Pro 是一款mac应用清理、mac应用卸载工具,它可以帮你深度清理应用残留,完全卸载mac应用程序。 应用介绍 App Cleaner & Uninstaller Pro 是一款mac应用清理、mac应用卸载工具,它可以帮你深度清理应用残留…