【性能测试】性能数据采集工具nmon安装使用及报告参数含义详解

目录

nmon

nmon下载

解压安装

启动

数据采集配置

生成图形结果

nmon报告中的参数含义

资料获取方法


nmon

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

  • cpu占用率
  • 内存使用情况
  • 磁盘I/O速度、传输和读写比率
  • 文件系统的使用率
  • 网络I/O速度、传输和读写比率、错误统计率与传输包的大小
  • 消耗资源最多的进程
  • 计算机详细信息和资源
  • 页面空间和页面I/O速度
  • 用户自定义的磁盘组
  • 网络文件系统

下面我们一起来了解她的安装使用。

nmon下载

国外的源站尝试过几乎打不开,或者目录太过繁复,记录一个自己成功安装、使用nmon的经验。

我使用 的是 wget 命令:

wget http://sourceforge.net/projects/nmon/files/nmon_linux_14i.tar.gz

下载页面如下:

执行 ll 命令能在当前目录看到 nmon_linux_14i.tar.gz 文件

解压安装

解压:

tar -zxvf nmon_linux_14i.tar.gz

解压后文件如下图,从图中可以看出,nmon几乎支持当前所有主流的AIX 和 Linux系统。

直接执行系统对应的脚本文件就能启动nmon,博主使用的是redhat:

启动

直接执行后可以看到如下的界面,可以通过输入不同的字符让其展示不同的数据,

如输入c可显示CPU的信息,“m”对应内存、“n”对应网络,“d”可以查看磁盘信息;“t”可以查看系统的进程信息

数据采集配置

nmon可以通过命令的形式来监控系统在一段时间内的使用情况,并将结果记录下来

nmon -f -s 10 -c 60

参数说明:

  • -f 表示生成的数据文件名中有时间;
  • -s 10 表示每 10 秒采集一次数据;
  • -c 60 表示采集 60 次,10*60=600 秒

当我们执行上面的命令后,可以看到当前目录新增了一个以本主机名和当前日期为名称的“.nmon”文件。符合“<hostname>_date_time.nmon", 这个格式。

我们通过ps命令可以看到相关的nmon进程,这个进程10分钟过后会消失。当然,我们也可以直接手动kill掉。

生成图形结果

在运行结束后,我们可以吧这个“.nmon”文件导到本地。然后下载nmonanalyser,打开其中的nmonanalyser文件,并启用宏。

然后点击“Analyse nmon data”导入我们从linux下导出的“.nmon”文件,点击确定,就会自动生成图形化的excel,如下图:

以上就是nmon的简单描述与使用介绍 ~

nmon报告中的参数含义

 sheet名称

sheet含义

SYS_SUMM

系统汇总,蓝线为cpu占有率变化情况,粉线为磁盘IO的变化情况;

AAA

关于操作系统以及nmon本身的一些信息;

BBBB

系统外挂存储容量以及存储类型;

BBBC

系统外挂存储位置、状态以及描述信息;

BBBD

磁盘适配器信息;(包含磁盘适配器名称以及描述)

BBBE

包含通过lsdev命令获取的系统设备及其特征,显示vpaths和hdisks之间的映射关系;

BBBG

显示磁盘组详细的映射关系;

BBBL

逻辑分区(LPAR)配置细节信息;

BBBN

网络适配器信息;

BBBP

vmtune, schedtune, emstat和lsattr命令的输出信息;

CPUnn

显示执行之间内CPU占用情况,其中包含user%、sys%、wait%和idle%;

CPU_ALL

所有CPU概述,显示所有CPU平均占用情况,其中包含SMT状态;

CPU_SUMM

每一个CPU在执行时间内的占用情况,其中包含user%、sys%、wait%和idle%;

DGBUSY

磁盘组每个hdisk设备平均占用情况;

DGREAD

每个磁盘组的平均读情况;

DGSIZE

每个磁盘组的平均读写情况(块大小);

DGWRITE

每个磁盘组的平均写情况;

