收藏 分享(赏)

nmon的详细使用及监控文件解读.doc

上传人:精品资料 文档编号:10861198 上传时间:2020-01-15 格式:DOC 页数:28 大小:3.74MB
下载 相关 举报
nmon的详细使用及监控文件解读.doc_第1页
第1页 / 共28页
nmon的详细使用及监控文件解读.doc_第2页
第2页 / 共28页
nmon的详细使用及监控文件解读.doc_第3页
第3页 / 共28页
nmon的详细使用及监控文件解读.doc_第4页
第4页 / 共28页
nmon的详细使用及监控文件解读.doc_第5页
第5页 / 共28页
点击查看更多>>
资源描述

1、操作系统监控工具Nmon 使用与介绍 V1.0起 草 部 门:管 理 部 门:撰 写 人:审 核 人:批 准 人:发 布 日 期: 修订页2 / 28编号章节名称 修订内容简述 修订日期修订前版本号修订后版本号 修订人批准人3 / 28目 录1. 目的 42. NMON 简介 .42.1 软 件 特 性 .42.2 软 件 组 成 .42.3 运 行 环 境 .52.4 软 件 功 能 .52.5 软 件 获 取 .63. NMON 使用 .73.1 下 载 软 件 .73.2 安 装 软 件 .73.3 运 行 界 面 .83.4 使 用 方 法 .93.4.1 实时监控 93.4.2 后台

2、监控 103.4.3 定时任务 104. NMON 监控结果介绍 .114.1 生 成 结 果 文 件 114.2 主 要 性 能 参 数 介 绍 124.3 页 面 介 绍 .125. NMON 监控案例介绍 .195.1 常 见 现 象 和 产 生 原 因 .195.2 实 例 介 绍 .205.2.1 示例一 205.2.2 示例二 225.2.3 示例三 26附录一 常用网站 28附录二 参考资料 284 / 281. 目的本文介绍操作系统监控工具 Nmon 的概念、使用方式及使用参数。指导运维人员通过nmon 工具监视 AIX/Linux 操作系统资源使用情况,收集监控结果及产生的数

3、据文件,制作相关系统性能分析报告。2. Nmon 简介Nmon (Nigels Monitor)是由 IBM 提供、免费监控 AIX 系统与 Linux 系统资源的工具。该工具可将服务器系统资源耗用情况收集起来并输出一个特定的文件,并可利用 excel 分析工具(nmon analyser)进行数据的统计分析。2.1 软 件 特 性nmon 工具可以在一个屏幕上显示所有重要的性能优化信息,并动态地对其进行更新。这个高效的工具可以工作于任何哑屏幕、telnet 会话、甚至拨号线路。另外,它不会消耗大量的 CPU 周期,通常低于百分之二(在更新的计算机上,其 CPU 使用率将低于百分之一) 。 n

4、mon 使用哑屏幕,在屏幕上对数据进行显示,并且每隔两秒钟对其进行更新。用户可以很容易地将这个时间间隔更改为更长或更短的时间段。如果拉伸窗口,并在 X Windows、VNC、PuTTY 或类似的窗口中显示这些数据, nmon 工具可以同时输出大量的信息。 nmon 工具还可以将相同的数据捕获到一个文本文件,便于以后对报告进行分析和绘制图形。输出文件采用电子表格的格式 (.csv)。目前 nmon 已开源,以 sourceforge 为根据地,网址是 http:/。2.2 软 件 组 成Nmon 使用需要 nmon 工具和 nmonanalyser 分析程序两者配合使用。nmon 工具生成性能

5、数据文件,然后 monanalyser 以 nmon 生成的数据文件作为输入,输出为 Excel 电子表格,并自动地生成相应的图形,使得我们能够直观地观察 OS 性能(CPU、IO 和内存等)的变化过程。5 / 282.3 运 行 环 境nmon 工具运行于: AIX 4.1.5、4.2.0、4.3.2 和 4.3.3(nmon Version 9a:该版本的功能已经确定,并且不会对其进行进一步的开发。) AIX 5.1、5.2 和 5.3(nmon Version 10:该版本现在支持 AIX 5.3 和基于 POWER5 处理器的计算机,并且提供了 SMT 和共享 CPU 微分区的支持。)

