安装;
表现截图:
简朴使用命令:
参考文档:https://blog.csdn.net/m0_61066945/article/details/126799593
简介
nmon是一个非常轻量级的工具,险些没有性能开销,因此可以长期运行而不会对系统造成负担。它紧张用于实时监测 Linux/UNIX 系统的各种资源使用情况,而且提供了一种利用命令行界面来可视化和分析系统性能的方式。
这里介绍怎样安装和怎样使用。使用的方式分为2种:实时监控、报表分析。实时监控多用于观察系统性能,而且可以同时观察cpu、内存、I/O、网络等信息;报表分析必要下载一个 excel 分析工具,它能够主动将监控信息转换为折线图,对于长时间测试具有很大资助。
文章目录如下
1. 安装nmon
1.1. 下载 nmon 监控工具
1.2. 下载 nmon 分析工具
2. nmon监控
2.1. 实时监控
① 监控CPU
② 监控内存
③ 监控磁盘
④ 监控网络
⑤ 监控文件系统
2.2. 后台监控
3. 图形报表解读
3.1. SYS_SUMM 展示cpu、IO
3.2. CPU_ALL 展示cpu总体使用情况
3.3. CPU_SUMM 展示cpu单个使用情况
3.4. DISK_SUMM 展示每秒磁盘读写和总读写大小
3.5. DISKBSIZE 展示磁盘的传输块大小
3.6. DISKBUSY 展示磁盘使用率
3.7. DISKREAD 展示磁盘读
3.8. DISKWRITE 展示磁盘写
3.9. DISKXFER 展示每秒IO
3.10. JFSFILE 展示文件系统的使用占比
3.11. MEM 展示剩余内存
3.12. NET 展示网络的传输速率
3.13. NETPACKET 统计每个适配器网络读写包数目
1. 安装nmon
nmon官网
http://nmon.sourceforge.net/pmwiki.php?n=Site.Download
1.1. 下载 nmon 监控工具
三种安装方法,选择其一即可
方法一:yum安装(推荐)
yum install nmon
方法二:官网下载二进制包(解压直接使用,但必要系统找到对应的版本)
http://nmon.sourceforge.net/pmwiki.php?n=Site.Download
1. 官网列出了不同版本,选择合适的即可(我是x86,以是选择的第一个)
2. 将包放入 Linux 下解压
3. 根据系统使用合适的文件,我的是 X86_CentOS7,以是将 nmon_x86_64_centos7 修改为 nmon(方便记忆,后续使用懒得去找)
注意:执行必要使用相对路径,或者绝对路径。若是想直接执行,移动到 /bin/ 下即可
方法三:官网下载源码包(使用gcc编译,不必要找对应系统)
http://nmon.sourceforge.net/pmwiki.php?n=Site.Download
x86:
gcc -o nmon_x86 lmon.c -g -O3 -Wall -lncurses -lm -D KERNEL_2_6_18 -D X86 -D RHEL7
arm:
gcc -o nmon_arm lmon.c -g -O3 -Wall -D JFS -D GETUSER -D LARGEMEM -lncurses -lm -D ARM
1. 选择左上源码包超链接
2. 下载第一个c文件即可
3. 将 lmon16n.c 修改为 lmon.c 后,再使用 gcc 编译
gcc -o nmon_x86 lmon.c -g -O3 -Wall -lncurses -lm -D KERNEL_2_6_18 -D X86 -D RHEL7
nmon_x86:表示编译后的文件名
lmon.c :表示源码包
4. 编译失败,大概缺少依赖库
使用yum安装依赖库
yum install ncurses-devel
yum install ncurses-libs
5. 重新编译(乐成)
gcc -o nmon_x86 lmon.c -g -O3 -Wall -lncurses -lm -D KERNEL_2_6_18 -D X86 -D RHEL7
注意:执行必要使用相对路径,或者绝对路径。若是想直接执行,移动到 /bin/ 下即可
1.2. 下载 nmon 分析工具
http://nmon.sourceforge.net/pmwiki.php?n=Site.Download
1. 点击左上角 nmon-Analyser 超链接
2. 下载第一个即可
3. 这个文件用于 windows ,将nmon文件转换为折线图。下载后直接解压会得到一个 xlsm 文件(nmon analyser v69_2.xlsm) ,使用 Excel 打开即可使用
Analyze nmon data 便是启动按钮,转换对应的 nmon 文件即可
4. 点击按钮后无法使用
点击启动宏即可
再次尝试(乐成)
这里选中我们的监控文件即可,在《目录 2.2》有介绍。
2. nmon监控
2.1. 实时监控
nmon # 直接执行即可
首页面如下:这里就说明了交互参数怎么用
h:资助
q:退出
c:监控CPU利用率
l:监控CPU利用率(折线图)
C:监控CPU利用率(宽视图)
U:监控CPU利用率(具体信息)
m:监控内存使用情况
V:监控假造内存
d:监控磁盘使用率
.:只表现忙碌的 disk/proc(top方式有用)
N:监控假造文件系统
j:监控文件系统
n:监控网络
k:监控内核
r:表现操作系统信息
-:淘汰革新时间隔断
+:增长革新时间隔断
top方式(t 开启/关闭top模式)
1:按运行状态表现进程
3:按cpu使用率表现进程
4:按大小表现进程
① 监控CPU
交互命令:c
CPU :表现单个cup状态
Avg :表现每个cpu均匀状态,也就是cpu的总利用率
User%:用户空间占用的cpu
Sys% :内核空间占用的cpu
Wait%:cpu 等待 IO 的占比(若该占比较高,硬盘大概存在 I/O 瓶颈)
Idle :空闲的cpu
视图说明:
左边部分按百分比表现
右边部分按折线图方式表现,0-100分别表示cpu利用率(u代表User,s代表Sys,w代表Wait)。可以根据颜色去看
② 监控内存
交互命令:m
PageSize :页面大小
RAM-Memory :物理内存
Swap-Space :交换分区内存
High-Memory :高内存
Low-Memory :低内存
Total :总内存
Free :剩余内存
Free Percent:剩余内存占比
Cached :缓存的内存
Buffers :缓冲区内存
Active :活跃的的内存
Inactive :不活跃的内存
Swapcached :交换分区的缓存
Dirty :脏数据
Writeback :回写内存
Mapped :映射内存
③ 监控磁盘
交互命令:d t
上部分表现磁盘使用情况(Write 背面为KB,表示单位为KB)
DiskName:磁盘名
Busy :磁盘使用率
Read :每秒读数据
Write :每秒写数据
下部分表现进程的具体情况
%CPU :cpu使用率
Size :页面大小
Res Set :进程的实内存数据与实内存文本大小的和
Res Text:进程的实内存文本大小
Res Data:进程的实内存数据大小
Shared :共享内存
Command :进程名称
④ 监控网络
交互命令:n
Name :磁盘块
Recv :每秒吸取的数据
Trans :每秒传输的数据
packin :每秒吸取到的包数
packout :每秒发送的包数
insize :每秒收到的包的均匀大小
outsize :上一时间隔断内发送的包均匀大小
Peak->Recv:每秒吸取的数据的峰值
Trans :每秒发送的数据的峰值
注意:
这里说的每秒是指革新时间必须为1秒
如果革新时间为2秒,那么上述的值按每2秒盘算
⑤ 监控文件系统
交互命令:j
Filesystem:系统文件
SizeMB :文件系统总大小(单位:MB)
FreeMB :剩余文件系统大小(单位:MB)
Use% :文件系统使用占比
Type :文件类型
MountPoint:挂载点
2.2. 后台监控
常用参数
-f:关闭交互模式, 将数据生存到本地目录中的CSV电子表格格式的.nmon文件
-s:指定隔断时间(单位:秒)
-c:指定收集次数
-F:指定生存的文件名
-p:指定监控某个PID
-t:统计包罗top进程
-T:在输出中包括最繁忙的进程(生存为UARG部分)
指定文件名:收集5分钟数据,每次隔断一秒
nmon -f -c 300 -s 1 -F nmon_file/test.nmon # 文件必须以 .nmon 为后缀
不指定文件名:天生到当前路径下,以主机名和时间命名
nmon -f -c 10 -s 1
3. 图形报表解读
打开图形报表步骤
打开 nmon analyser v69_2.xlsm 文件
点击 Analyze nmon data 按钮
选择后台监控的文件,见目录 2.2
生存文件
sheet说明
SYS_SUMM :展示cpu和IO、开始时间、竣事时间
AAA :展示操作系统信息
BBBP :命令的输出信息
DISK_SUMM:展示每秒磁盘读写和总读写大小
CPU_ALL :展示cpu总体使用情况
CPU_SUMM :展示cpu单个使用情况
DISKBSIZE:展示磁盘的传输块大小
DISKBUSY :展示磁盘使用率
DISKREAD :展示磁盘读
DISKWRITE:展示磁盘写
DISKXFER :展示每秒IO
JFSFILE :展示文件系统的使用占比
MEM :展示剩余内存
NET :展示网络的传输速率
NETPACKET:统计每个适配器网络读写包数目
PROC :展示nmon内核内部的统计信息
VM :分页和假造内存、文件备份分页(kbyes/sec)、交换支持的活动(kbyes/sec)
ZZZZ :展示nmon统计的时间戳
CPU001 :展示单个cpu使用情况。001表示cpu0,002表示cpu1...
3.1. SYS_SUMM 展示cpu、IO
Samples:收集时间(单位:秒)
First :开始时间
Last :竣事时间
User% :用户空间占用的cpu
Sys% :内核空间占用的cpu
Wait% :cpu等待IO的占比(若该占比较高,硬盘大概存在 I/O 瓶颈)
Idle% :空闲的cpu
CPU% :cpu总体占比
Avg disk tps during an interval :tps均匀值
Max disk tps during an interval :tps最大值
Max disk tps interval time :最大tps的时间戳
Total number of GBs read :磁盘读取的总数(GBs表示单位为GB)
Total number of GBs written :磁盘写入的总数(GBs表示单位为GB)
Read/Write Ratio :读/写比率
按时间表现CPU使用率和每秒传输次数(I/O)
CPU使用率见左轴
每秒传输次数见右轴
3.2. CPU_ALL 展示cpu总体使用情况
User% :用户空间占用的cpu
Sys% :内核空间占用的cpu
Wait% :cpu等待IO的占比(若该占比较高,硬盘大概存在 I/O 瓶颈)
Idle% :空闲的cpu
CPUs :cpu进程核心数
CPU% :cpu总体占比
按时间表现每个CPU具体使用情况
3.3. CPU_SUMM 展示cpu单个使用情况
CPU_SUMM:cpu列表
User% :用户空间占用的cpu
Sys% :内核空间占用的cpu
Wait% :cpu等待IO的占比(若该占比较高,硬盘大概存在 I/O 瓶颈)
Idle% :空闲的cpu
表现单个CPU整体使用情况
3.4. DISK_SUMM 展示每秒磁盘读写和总读写大小
Disk Read KB/s :磁盘每秒读
Disk Write KB/s :磁盘每秒写
IO/sec :磁盘每秒传输次数(I/O)
按时间表现磁盘读写情况
标题存有 KB/s 字样,但左轴有 “千” 字样,说明单位为 MB/s
每秒磁盘读写见左轴
每秒 I/O 次数见右轴
3.5. DISKBSIZE 展示磁盘的传输块大小
表现每个磁盘最大、最小、均匀值的传输块大小
按时间段表现传输块大小
3.6. DISKBUSY 展示磁盘使用率
表现监控时间内 每个磁盘最大、最小、均匀使用率
按时间表现磁盘使用率
3.7. DISKREAD 展示磁盘读
按时间表现磁盘读
标题处表现单位KB/s, 但左边有一个“千”字,表示一千KB,也就是MB
3.8. DISKWRITE 展示磁盘写
按时间表现磁盘读
标题处表现单位KB/s, 但左边有一个“千”字,表示一千KB,也就是MB
3.9. DISKXFER 展示每秒IO
按时间表现磁盘I/O
标题左边有一个“千”字,表示左轴的值乘以1000
3.10. JFSFILE 展示文件系统的使用占比
表现监控时间内 每个文件系统最大、最小、均匀使用率
3.11. MEM 展示剩余内存
memtotal :物理内存总大小
swaptotal :交换分区总大小
memfree :剩余物理内存大小
swapfree :剩余交换分区内存大小
cached :已占用的文件系统缓存大小
buffers :文件系统缓冲区大小
swapcached:交换分区调用的内存大小
inactive :最近不常使用的内存
按时间表现内存剩余情况
标题有“MB”字样,说明单位为:MB
表现总内存大小,单位与上图一致
3.12. NET 展示网络的传输速率
Total-Read :每秒吸取的数据包大小
Total-Write (-ve):每秒发送的数据包大小
3.13. NETPACKET 统计每个适配器网络读写包数目
表现每个网络适配器读写包的数目
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/m0_61066945/article/details/126799593
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |