如何使用Nmon监控Linux系统性能

如题所述

用Nmon监控Linux系统性能的方法请参见下面介绍(配图):

1、安装Nmon

2、一旦安装完成,则可以通过在终端执行 nmon 命令启动它。

Nmon命令执行之后,大家可以看到如下输出:

3、从上图中大家可以看到,Nmon 命令行工具是一个用户交互的应用程序,大家可以非常方便地使用键盘快捷键来查看相关统计信息。

q : 停止并退出Nmon

h : 查看帮助信息

c : 查看 CPU 统计信息

m : 查看内存统计信息

d : 查看磁盘统计信息

k : 查看内核统计信息

n : 查看网络统计信息

N : 查看 NFS 统计信息

j : 查看文件系统统计信息

t : 查看 Top 进程统计信息

V : 查看虚拟内存统计信息

v : 详细输出模式

4、查看 CPU 统计信息

如果你想查看 CPU 性能信息,可以直接按 c 键:

5、查看 Top 进程统计信息

如果你想查看 Top 进程统计信息,可以直接按 t 键:

6、查看网络统计信息

如果你想查看网络统计信息,可以直接按 n 键:

7、磁盘I/O图

使用 d 键可以查看磁盘统计信息:

8、查看内核统计信息

如果你想查看内核统计信息,可以直接按 k 键:

9、获取系统信息

如果要查看 Linux 的系统信息,如:系统架构、操作系统版本、Linux 版本则可以使用 r 键,这对系统管理员非常有用。

以上是基础使用方法。下面再补充一些命令和方法:


1、启动

打开nmon所在的目录:cd /usr/local/nmon
修改启动文件的访问权限:chmod 755 nmon_x86_rhel52
启动nmon:./nmon_x86_rhel52
如果要采样nmon的数据保存成文件,可以
./nmon_x86_rhel52 -fT -s 30 -c 120
其中30表示每隔30秒nmon取一次系统性能数据,120表示取120次;
这样nmon将会在运行开始算起连续取得30sX120=60分钟,可根据实际需要时间调整;当运行以上命令后该目录下会生成一个.nmon文件,该文件会根据间隔时间被写入性能数据,当一段时间后再查看该文件,文件字节变大

利用nmonanalyser分析.nmon文件


当测试结束的同时ftp到服务器上将.nmon文件get下来,
打开nmon_analyser.zip 包下的nmon analyser v338.xls 文件,点击Analyse nomn data按钮,选择之前get来下的.nmon文件。
(如果报告以下宏的安全级别太高错误,则在“工具 -- 宏 --安全性”里把级别调低,然后重新打开 nmon analyser v338.xls 文件)
待分析结束后会生成性能分析结果文件(文件格式为.xls,其中包括CPU,IO,内存等性能分析报告)。
分析结果中有很多数据和图形,简要介绍主要的性能参数图像


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

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

4.3内存情况汇总(对应excel标签的‘MEM’)
曲线表示内存剩余量(MB)
分析数据得到的报告文件(.xls)中包含很多性能分析结果数据,根据自己的需要查看。


2、nmon运行本身就消耗系统资源的;
另外如果取到.nmon文件后确定不再需要nmon继续收集信息则应kill掉nmon;
命令:

ps -A | grep nmon #得到pid

kill -9 pid 


suse10 enterprise sp2:

nmon_x86_rhel3

使用对应的操作系统文件:
chmod +x nmon_x86_ubuntu810
mv nmon_x86_ubuntu810 /usr/local/bin/nmon

对于 Debian 还要做以下操作(不做也同样能运行):
apt-get install lsb-release
lsb_release -d | sed 's/Description:\t//' > /etc/debian_release

然后直接运行 nmon 即可。

采集数据并生成报表:
采集数据:
nmon -s10 -c60 -f -m /home/

参数解释:
-s10 每 10 秒采集一次数据。
-c60 采集 60 次,即为采集十分钟的数据。
-f 生成的数据文件名中包含文件创建的时间。
-m 生成的数据文件的存放目录。

这样就会生成一个 nmon 文件,并每十秒更新一次,直到十分钟后。
生成的文件名如: hostname_090824_1306.nmon ,"hostname" 是这台主机的主机名。

生成报表:
下载 nmon analyser (生成性能报告的免费工具):
http://www.ibm.com/developerworks/wikis/display/Wikiptype/nmonanalyser

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

如果宏不能运行,需要做以下操作:
工具 -> 宏 -> 安全性 -> 中,然后再打开文件并允许运行宏。

自动按天采集数据:
在 crontab 中增加一条记录:
0 0 * * * root nmon -s300 -c288 -f -m /home/ > /dev/null 2>&1

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


采样文件越来越大:
[email protected].***:~/nmon# ./nmon -s1 -c33 -f         
[email protected].***:~/nmon# 
[email protected].***:~/nmon# du  -sh *
8.0K    AD39_***_sles10_101207_1046.nmon
160K    nmon
[email protected].***:~/nmon# du  -sh *
12K     AD39_***_sles10_101207_1046.nmon
160K    nmon
[email protected].***:~/nmon# du  -sh *
16K     AD39_***_sles10_101207_1046.nmon
160K    nmon
[email protected].***:~/nmon# du  -sh *
20K     AD39_***_sles10_101207_1046.nmon
160K    nmon
[email protected].***:~/nmon# du  -sh *
20K     AD39_***_sles10_101207_1046.nmon
160K    nmon 