6、 pSeries p5 和 OpenPower 上的 Linux SUSE SLES 9、Red Hat EL 3 和 4、Debian Linux SUSE、Red Hat 和许多最新的 x86(32 位模式的 Intel 和 AMD)上的发布版 zSeries 或 mainframe 上的 Linux SUSE 和 Red Hat nmon 工具大约每六个月更新一次,或者在可用的新的操作系统发布版中对其进行更新。2.4 软 件 功 能nmon 工具可以为 AIX 和 Linux 性能专家提供监视和分析性能数据的功能,其中包括: CPU 使用率 内存使用情况 内核统计信息和运行队列信息 磁盘

7、 I/O 速度、传输和读/写比率 文件系统中的可用空间 磁盘适配器 网络 I/O 速度、传输和读/写比率 页面空间和页面速度 CPU 和 AIX 规范 消耗资源最多的进程 6 / 28 IBM HTTP Web 缓存 用户自定义的磁盘组 计算机详细信息和资源 异步 I/O,仅适用于 AIX 工作负载管理器 (WLM),仅适用于 AIX IBM TotalStorage Enterprise Storage Server (ESS) 磁盘,仅适用于 AIX 网络文件系统 (NFS) 动态 LPAR (DLPAR) 更改,仅适用于面向 AIX 或 Linux 的 pSeries p5 和 Open

8、Power 2.5 软 件 获 取nmon 工具和 nmonanalyser 工具都可以在 IBM 的 Wike 页面上下载到。1) Nmon 下 载 :位置:可从 IBM Wiki 上下载http:/ AIX5.3,那么就可以下载 nmon4aix12e.zip ,下载后可以看到压缩包里是一些文件,如下:7 / 28其实 nmon 就是 shell 脚本,nmon 文件运行时调用其他的文件,生成性能数据,这个工具运行时也是通过执行 nmon 脚本接受参数。2) Nmonanalyser 下 载 :位置:可从可从 IBM Wiki 上下载http:/ V3.3 版本的 Nmonanalyser

9、。3. Nmon 使用3.1 下 载 软 件1) 下载之前须确定操作系统内核版本,本文以公司服务器 192.168.40.212 为例。登录服务器使用命令获取操作系统版本信息:查看可知为 Enterprise Linux Server release 5.5。2) 登录 IBM 官方网站(http:/ )下载相应版本的 nmon 工具: nmon_linux_14g.tar.gz 8 / 283.2 安 装 软 件1) 用 root 用户登录系统,建立目录:#mkdir /nmon2) 通过 FTP 将下载的 nmon 工具上传至服务器 192.168.40.212 目录/nmon 下。 3)

10、 修改 tar 包权限:#chmod +x nmon_linux_14g.tar.gz 4) 解压文件:#tar xvfZ nmon_linux_14g.tar.gz 5) 执行授权命令:#chmod +x nmon_x86_rhel543.3 运 行 界 面1) 运行./nmon_x86_rhel54,便可进入 nmon 的监控界面,如下图:2) 键入“c”查看系统 CPU 使用情况3) 键入“m”查看系统内存使用情况9 / 284) 键入“d”查看系统磁盘 I/O 情况5) 键入“h”查看帮助信息3.4 使 用 方 法3.4.1 实时监控在完成配置后,只需要“#./nmon”命令即可运行程

11、序,通过一些快捷键调取关心的系统资源指标进行显示,如按键“C”可以查看 CPU 相 关信息;按键“D”可以查看磁盘信息;按键“T”可以查看系统的进程信息; “M”对应内存、 “N”对应网络等等,完整的快捷键对应内容可10 / 28以通过帮助(按键 “H”)查看,可以显示 Linux 系统 CPU、内存、进程信息,包括了 CPU的用户、系统、等待和空闲状态值,可用内存、缓存大小以及进程的 CPU 消耗等详细指标。该种方式显示信息实时性强,能够及时掌握系统承受压力下的运行情况,每颗 CPU 利用率是多少、内存使用多少、网络流量多少、磁盘读写这些数据均是实时刷新,一目了然。3.4.2 后台监控为了配

12、合性能测试,我们往往需要将一个时间段内系统资源消耗情况记录下来,这时可以使用命令在远程窗口执行命令:./nmon/ nmon_x86_rhel5 -f -N -m /nmon/log -s 30 -c 120其中各参数表示:-f 按标准格式输出文件:_YYYYMMDD_HHMM.nmon-N include NFS sections-m 切换到路径去保存日志文件-s 每隔 n 秒抽样一次,这里为 30-c 取出多少个抽样数量,这里为 120,即监控=120*(30/60/60)=1 小时根据小时计算这个数字的公式为:c=h*3600/s,比如要监控 10 小时,每隔 30 秒采样一次,则 c=

