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

844阅读 0评论2008-12-18 yuchuan2008
分类:LINUX

级别: 初级

Nigel Griffiths (), pSeries Technical Support, IBM 

2003 年 11 月 04 日
2006 年 6 月 08 日 更新

这个免费工具使您能够在一个屏幕上查看大量的信息。尽管 IBM 没有提供对该工具的正式支持,并且您在使用它的时候必须自己承担相应的风险,但是您可以从中获得大量有价值的性能统计信息。如果有一个免费工具可以提供您所需要的所有信息,那么为什么还要使用五个或六个不同的工具呢?

用法说明:这个 nmon 工具并未受到正式支持。没有提供或隐含任何保证,并且您无法从 IBM 获取相关的帮助。

nmon 工具运行于:

nmon 工具大约每六个月更新一次,或者在可用的新的操作系统发布版中对其进行更新。要将您的名字放入到请求更新的电子邮件列表中,请与 Nigel Griffiths 联系。

这个工具可以与 nmon 分析程序一同使用,后者将加载 nmon 的输出文件并自动地创建大量的图形。

nmon 工具可以为 AIX 和 Linux 性能专家提供监视和分析性能数据的功能,其中包括:

还包括一个用来从 nmon 的输出生成图形并创建可以在 Web 站点显示的 .gif 文件的新工具。

有关详细信息,请参阅自述文件。

nmon 工具可以帮助在一个屏幕上显示所有重要的性能优化信息,并动态地对其进行更新。这个高效的工具可以工作于任何哑屏幕、telnet 会话、甚至拨号线路。另外,它并不会消耗大量的 CPU 周期,通常低于百分之二。在更新的计算机上,其 CPU 使用率将低于百分之一。

使用哑屏幕,在屏幕上对数据进行显示,并且每隔两秒钟对其进行更新。然而,您可以很容易地将这个时间间隔更改为更长或更短的时间段。如果您拉伸窗口,并在 X Windows、VNC、PuTTY 或类似的窗口中显示这些数据,nmon 工具可以同时输出大量的信息。

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

该工具是一个独立的二进制文件(不同的 AIX 或 Linux 版本中该文件也有所不同),您可以在五秒钟内完成该工具的安装,如果您的输入速度更快的话,也许时间更短。安装过程非常简单:

  1. 必须是 root 用户,或者通过输入下面的命令允许一般用户读取 /dev/kmem 文件(作为 root 用户):
    chmod ugo+r /dev/kmem

  2. 如果您需要磁盘统计信息,还可以运行下面的命令(作为 root 用户):
    chdev -l sys0 -a iostat=true 

要以交互式的方式运行该工具,请阅读该文件前页中的相关提示。然后启动该工具,并使用单键命令来查看您所需要的数据。例如,要获取 CPU内存磁盘统计信息,启动 nmon 并输入:

cmd

h 键。

要获取附加的帮助信息,可以尝试下列方法:

运行带 -f 标志的 nmon 命令。有关详细信息,请参阅 nmon -h。但是作为示例,可以尝试运行下面的 nmon 命令,在 1 小时内以 30 秒的时间间隔捕获数据快照:

nmon -f -s 30 -c 120
nmon -fT -s 30 -c 120

第二行的命令还可以捕获消耗资源最多的进程。这两行命令都将在当前目录中创建输出文件,其名称为:

_date_time.nmon

该文件采用逗号分隔值 (CSV) 的格式,并且可以将其直接导入到电子表格中。如果您使用的是 Lotus® 1-2-3,那么需要对该文件进行排序。(对于 Excel 版本的 nmon 分析程序,则不需要进行这个操作。)在 AIX 中,请遵循下面的示例:

sort -A mymachine_311201_1030.nmon > xxx.csv

关于如何节省时间的说明:





回页首


新特性 描述
启动 目前还有一个称为 "nmon" 的小型 Shell 脚本,可以用来启动适当的 nmon 版本。将该脚本和 nmon 二进制文件放入到您的 $PATH 中,然后输入:nmon。该版本目前仅在 32 位模式下进行了编译。所以,它可以运行于 32 位和 64 位硬件。这是为了使它更容易安装和运行。
N = NFS 对于 nmon 10 来说,NFS 是全新的特性。
p = 分区 (Partitions) 该特性是为了共享 CPU 分区信息,这是 p5/AIX5.3 的重要特性。
C = CPU 这是为了支持使用 32 个以上 CPU 的计算机,最多可以根据需要达到 128 个逻辑 CPU。
c = CPU 如果您在 POWER5 上使用 AIX 5.3,并且处于共享 CPU 环境中,那么该特性可以提供关于物理 CPU 使用的详细信息。
S = 子类 (Subclass) 该特性根据要求表示 WLM 的子类。
a = 磁盘适配器 (Disk adapters) 提供磁盘适配器的详细信息,比如它们的完整类型。
r = 资源 (Resources) 其中包括以 MHz 为单位的 CPU 速度。
k = 内核 (Kernel) 提供了一些新的字段。
L = 大型页面 (Large pages) 提供了大型页面的状态信息,适用于追求高性能的用户。
D = 磁盘 (Disk) 提供关于磁盘、磁盘类型大小、可用空间、卷组、适配器等更详细的信息。
n = 网络 (Network) 提供关于网络适配器、MTU 和相关错误的详细信息。
m = 内存 (Memory) 提供内存使用的更详细的信息,如系统(内核)和进程、活动虚拟内存。
-B 这是移除封装的启动选项。

图 1 是屏幕输出的示例。它显示了 AIX 5 的起始屏幕,以及大量有价值的信息。



启动

图 2 说明了关于 CPU(这里是 4 CPU 的 POWER5 计算机,并打开了 SMT)、内存使用、内核内部统计和磁盘统计的详细信息。注意:这个逻辑分区 (LPAR) 占用了一半 CPU 中其授权值的 6 倍。



CPU

图 3 显示了网络、NFS 统计信息和日志文件系统使用的详细信息。



网络

在下面的图 4 中显示了 POWER5 共享处理器微分区统计的详细信息。



LPAR

图 5 说明了 Linux 版本的 nmon 的详细信息,其中显示了 CPU(这里是 2 CPU 的 POWER5 计算机,并打开了 SMT)、LPAR 统计、内存使用、网络统计、文件系统使用和磁盘统计的详细信息。注意:该 LPAR 的物理 CPU 仅在 SUSE SLES9 Service Pack 1 和 Red Hat EL 4 Update 1 中是可用的。



nmon_Linux1

图 6 显示了计算机、磁盘统计(详细模式)和主要进程的操作系统详细信息。



nmon_Linux2

下面是可用的下载选择:



 



 

Nigel Griffiths 是 IBM eServer pSeries Technical Support Advanced Technology Group 的成员。他是一位性能、规模调整、基准测试和 Oracle RDBMS 方面的专家。nmon 工具设计原本用来为内部使用提供基准测试和性能优化的支持,但应大家的要求分发给了需要帮助的伙伴。您可以通过 与 Nigel 联系。

上一篇:如何用Sysctl调整Linux操作系统的性能
下一篇:提高 Linux 上 socket 性能