DGXFER

每个磁盘组的I/O每秒操作;

DISKBSIZE

执行时间内每个hdisk的传输块大小;

DISKBUSY

每个hdisk设备平均占用情况;

DISKREAD

每个hdisk的平均读情况;

DISKWRITE

每个hdisk的平均写情况;

DISKXFER

每个hdisk的I/O每秒操作;

DISKSERV

本sheet显示在每个收集间隔中hdisk的评估服务时间(未响应时间)

DISK_SUMM

总体disk读、写以及I/O操作;

EMCBSIZE/FAStBSIZE

执行时间内EMC存储的传输块大小;

EMCBUSY/FAStBUSY

EMC存储设备平均占用情况;

EMCREAD/FAStREAD

EMC存储的平均读情况;

EMCWRITE/FAStWRITE

EMC存储的平均写情况;

EMCXFER/FAStXFER

EMCSERV/FAStSERV

ESSBSIZE

本sheet记录在系统中每个vpaths下读写操作的平均数据传输大小(blocksize) Kbytes

ESSBUSY

本sheet记录使用ESS系统的每个vpaths下的设备繁忙情况

ESSREAD

本sheet记录在系统中每个vpaths下读取操作的  data rate (Kbytes/sec)

ESSWRITE

本sheet记录在系统中每个vpaths下写入操作的  data rate (Kbytes/sec)

ESSXFER

本sheet记录在系统中每个vpaths下每秒的IO操作

ESSSERV

本sheet显示在每个收集间隔中vpaths的评估服务时间(未响应时间)

FILE

本sheet包含nmon内核内部的统计信息的一个子集,跟sar报告的值相同

FRCA

IOADAPT

对于BBBCsheet每个IO适配器列表,包含了数据传输速度为读取和写入操作(千字节/秒)和I / O操作执行的总数量

JFSFILE

本sheet显示对于每一个文件系统中,在每个间隔区间正在被使用的空间百分比

JFSINODE

本sheet显示对于每一个文件系统中,在每个间隔区间正在被使用的inode百分比

LARGEPAGE

本图表显示Usedpages和Freepages随着时间的变化

LPAR

MEM

本sheet主图上显示空闲实存的数量

MEMUSE

除  %comp参数外,本sheet包含的所有项都和vmtune命令的报告中一样

MEMNEW

本sheet显示分配的内存片信息,分三大类:用户进程使用页,文件系统缓存,系统内核使用页

NET

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

NETPACKET

本sheet统计每个适配器网络读写包的数量;这个类似于netpmon –O dd 命令

NFS sheets

PAGE

本sheet统计相关页信息的记录

PROC

本sheet包含nmon内核内部的统计信息。其中RunQueue和Swap-in域是使用的平均时间间隔,其他项的单位是比率/秒

PROCAIO

本sheet包含关于可用的和active的异步IO进程数量信息.

TOP

UARG

WLM sheets

ZZZZ

本sheet自动转换所有nmon的时间戳为现在真实的时间,方便更容易的分析

文中可能存在描述不正确,欢迎大神们指正补充!


资料获取方法

【留言777】

各位想获取源码等教程资料的朋友请点赞 + 评论 + 收藏,三连!

三连之后我会在评论区挨个私信发给你们~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/56340.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MSF恶意程序利用——CS上线

Msfvenom是一个Metasploit独立的有效负载生成器&#xff0c;也是msfpayload和msfencode的替代品。是用来生成后门的软件。 申明&#xff1a;本篇文章的用意仅做学习使用&#xff01; 网络搭建环境&#xff1a; 软件&#xff1a;Vmware Workstation 17 攻击机&#xff1a;Ka…

map 比较(两个map的key,value 是否一样)