13、10*3600/30=1200该命令启动后,会在 nmon 所在目录下生成监控文件,并持续写入资源数据,直至360 个监控点收集完成 即监控 1 小时,这些操作均自动完成,无需手工干 预,测试人员可以继续完成其他操作。如果想停止该监控,需要通过“#ps ef|grep nmon”查询进程号,然后杀掉该进程以停止监控。3.4.3 定时任务除配合性能测试的短期监控,我们也可以实现对系统的定期监控,作为运营维护阶段的参考。定期监控实现如下:1) 执行命令:#crontab e11 / 282) 在最后一行添加如下命令:0 8 * * 1,2,3,4,5 /nmon/nmon_x86_rhel5 -f

14、 -N -m /nmon/log -s 30 -c 1200表示:周一到周五,从早上 08 点开始,监控 10 个小时(到 18:00 整为止) ,输出到/nmon/log4. Nmon 监控结果介绍4.1 生 成 结 果 文 件通过后台监控和定期监控,我们可以得到扩展名为 nmon 的监控文件,这些文件记录着系统资源的数据,需要配合分析工具(nmon analyser)进行解读。1) 使用 FTP 工具从服务器上取下生成结果文件/nmon/log/sjfx212_120318_1723.nmon到本机。2) 打开 nmon_analyser.zip 包下的 nmon analyser v33

15、g.xls 文件,点击 Analyse nomn data 按钮,选择之前 get 下来的 sjfx212_120318_1723.nmon 文件。Excel 可能禁止运行宏了,点“安全警告旁边的选项”,允许运行宏:12 / 283) 生成分析结果文件 sjfx212_120318_1723.nmon.xlsx,并生成统计图,直观显示系统资源情况。sjfx212_120318_1723.nmon.xlsx4.2 主 要 性 能 参 数 介 绍 系统汇总(对应 excel 标签的SYS_SUMM):其中蓝线为 cpu 占有率变化情况;粉线为磁盘 IO 的变化情况。 磁盘读写情况汇总(对应 exc

16、el 标签的DISK_SUMM): 其中蓝色为磁盘读的速率 KB/sec;紫色为磁盘写的速率 KB/sec。 内存情况汇总(对应 excel 标签的MEM): 曲线表示内存剩余量(MB)4.3 页 面 介 绍简单介绍生成结果的各个页面:1) 系统汇总页面:对应标签页(SYS_SUMM)页面显示项主要有主机名,执行日期,系统 cpu 使用情况(蓝线) ,系统 I/O 情况(粉红线) ,其中坐标左纵轴为系统 cpu(user%+sys% )使用率,横轴为运行时长(下图为一个小时) ,右纵轴为系统磁盘传输(Disk xfers) ,坐标下侧为统计信息:系统 I/O 情况(一个周13 / 28期内的平

17、均值、最大值、出现最大值的时间) ,系统 CPU 使用情况。选项 说明 备注User% 用户进程时间在 CPU 开销时间百分比Wait% 所有进程线程被阻塞等待完成一次 IO 请求所占 CPU 开销 idle 的时间百分比Sys% 线程和中断在 CPU 开销时间百分比Idle% CPU 空闲时间的百分比CPU% CPU 利用率的百分比如果一个 CPU 被充分使用,利用率分类之间均衡的比例应该是:65% - 70% User Time30% - 35% System Time0% - 5% Idle Time注释:如果系统 CPU 有 IO wait 存在,说明可能 IO 或内存方面存在瓶颈,其

18、中主要导致 IO Wait 的主要原因如下: 内存不够而引起频繁的的数据交换,导致数据存取存在交换空间的 I/O 瓶颈 硬盘数据分布不合理2) 系统信息:标签页(AAA)页面信息主要包括:执行命令,主机 CPU 数(4) ,操作系统内核版本信息,主机名等信息。14 / 283) 系统详细信息:标签页(BBBP)页面信息主要包括:操作系统版本,主机磁盘信息,主机 CPU 型号、主频信息,内存信息,网卡信息等。4) CPU 使用情况:标签页(CPU_ALL,CPU_SUMM,CPU001,CPU002,CPU003,CPU004)主机 CPU 使用情况汇总以及单颗 CPU 的运行情况。15 / 2