注:以上一些机器名称或系统名称,请根据实际情况自行调整及修改。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-03-31

一、概述

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

nmon所记录的数据包含以下一些方面(也是我们在寻找问题过程中所关注的资源点):

·cpu占用率

·内存使用情况

·磁盘I/O速度、传输和读写比率

·文件系统的使用率

·网络I/O速度、传输和读写比率、错误统计率与传输包的大小

·消耗资源最多的进程

·计算机详细信息和资源

·页面空间和页面I/O速度

·用户自定义的磁盘组

·网络文件系统

另外在AIX操作系统上,nmon还能监控到其他的一些信息,如异步I/O等。

二、下载安装nmon

1、下载安装包:http://nmon.sourceforge.net/pmwiki.php?n=Site.Download
选择下载相应的版本,我下载的是 nmon16d_x86.tar.gz。解压后里边有很多版本的nmon,我用的是nmon_linux_x86_64,亲测可用。
2、直接在window中将解压好的nmon_linux_x86_64通过sftp上传到要监控的linux系统中对应目录下
3、执行授权命令:
# chmod +x  nmon_x86_64_linux
4、运行./nmon_x86_64_linux,便可进入nmon的监控界面,如下图:

三、实时监控

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


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


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


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


键入“h”查看帮助信息

本回答被网友采纳
第2个回答  2016-03-14
Nmon ( 又名 Nigel’s Monitor) 是非常常用的系统性能监视工具,由 IBM 工程师 Nigel Griffiths 开发,适用于 AIX 和 Linux 操作系统。该工具可以直接在屏幕上显示当前操作系统的资源利用率,以帮助大家找出系统瓶颈和协助系统调优。由于其十分出名,在 10大好用的Linux实用工具推荐 一文中已进行过简单推荐。

使用 Nmon 大家便可以轻松监控系统 CPU、内存、网络、磁盘、文件系统、NFS、Top 进程等信息。

安装Nmon

默认 Nmon 已在 Ubuntu 的源中,大家可以直接使用 apt-get 进行安装:

sudo apt-get install nmon

如何使用Nmon监控Linux系统性能

使用Nmon监控Linux系统性能

一旦安装完成,则可以通过在终端执行 nmon 命令启动它。

Nmon命令执行之后,大家可以看到如下输出:

Nmon

从上图中大家可以看到,Nmon 命令行工具是一个用户交互的应用程序,大家可以非常方便地使用键盘快捷键来查看相关统计信息。

q : 停止并退出Nmon
h : 查看帮助信息
c : 查看 CPU 统计信息
m : 查看内存统计信息
d : 查看磁盘统计信息
k : 查看内核统计信息
n : 查看网络统计信息
N : 查看 NFS 统计信息
j : 查看文件系统统计信息
t : 查看 Top 进程统计信息
V : 查看虚拟内存统计信息
v : 详细输出模式
查看 CPU 统计信息

如果你想查看 CPU 性能信息,可以直接按 c 键:

Nmon

查看 Top 进程统计信息

如果你想查看 Top 进程统计信息,可以直接按 t 键:

Nmon

查看网络统计信息

如果你想查看网络统计信息,可以直接按 n 键:

Nmon

磁盘I/O图

使用 d 键可以查看磁盘统计信息:

Nmon

查看内核统计信息

如果你想查看内核统计信息,可以直接按 k 键:

Nmon

获取系统信息

如果要查看 Linux 的系统信息,如:系统架构、操作系统版本、Linux 版本则可以使用 r 键,这对系统管理员非常有用。

Nmon
第3个回答  推荐于2017-12-16

    Nmon ( 又名 Nigel’s Monitor) 是非常常用的系统性能监视工具,由 IBM 工程师 Nigel Griffiths 开发,适用于 AIX 和 Linux 操作系统。该工具可以直接在屏幕上显示当前操作系统的资源利用率,以帮助大家找出系统瓶颈和协助系统调优。使用 Nmon 大家便可以轻松监控系统 CPU、内存、网络、磁盘、文件系统、NFS、Top 进程等信息。

    安装:sudo apt-get install nmon

    一旦安装完成,则可以通过在终端执行 nmon 命令启动它

    下面是一些说明:

    q : 停止并退出Nmon

    h : 查看帮助信息

    c : 查看 CPU 统计信息

    m : 查看内存统计信息

    d : 查看磁盘统计信息

    k : 查看内核统计信息

    n : 查看网络统计信息

    N : 查看 NFS 统计信息

    j : 查看文件系统统计信息

    t : 查看 Top 进程统计信息

    V : 查看虚拟内存统计信息

    v : 详细输出模式

    查看 CPU 性能信息,可以直接按 c 键

    查看 Top 进程统计信息,可以直接按 t 键

    查看网络统计信息,可以直接按 n 键

     d 键可以查看磁盘统计信息

    查看内核统计信息,可以直接按 k 键

    查看 Linux 的系统信息,如:系统架构、操作系统版本、Linux 版本则可以使用 r 键,这对系统管理员非常有用。

本回答被提问者采纳
相似回答