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

如何使用Nmon监控Linux系统性能,第1张

用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_ubuntu810mv nmon_x86_ubuntu810 /usr/local/散巧bin/nmon

对于 Debian 还要做以下 *** 作(不做也同样能运行):apt-get install lsb-releaselsb_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" 是这台主机的主机名。

 首先在IBM的官方网上下载nmon工具,下载时注意念逗要下载对应的版本。我们这里以red hat server enterprise 5为例,下载的是nmon_x86_12a.zip版本,该版本支持redhat。下载后解压,改名为nmon并上传到Linux中。

进入nmon目录,查看nmon文件下各文件的权限。

[root@localhost nmon]# ls -l

total 1212

-rw-r--r-- 1 hyzhou hyzhou 167781 Feb 12  2009 nmon_x86_fedora10

-rw-r--r-- 1 hyzhou hyzhou 168875 Feb 11  2009 nmon_x86_opensuse10

-rw-r--r-- 1 备配hyzhou hyzhou 152131 Feb 11  2009 nmon_x86_rhel45

-rw-r--r-- 1 hyzhou hyzhou 仿高指167957 Feb 13  2009 nmon_x86_rhel52

-rw-r--r-- 1 hyzhou hyzhou 174171 Feb 12  2009 nmon_x86_sles10

-rw-r--r-- 1 hyzhou hyzhou 154107 Feb 14  2009 nmon_x86_sles9

-rw-r--r-- 1 hyzhou hyzhou 183215 Feb 13  2009 nmon_x86_ubuntu810

从图中可以看出,相关文件的权限仅有只读权限,这样在执行命令的时候可能会存在没有权限的问题,为了能够正常使用nmon工具,我们需要修改文件的权限。这里只修改nmon_x86_rhel52的权限,为了方便,直接改成777。

#chmod u+x nmon_x86_rhel52

修改完成后,就完成了nmon工具安装。

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

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

1.用root用户登录系统,建立nmon日志存储目录;

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

该命令启动后,会在/home/centos/nmon/nmon_data目录下生成监控文件,并持续写入资源数据,直至所有监控点收集完成,这些 *** 作均自动完成,无需手工干预,用户可以继续完成其他 *** 作。如果想停止该监控,需要通过“ps –ef|grep nmon”查询进程号,然后杀掉该进程以停止监控。

3.为nmon.sh文件添加可执行权限;

4.启动nmon,添加crontab item;

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

6.nmon开始运行后,每天在/home/centos/nmon/nmon_data下产生一个文件,文件名包含日期如bigdata4_190628_1828.nmon;

7.nmon数据文件定期备份定期清理;

每个烂锋标签页都展示了对某一指标如CPU、内存、网络、I/O的详细监控数据,需要重点关注的几个监控指标如下:

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

如果一个CPU被充分使用,CPU占用时间配比应为User%(65-70%),Sys%(30-35%),Idel%(0-5%)

如果Sys%占比过大说明系统进程本身占领大部分cpu资源,可考虑系统是否存在过多僵尸进程或者系统进程存在死循环等原因;

CPU Wait%占比过大说明可能唯此IO或内存方面存在瓶颈,可能是由于内存不够而引起频繁的的数据交换。

包括主机CPU使用情况汇总以及每个CPU的运行情况。

此处重点关注CPU_ALL页面。CPU_ALL页面可以看到如下图的CPU整体上在每个监控点的数据,包括User%、Sys%、Wait%、Idle%、Steal%、CPU%以及CPUs(cpu个数)及对应图表。

参数 | 说明

CPU Total| 执行间隔时间列表

User% | 采集间隔内所有CPU在User Mode下的Time占比(Avg、Max)

Sys% | 采集间隔内所有CPU在System Mode下的Time占比(Avg、Max)

Wait%| 采集间隔内所有CPU处于空闲且等待I/O完成的时间比例(Avg、Max)

Idel%|采集间隔内所有CPU处于空闲Time的占比(Avg、Max),此值和User%,Sys%,Wait%,Steal%之和等于1

CPU%| CPU总体占用情况,这个值通常等于User%+Sys%

CPUs | CPU核数,即 *** 作系统是多少核的

磁盘的读、写及I/O统计信息,系统各磁盘分区的读写情况。此处重点关注DISK_SUMM即可。

Disk total KB/s | 执行间隔时间列表

Disk Read KB/s| 采集间隔内磁盘设备的读速率

Disk Write KB/s| 采集间隔内磁盘设备的写速率

IO/sec | 采集间隔内磁盘整体平均每秒IO数

参数 | 说明

memtotal | 物理内指历迅存总大小,单位MB

swaptotal | 虚拟内存(即交换空间)的总大小

memfree | 剩余物理内存大小

swapfree | 剩余虚拟内存大小

cached | 物理内存中被cache占用的缓存大小

active | 在活跃使用中的内存大小

buffers | 文件系统缓冲区的大小

swapcached | 虚拟内存中被cache占用的缓存大小

inactive | 不常使用的内存大小

反映系统的网络运行情况,系统各个网络适配器读写的数据包数。此处重点关注NET页面。

NET页面显示系统中每个网络适配器的数据传输速率(千字节/秒)。

参数 | 说明

Network I/O | 执行间隔时间列表

Total-Read | 网络适配器每秒接收的数据包总大小(KB/s)

Total-Write(-ve) | 网络适配器每秒发送的数据包总大小(KB/s)

反映系统运行线程及等待切换的线程平均数。

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


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/8227554.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存