1. 用equals 比较 public static void main(String[] args) {List<Map<String,Object>> list new ArrayList<>();Map<String,Object> map1 new HashMap<>();map1.put("name","郭");map1.put("objId","1&quo…

计算机视觉与图形学-神经渲染专题-ConsistentNeRF

摘要 Neural Radiance Fields (NeRF) 已通过密集视图图像展示了卓越的 3D 重建能力。然而&#xff0c;在稀疏视图设置下&#xff0c;其性能显着恶化。我们观察到&#xff0c;在这种情况下&#xff0c;学习不同视图之间像素的 3D 一致性对于提高重建质量至关重要。在本文中&…

[C++项目] Boost文档 站内搜索引擎(2): 文档文本解析模块parser的实现、如何对文档文件去标签、如何获取文档标题...

项目开始的准备工作 在上一篇文章中, 已经从Boost官网获取了Boost库的源码. 相关文章: &#x1fae6;[C项目] Boost文档 站内搜索引擎(1): 项目背景介绍、相关技术栈、相关概念介绍… 接下来就要编写代码了. 不过还需要做一些准备工作. 创建项目目录 所有的项目文件肯定要在一…

Visual Studio 2019 详细安装教程(图文版)

前言 Visual Studio 2019 安装包的下载教程、安装教程 教程 博主博客链接&#xff1a;https://blog.csdn.net/m0_74014525 关注博主&#xff0c;后期持续更新系列文章 ********文章附有百度网盘安装包链接********* 系列文章 第一篇&#xff1a;Visual Studio 2019 详细安装教…

FastAPI 构建 API 高性能的 web 框架(一)

如果要部署一些大模型一般langchainfastapi&#xff0c;或者fastchat&#xff0c; 先大概了解一下fastapi,本篇主要就是贴几个实际例子。 官方文档地址&#xff1a; https://fastapi.tiangolo.com/zh/ 1 案例1:复旦MOSS大模型fastapi接口服务 来源&#xff1a;大语言模型工程…

微信开店小程序怎么做

微信开店小程序是一种在微信平台上运行的在线商店应用&#xff0c;它提供了丰富的功能和便捷的购物体验。下面将介绍微信开店小程序的功能以及带来的好处&#xff1a; 1. 商品展示与销售&#xff1a;微信开店小程序可以展示企业的商品信息&#xff0c;包括图片、价格、详细描述…

CentOS 安装 Jenkins

本文目录 1. 安装 JDK2. 获取 Jenkins 安装包3. 将安装包上传到服务器4. 修改 Jenkins 配置5. 启动 Jenkins6. 打开浏览器访问7. 获取并输入 admin 账户密码8. 跳过插件安装9. 添加管理员账户 1. 安装 JDK Jenkins 需要依赖 JDK&#xff0c;所以先安装 JDK1.8。输入以下命令&a…

第一百二十一天学习记录:线性代数:矩阵乘法运算(宋浩板书)

在编程和学习数据结构的过程中&#xff0c;发现有些算法会用到矩阵和矩阵的乘法运算&#xff0c;因此先将这一个知识点学习一下。 矩阵和行列式的区别 各种矩阵的概念 矩阵运算 乘法☆ 总结三条不满足

Visual ChatGPT:Microsoft ChatGPT 和 VFM 相结合

推荐&#xff1a;使用 NSDT场景编辑器助你快速搭建可二次编辑的3D应用场景 什么是Visual ChatGPT&#xff1f; Visual ChatGPT 是一个包含 Visual Foundation 模型 &#xff08;VFM&#xff09; 的系统&#xff0c;可帮助 ChatGPT 更好地理解、生成和编辑视觉信息。VFM 能够指…

大数据Flink(五十八):Flink on Yarn的三种部署方式介绍

文章目录 Flink on Yarn的三种部署方式介绍 一、​​​​​​​Session模式

陈述式资源管理方法详解

目录 一&#xff1a;陈述式资源管理方法 二&#xff1a; 基本信息查看 1、查看信息 2、创建 3、删除 4、service 的 type 类型 三&#xff1a;项目实例 1、创建 kubectl create命令 2、发布 kubectl expose命令 3、在 node 节点上操作&#xff0c;查看负载均衡端口…