一个专业运
维技术分享!

nmon监控与nmon analyser工具分析

分析 AIX 和 Linux 性能的免费工具。

nmon 工具可以帮助在一个屏幕上显示所有重要的性能优化信息,并动态地对其进行更新。这个高效的工具可以工作于任何哑屏 幕、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 的输出生成图形并创建可以在 Web 站点显示的 .gif 文件的新工具。

一.下载nmon nmon下载页:

下载页:

http://nmon.sourceforge.net/pmwiki.php

二.初始化nmon工具、安装nmon。

安装位置:/home/nmon (任意目录)

1、 在home 目录下创建nmon文件夹:   #  mkdir nmon

2、 上传nmon16h_helpsystems_v2.tar.gz到 nmon目录

3、 解压:  #  tar –zxvf nmon16h_helpsystems_v2.tar.gz

4、 赋权限:#  chmod –R 755 nmon

5、 修改启动文件名称:

         # mv nmon_x86_64_sles11 nmon

         # ./nmon

6、 启动nmon:

#  ./nmon(在nmon目录下执行命令)

对于 Debian 还要做以下操作(不做也同样能运行):

apt-get install lsb-release

lsb_release -d | sed 's/Description:\t//' > /etc/debian_release

然后直接运行 nmon 即可,直接运行nmon可以实时监控系统资源的使用情况,执行下面的步骤可以展现一段时间系统资源消耗的报 告。(如果有乱码,要将CRT终端类型改成VT100)

下面是直接执行nmon命令实时监控系统资源消耗情况的截图:

CPU、内存、磁盘和网络的消耗情况都被很直观的展现出来。

三.生成nmon报告。 1).采集数据:

#nmon -f -s10 -c60 -m /home/

捕获数据到文件,只要运行带 -f 标志的 nmon 命令。执行nmon –f ***后,nmon 将转为后台运行。要查看该进程是否仍在运行,可 以输入: ps -ef | grep nmon。命令将在当前目录中创建输出文件,其名称为: _date_time.nmon。该文件采用逗号分隔

值 (CSV) 的格式,并且可以将其直接导入到电子表格中,可进行分析和绘制图形 参数解释:

-s10 每 10 秒采集一次数据。

-c60 采集 60 次,即为采集十分钟的数据。

示例: 每1秒捕获数据快照,捕获20次 nmon –f -s 1 -c 20 -m /home/

每30秒捕获数据快照,捕获120次,包含进程信息 nmon –f -t -s 30 -c 120 -m /home/

-f 电子表格格式,输出文件为: _YYYYMMDD_HHMM.nmon

-t 在导出的信息中包含前几位的进程信息。 -m 生成的数据文件的存放目录。

这样就会生成一个nmon文件,并每X秒更新一次,采集Y次,直到X*Y秒后。 生成的文件名如:_YYYYMMDD_HHMM.nmon,"" 是这台主机的主机名。 提前停止监控,可以使用命令杀掉进程,下述方法都可:

1)killall -9 nmon

2)ps -ef | grep nmon,得到PID进程号,再进行kill -9 nmon的pid 3)kill -9 `pidof nmon`

nmon -h查看更多帮助信息。

2).生成报表:

下载 nmon analyser (生成性能报告的免费工具):

nmon analyser 工具以 NMON 性能工具生成的文件作为输入,然后将它们转换为 Microsoft Excel 电子表格,并自动地生成相应 的图形。 建议使用Microsoft Excel 2007 或更高版本,必须在打开nmon_analyser.xls时选择启用宏。

将之前生成的 nmon 数据文件传到 Windows 机器上,用 Excel 打开分析工具 nmon analyser v33C.xls 。点击 Excel 文件中的 "Analyze nmon data" 按钮,选择 nmon 数据文件,这样就会生成一个分析后的结果文件: hostname_090824_

1306.nmon.xls ,用 Excel 打开生成的文件就可以看到结果了。

下面是在测试环境中生成的NMON报告截图:

红色区域为不同指标的分析报告。

3)多台服务器同时进行监控 测试过程中,有可能需要同时监控多台服务器资源情况,这时每一台上面去执行nmon监控命令,较为麻烦,且操作时间点也不一致。 可通过:在一台服务器上,同时远程执行多台服务器的nmon命令操作,以解决该问题。

操作步骤: 1)服务器之间配置信任关系;进行ssh或scp时,无需输入密码。 参见:http://www.51testing.com/html/00/130600-147281.html 2)把需要远程执行的命令写入shell脚本中,以方便执行,参见:nmon.sh;

3)把不同服务器上的日志文件下载到本地PC,通过nmon analyser工具进行分析;也可使用远程执行命令方式,在同一台服务器上进 行操作下载.nmon文件(存放目录、文件命名规范,可方便操作);

# cat nmon.sh

#!/bin/bash

mkdir -p /tmp/nmon_monitor

/usr/local/bin/nmon -f -t -s 5 -c 100 -m /tmp/nmon_monitor -F 146.182_$1.nmon

ssh root@192.168.146.180 'mkdir -p /tmp/nmon_monitor;/usr/local/bin/nmon -f -t -s 5 -c 100 -m /tmp/nmon_monitor -F 146.180_'$1'.nmon'

ssh root@192.168.148.137 'mkdir -p /tmp/nmon_monitor;/usr/local/bin/nmon -f -t -s 5 -c 100 -m /tmp/nmon_monitor -F 148.137_'$1'.nmon'

脚本说明:

1)生成的.nmon文件,推荐放在同一目录下,如:-m参数指定的:/tmp/nmon_monitor;

2)生成的.nmon文件,推荐增加IP或hostname标识,下载到本地时,不同服务器数据不会弄混,如:146.182_$1.nmon;

3).nmon文件中,使用了参数$1,用于传参给生成的文件名,如:./nmon.sh 20140901_01;则生成的文件为:146.182_20140901_ 01.nmon;

4)-s 5 -c 100根据实际指定,这里表示每隔5秒采集一次数据,共采集100次,即持续5*100=500秒;

0 0 * * * /sbin/nmon -t -f -N -m /home/unionmon/nmon/log -s300 -c288

0 0 28 * * /sbin/nmon -f -N -m /home/unionmon/nmon/week_log -s600 -c1008

4).自动按天采集数据:

在 crontab 中增加一条记录:

0 0 * * * root nmon -s300 -c288 -f -m /home/ > /dev/null 2>&1

300*288=86400 秒,正好是一天的数据。

5)还可以使用nmon2rdd、nmon2web等工具制作B/S结构的性能监控平台

nmon的不足 nmon监控的不足之处:

1)没有负载监控数据; w/top命令中:

load average: 0.40, 0.53, 0.63

测试过程中,注意使用w或top查看该信息。

2)内存监控数据中,没有used信息,需要计算;

# free            

  total used free shared buffers cached

Mem: 2075336 1850744 224592 0 595064 539744

-/+ buffers/cache: 715936 1359400      

Swap: 2048248 30996 2017252      

free命令中显示的used:used=total-free 真实使用used=total-free-cached-buffers

这部分数据,可以在nmon analyser生成的.xls报表中,计算得出,并对应生成图表;

3)IO监控数据中,没有%util信息; 有IO读写速率等相关信息,也可以进行IO问题分析。



微信扫描下方的二维码阅读本文

赞(5) 打赏
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。小柳实验室 » nmon监控与nmon analyser工具分析

相关推荐

  • 暂无文章

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