19、85) 磁盘读写情况汇总:标签页(DISK_SUMM,DISKBSIZE,DISKBUSY,DISKREAD,DISKWRITE ,DISKXFER)磁盘的读、写及 I/O 统计信息,系统各磁盘分区的读写情况。其中 DISKBUSY 页主要反映系统本地磁盘使用,DISK_SUMM 包括本地和存储(ESS, EMC, FASt 及 HDS)上所有磁盘使用情况。16 / 286) 内存使用情况:标签页(MEM)系统内存空闲、使用,swap、cached 等统计信息。7) 系统网络情况:标签页(NET,NETPACKET)反映系统的网络运行情况,系统各个网络适配器读写的数据包数8) 系统进程:标签页

20、(PROC)反映系统运行线程及等待切换的线程平均数。其中 RunQueue - 每个处理器应该运行队列不超过 1-3 个线程。17 / 289) 活动虚拟内存总量:标签页(VM)Linux 操作系统特有指标,主要包括系统/proc/vmstat 文件中信息,两张图片主要显示系统分页文件(pagefile)和 swap 分区运行情况。如果系统总是存在大量换出页(pgpgout/s)KB 数,说明系统需要更多内存。18 / 2810) 页式调度:标签页(PAGE)记录系统(AIX)页式调度的情况。这一栏主要记录系统换页(paging)情况和页面扫描:自由比率(page scan:free rati

21、o) 。其中系统换页频率应该不大于 5 次/秒,而当页面扫描:自由比率持续大于 4 时,需要重点关注下系统内存和分页空间的使用情况。说明:大量的内存交换操作会极大地影响系统的性能,尤其是在当数据库文件创建在文件系统上时(JFS and JFS2)。在这种情况下经常访问的数据,即在 SGA 中存在,也同样在文件的缓存中存在。这种相同的数据在内存中缓存两次的情况,会降低内存的使用效率,从而19 / 28使内存频繁进行交换操作,造成系统的 I/O 瓶颈,降低整个系统的性能。11) 采集时间:标签页(ZZZZ)记录 nmon 工具采集系统信息的时间点。5. Nmon 监控案例介绍本节介绍通过 nmon

22、 工具发现系统性能下降问题的常见现象和处理流程。5.1 常 见 现 象 和 产 生 原 因性能下降(Performance Degradation),主要是指系统的性能随时间而逐渐下降(这里假定在系统性能下降的过程中系统的负载状况没有明显变化)。系统运行过程中占用的CPU 或内存随时间增加也属于广义的性能下降问题。在生产环境中,通常由终端客户最先感觉到并报告性能下降问题。所以狭义的性能下降问题主要是指系统运行指标随时间变化,比如吞吐率随时间下降或页面响应时间随时间上升,或者两者兼而有之。下面列举一些引起性能下降问题的原因: 应用程序资源使用问题。主要是内存使用问题,即由于应用服务器的内存碎片问

23、题或内存泄漏问题,导致垃圾回收的开销随时间增大。也有可能是因为磁盘临时文件积累造成磁盘访问开销增大。20 / 28 应用程序设计问题。由于应用程序的设计存在可扩展性或可靠性问题,导致运行开销随时间或业务对象的积累而增大。 数据库访问问题。该问题又可以分为许多类型,如调优参数问题、表结构或索引设计问题、垃圾数据问题等。其共同特点是导致应用程序利用特定操作访问数据库的开销随时间而增大。 服务器软件资源使用问题。虽然可能性很小,但是应用服务器、数据库服务器等服务器程序也是软件程序,也有可能存在性能下降问题。这些服务器程序在自身测试过程中可能遗漏了某些性能问题,而在用户特定的执行状况下触发了这些问题,

24、结果导致这些服务器程序使用的操作系统资源泄漏而出现性能下降问题。 测试用例设计问题。性能测试中有可能发现一些“假”的性能下降问题。比如测试用例设计时假设在测试执行过程中系统负载保持恒定,但实际的测试用例实现导致系统负载或特定页面的处理内容随时间增多,也可能导致测试工具的测试报告中出现性能下降问题。5.2 实 例 介 绍5.2.1 示例一图 5-1 nmon 操作系统监视汇总信息图由此信息图可发现在 12 小时测试进行过程中,系统的磁盘传输(Disk xfers)逐渐增大,与此同时系统 CPU 占用率逐渐下降。进一步检查单个 CPU 的使用情况,发现 1 号 CPU的 Wait 状态占用率明显增

