nmon是一款开源性能监控工具,用于监控linux系统的资源消耗信息,并能把结果输出到文件中,然后通过nmon_analyser工具产生数据文件与图形化结果。因为它免费,体积小,安装简单,耗费资源低,广泛应用于AIX和Linux系统。

一、nmon下载

我们在下载前首先查看Linux系统内核版本,因为不同的Linux版本,Nmon对应的版本也不同,Linux版本必须Nmon版本一一对应

1.查看Linux内核方法一

[mrjade@localhost nmon16d]$ cat /proc/version
Linux version 5.3.0-28-generic (buildd@lcy01-amd64-009) (gcc version 7.4.0 (Ubuntu 7.4.0-1ubuntu1~18.04.1)) #30~18.04.1-Ubuntu SMP Fri Jan 17 06:14:09 UTC 2020

内核版本5.3.0-28-generic

2.查看Linux内核方法二

[mrjade@localhost nmon16d]$ uname -a
Linux linux 5.3.0-28-generic #30~18.04.1-Ubuntu SMP Fri Jan 17 06:14:09 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

5.3.0-28-generic –内核版本

3.查看Linux内核方法三:直接问开发或者运维,简单粗暴

4.下载地址:http://nmon.sourceforge.net/pmwiki.php?n=Site.Download

 

二、nmon命令

./nmon_x86_64_centos7 -f -s 10 -c 60 -m ./log/ 

命令的含义是:
-f :按标准格式输出文件名称:<hostname>_YYYYMMDD_HHMM.nmon
-t :输出最耗资源的进程
-s :每隔n秒抽样一次,这里为10秒
-c :取出多少个抽样数量,这里为采集 60 次,即监控 = 10*60 = 600秒 = 10分钟
-m : 报告输入路径
nmonreport:监控记录的标题
hostname:主机名 

三、nmon性能结果报告分析

1.下载nmon analyser(用于将Nmon采集的数据转换成可视化图表)

https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/Power+Systems/page/nmon_analyser

2.双击打开nmon analyser v61.xlsm,切记不要用WPS,因为WPS不支持宏,点击Analyze nmon data按钮,,选择.nmon文件

(1)SYS_SUMM【服务器资源使用率汇总】

服务器资源使用率汇总表:整体信息页面,显示当前服务器的总体性能情况
  • 【正上方】Samples、First、Last:采集点样本统计。
Samples:采集点样本总数,折线图中出现的采集点统计总数。
First:第一个采集点的采集时间。
Last:最后一个采集点的采集时间。
  • 【正中间】折线图:[蓝线:CPU%]为cpu占有率变化情况;[紫线:IO/sec]为磁盘IO的变化情况。
IO/sec:[紫线]仅显示磁盘IO/sec的图,不包括Network的I/O。每秒钟输出到物理磁盘的传输次数。
  • 【左下角】Disk tps statistics:磁盘的总体数据,包括如下几个:
1、Avg tps during an interval:
显示采集间隔内磁盘平均I/O次数,该值等于Sheet DISK_SUMM中IO/sec列的平均值。
每个间隔时间内,平均每秒IO数,也可以理解为提交处理的次数。 2、Max tps during an interval:
显示采集间隔内磁盘最大I/O次数,该值等于Sheet DISK_SUMM中IO/sec列的最大值。
每个间隔时间内,每秒最大IO次数。 3、Max tps interval time:
显示磁盘最大I/O所在时间点。
最大传送次数出现的时间点。 4、Total number of Mbytes read:
显示采集间隔内磁盘读的总兆字节数,可能是nmon的bug,该值并不准确,并且使用LVM划分的虚拟磁盘可能会存在重复统计。
整个监控时间内读的字节数。 5、Total number of Mbytes written:
显示采集间隔内磁盘写的总兆字节数,该值并不准确,理由同上。
整个监控时间内写的字节数。 6、Read/Write Ratio:
显示 Total number of Mbytes read/ Total number of Mbytes written 的值。
实时读写比率。
  • 【右下角】CPU:CPU的总体数据,包括如下几个:
// ********************* 橫行:CPU各项指标 **************************** //
1、User%:显示采集间隔内所有CPU在User Mode下的Time占比。
2、Sys%:显示采集间隔内所有CPU在System Mode下的Time占比。
3、Wait%:显示采集间隔内所有CPU处于空闲且等待I/O完成的时间比例。
4、Idle%:CPU空闲率,显示采集间隔内所有CPU处于空闲Time的占比。
5、CPU%:cpu占有率,显示采集间隔内所有CPU的(user%+system%)占比和。 // ****************** 纵列:CPU各项指标数据中的特殊值 ******************* //
1、Max:cpu各项指标数据中的最大值。
2、Avg:cpu各项指标数据中的整体平均值。
3、Max:Avg:cpu各项指标数据的最大值和平均值的比率。
1、Wait% 是 CPU 空闲状态的一种,当CPU处于空闲状态而又有进程处于 D 状态(不可中断睡眠)时,
系统会统计这时的时间,并计算到Wait%里。
2、Wait% 不是一个时间值,而是时间的比例,因此在同样 I/O Wait 时间下:
服务器 CPU 越多,Wait% 越低,它体现了 I/O 操作与计算操作之间的比例。
3、对 I/O 密集型的应用来说一般 Wait% 较高,且 Sheet PROC 中 Blocked 也较高,
这时需关注是什么导致了过多的进程等待。

(2)MEM

1.内存(MB)报表:本 sheet 主图上显示空闲实存的数量

1、在 MEM 表里面使用如下公式计算出每行的内存使用率并进行取平均:
(Memtotal - Memfree - cached - buffers)/Memtotal  * 100 即 =(C2-G2-L2-O2)/C2*100
统计后手动绘制拆线图,如
2、通过分析内存使用率的趋势,可定位是否内存泄露情况。

3、有人看到内存使用率是 99%,就认为内存用满了,并没有区分内存分页是什么类型,这样武断的说内存用满了是不科学的。

4、在 AIX 上主要关注的是计算内存占整个物理内存的百分比,linux 上主要关注的是 active 内存占整个物理内存的百分比。

2.图表说明:

(3)CPU

Cpu使用率分为三部分,系统、用户和等待,分别对应图中红色、蓝色和灰色部分。
cpu使用率100%的情况,如果红色占大部分,说明系统进程本身占据大部分cpu资源,可考虑系统是否存在过多僵尸进程或者系统进程存在死循环等原因;
如果蓝色占大部分,说明用户进程占用大量cpu资源,可考虑被压系统是否压力过大,或者被压系统存在大量运算等消耗cpu资源的操作。