25、大,如图 5-2 所示。这说明 CPU 占用率逐渐下降是由于等待磁盘21 / 28I/O 引起的。图 5-2 nmon 单个 CPU 使用情况图接下来分析磁盘传输汇总信息,如图 5-3 所示,可以看出磁盘写数据量没有明显增加,但是磁盘读数据量明显随时间而增加。图 5-3 nmon 磁盘传输汇总情况图凭磁盘传输汇总信息,在排除由应用服务器读取导致的性能下降问题后,基本可以肯定不断增加的磁盘读取操作是由数据库引起的。随后,分析 DB2 的快照监视器的监视结果,可以发现 DB2 的缓冲池(Buffer pool)的数据和索引物理读(physical read)的比例非常高。如下例所示:Buffer

26、pool data logical reads = 5502388Buffer pool data physical reads = 430671Buffer pool temporary data logical reads = 0Buffer pool temporary data physical reads = 0可以看到缓冲池的物理读比例(即缓冲池不命中率)高达 7%,这远远大于 1%的警戒线。而且物理读比例有随时间增加的趋势(通过不同时间的快照信息对比发现)。22 / 28至此可以怀疑性能下降问题是由于 DB2 的缓冲池配置参数设置不当引起的。考察数据库配置参数信息发现,该数据库的

27、 BUFFPAGE 参数值为 10000。与该测试用例使用的数据规模相比,这个参数值明显偏小。于是将 BUFFPAGE 参数值增大 10 倍,变为 100000,重新运行性能测试,发现性能下降问题基本消失。5.2.2 示例二本实例为通过 nmon 监控河北税源管理平台数据仓库收集的数据。对照 nmonanalyser工具生成结果进行分析。HE_SSGLY_DB_nmon.xls1) 收集服务器基本信息23 / 28通过以上数据可以知道河北数据仓库服务器基本配置信息如下: 主机名:HE_SSGLY_DB_01 操作系统版本:AIX 5.3.0.44 build 5300-04 操作系统内核:HW

28、-type=CHRP=Common H/W Reference Platform Bus=PCI LPAR=Dynamic Multi-Processor 64 bit 主机型号:IBM p5 595 (9119-595) 网络配置:IP Address: 75.16.16.191 Sub Netmask: 255.255.248.0 Gateway: 75.16.16.100 主机存储:EMC 存储 主机物理内存:49152 MB 网卡信息:2 块网卡 速率为 1024M/S2) 文件系统使用情况24 / 28通过以上数据可以知道河北数据仓库服务器文件系统相关信息如下: 文件系统分区大小及使

29、用情况 文件系统挂载点信息 文件系统类型为 JFS2(Journaled File System 2)文件系统3) 系统资源使用情况观察上图,可以发现服务器 cpu 使用率较高的时段为 8:00-11:30、14:00-17:20 ,而系统 I/O 开销较高的时段均出现在 21:00-次日 5:50。以上信息基本符合服务器晚上进行数据25 / 28ETL 处理、白天工作时段多进行平台一般事务处理的情况。进一步观察服务器 cpu 使用情况:发现 CPU 利用率较高均为用户进程,单独查看 CPU-11 注意到 22:00-0:00 这个时段内 CPU 的 Wait 状态占用率明显增大, user

30、状态占用率却很低,此时系统 I/O 明显升高,说明这个时段内有大量磁盘 I/O 发生,CPU 占用率逐渐下降是由于等待磁盘 I/O 引起的。实际情况中,这个时段服务器正在进行 ETL 数据处理,的确有大量数据传输和磁盘读写发生。26 / 285.2.3 示例三介绍个利用 nmon 进行系统实时监控的例子。把 nmon 脚本上传到服务中,直接运行即可,执行命令如下:#./nmon 或者#/tmp/nmon/nmon以下是 aix5.3 下使用 nmon 的一些截图:27 / 28分别输入 c、t、n、m,可以了解系统 cpu,内存,消耗资源最高的线程的使用情况。28 / 28附录一 常用网站Links:NMON home pagehttp:/ home pagehttp:/ Forumhttp:/

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报