nmon服务器性能结果报告分析的更多相关文章

  1. linux服务器性能检测工具nmon使用

    今天介绍一款linux系统服务器性能检测的工具-nmon及nmon_analyser (生成性能报告的免费工具),亲测可用. 一.介绍 nmon 工具可以帮助在一个屏幕上显示所有重要的性能优化信息,并 ...

  2. Linux服务器性能查看分析调优

    一 linux服务器性能查看 1.1 cpu性能查看 1.查看物理cpu个数: cat /proc/cpuinfo |grep "physical id"|sort|uniq|wc ...

  3. Linux服务器性能分析与调优

    一 linux服务器性能查看 1.1 cpu性能查看 1.查看物理cpu个数: cat /proc/cpuinfo |grep "physical id"|sort|uniq|wc ...

  4. Linux服务器性能分析与优化

    影响服务器性能的因素: CPU :大部分cpu在同一时间只能运行一个线程,超线程的处理器可以在同一时间处理多个线程,因此可以利用超线程特性提高系统性能. 在linux系统下,只有运行SMP内核才能支持 ...

  5. 服务器性能监控神器nmon使用介绍

    介绍 Nmon (Nigel's Monitor)是由IBM 提供.免费监控 AIX 系统与 Linux 系统资源的工具.该工具可将服务器系统资源耗用情况收集起来并输出一个特定的文件,并可利用 exc ...

  6. 性能测试学习之路 (三)jmeter常见性能指标(相关术语、聚合报告 && 服务器性能监控配置 && 图形结果 && 概要报告)

    1 性能测试目的 性能测试的目的:验证软件系统是否能够达到用户提出的性能指标,同时发现软件系统中存在的性能瓶颈,以优化软件. 最后起到优化系统的目的性能测试包括如下几个方面: 1.评估系统的能力:测试 ...

  7. Zynga 开源其服务器性能监控分析工具 zPerfmon

    流年不利的社交游戏服务商Zynga近日在官方博客宣布开源zPerfmon——该工具负责监控Zynga数以千计的社交游戏服务器.zPerfmon的源代码目前已经上传至Github. 包括Facebook ...

  8. Web服务器性能监控分析与优化

    Web服务器性能监控分析与优化 http://www.docin.com/p-759040698.html

  9. MySQL进阶篇(01):基于多个维度,分析服务器性能

    本文源码:GitHub·点这里 || GitEE·点这里 一.服务器性能简介 1.性能定义 服务器性能优化是一项非常艰巨的任务,当然也是很难处理的问题,在写这篇文章的时候,特意请教下运维大佬,硬件工程 ...

随机推荐

  1. ajax实现文件上传,多文件上传,追加参数

    1.html部分实现代码: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> ...

  2. vs项目模板创建和使用

    一.使用dotnet命令创建(适用于.NET Core,可以创建包含任意数量个项目的模板,但不会出现在vs的新建项目模板中) 官方文档:https://docs.microsoft.com/zh-cn ...

  3. linux 下调用wps 注意

    记录笔记以防忘记 wps 是界面程序,linux 必须在界面终端中调用 wps 命令才能打开软件 xshell 连接时启动tomcat ,wps命令 会使用Xshell 的隧道转发,只有在界面下的终端 ...

  4. Integer和int踩过的坑

    在做SSM项目时发现一个有趣的bug,在这里记录一下. 数据库表如下: 实体类:grade字段初始设定为int类型 在用mybatis对第三条数据进行修改时,希望赋值的更改,未赋值的不更改,测试运行 ...

  5. git使用——远程仓库(Remote repositories)

    前言 为了能在任意 Git 项目上协作,你需要知道如何管理自己的远程仓库. 远程仓库是指托管在因特网或其他网络中的你的项目的版本库. 你可以有好几个远程仓库,通常有些仓库对你只读,有些则可以读写. 与 ...

  6. 【深度学习】基于Pytorch的ResNet实现

    目录 1. ResNet理论 2. pytorch实现 2.1 基础卷积 2.2 模块 2.3 使用ResNet模块进行迁移学习 1. ResNet理论 论文:https://arxiv.org/pd ...

  7. javascript reduce 前端交互 总计

    sum(){ return this.products.reduce((total,next)=>{ return total + next.price * next.aumout},0) } ...

  8. PHP字符串截取,计算字符串长度

    /** * 字符串截取,支持中文和其他编码 * @param [string] $str [字符串] * @param integer $start [起始位置] * @param integer $ ...

  9. ACM-ICPC 2018 徐州赛区网络预赛 A. Hard to prepare (组合数学,递归)

    A. Hard to prepare After Incident, a feast is usually held in Hakurei Shrine. This time Reimu asked ...

  10. 22 Jquery 事件

    一.概述: 当用户与浏览器进行交互时这些方法被用于注册行为生效, 并进一步处理这些注册行为. 二.绑定事件处理器 .bind() ..unbind():为一个元素绑定一个事件处理程序.3.0版本已经弃 ...