在性能测试过程中,需要对服务端的各项资源使用情况进行监控。
nmon是一种在AIX与各种Linux操作系统上广泛使用的监控与分析工具,它能在系统运行过程中实时地捕捉系统资源的使用情况,记录的信息比较全面,
并且能输出结果到文件中,然后通过nmon_analyzer工具产生数据文件与图形化结果。
[root@aliyun ~]# uname -a
Linux aliyun 3.10.0-514.26.2.el7.x86_64 #1 SMP Tue Jul 4 15:04:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
[root@aliyun ~]# lsb_release -a
LSB Version: :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOS
Description: CentOS Linux release 7.7.1908 (Core)
Release: 7.7.1908
Codename: Core
可以看到操作系统为64位,Linux发行版本为CentOS7.7
去这个官方下载地址下载
然后解压缩,选择合适版本,上传到Linux服务器
➜ 下载 mkdir nmon
➜ 下载 tar -xzvf nmon16m_helpsystems.tar.gz -C nmon
nmon_power_64_centos6
nmon_power_64_centos7
nmon_power_64_linux
nmon_power_64_rhel6
nmon_power_64_rhel7
nmon_power_64_sles11
nmon_power_64le_centos7
nmon_power_64le_centos8
nmon_power_64le_linux
nmon_power_64le_rhel7
nmon_power_64le_rhel7_gpu
nmon_power_64le_rhel8
nmon_power_64le_sles12
nmon_power_64le_ubuntu14
nmon_power_64le_ubuntu16
nmon_power_64le_ubuntu18
nmon_x86_64_centos5
nmon_x86_64_centos6
nmon_x86_64_centos7
nmon_x86_64_centos8
nmon_x86_64_debian08
nmon_x86_64_debian09
nmon_x86_64_debian10
nmon_x86_64_mint18
nmon_x86_64_mint19
nmon_x86_64_oel5
nmon_x86_64_oel6
nmon_x86_64_oel7
nmon_x86_64_oel8
nmon_x86_64_opensuse10
nmon_x86_64_opensuse11
nmon_x86_64_opensuse12
nmon_x86_64_opensuse15
nmon_x86_64_rhel5
nmon_x86_64_rhel6
nmon_x86_64_rhel7
nmon_x86_64_rhel8
nmon_x86_64_sles10
nmon_x86_64_sles11
nmon_x86_64_sles12
nmon_x86_64_sles15
nmon_x86_64_ubuntu14
nmon_x86_64_ubuntu16
nmon_x86_64_ubuntu18
nmon_x86_64_ubuntu19
➜ 下载 cd nmon
➜ nmon ls
nmon_power_64_centos6 nmon_power_64_linux nmon_x86_64_mint19 nmon_x86_64_rhel8
nmon_power_64_centos7 nmon_power_64_rhel6 nmon_x86_64_oel5 nmon_x86_64_sles10
nmon_power_64le_centos7 nmon_power_64_rhel7 nmon_x86_64_oel6 nmon_x86_64_sles11
nmon_power_64le_centos8 nmon_power_64_sles11 nmon_x86_64_oel7 nmon_x86_64_sles12
nmon_power_64le_linux nmon_x86_64_centos5 nmon_x86_64_oel8 nmon_x86_64_sles15
nmon_power_64le_rhel7 nmon_x86_64_centos6 nmon_x86_64_opensuse10 nmon_x86_64_ubuntu14
nmon_power_64le_rhel7_gpu nmon_x86_64_centos7 nmon_x86_64_opensuse11 nmon_x86_64_ubuntu16
nmon_power_64le_rhel8 nmon_x86_64_centos8 nmon_x86_64_opensuse12 nmon_x86_64_ubuntu18
nmon_power_64le_sles12 nmon_x86_64_debian08 nmon_x86_64_opensuse15 nmon_x86_64_ubuntu19
nmon_power_64le_ubuntu14 nmon_x86_64_debian09 nmon_x86_64_rhel5
nmon_power_64le_ubuntu16 nmon_x86_64_debian10 nmon_x86_64_rhel6
nmon_power_64le_ubuntu18 nmon_x86_64_mint18 nmon_x86_64_rhel7
➜ nmon
然后只要把nmon_x86_64_centos7
这一个文件上传到服务器就可以了。
wget
下载wget http://sourceforge.net/projects/nmon/files/nmon16m_helpsystems.tar.gz
然后还是跟上边步骤一样,最后选择nmon_x86_64_centos7
这个版本的文件即可。
# 改名
mv nmon_x86_64_centos7 nmon
# 给工具授权
chmod 777 nmon_x86_64_centos7
完成上面的操作后,执行 ./nmon 命令,出现如下界面,说明安装成功:
# c
查看CPU相关信息
# m
查看内存相关信息
# d
查看磁盘相关信息
# n
查看网络相关信息
# t
查看相关进程信息
# h
查看帮助相关信息
nmon通过命令行启动监控,捕获服务器的各项数据,命令如下
./nmon -ft -s 10 -c 60 -m /root/nmon
# 参数说明
-f 监控结果以文件形式输出,默认机器名+日期.nmon格式
-F 指定输出的文件名,比如test.nmon
-s 指的是采样的频率,单位为毫秒
-c 指的是采样的次数,即以上面的采样频率采集多少次
-m 指定生成的文件目录
nmon监控捕获的信息(也就是生成的.nmon文件),可以用nmonchart来进行分析。
wget http://sourceforge.net/projects/nmon/files/nmonchart39.tar
mkdir nmonchart
tar -xf nmonchart39.tar -C nmonchart/
cd nmonchart
➜ nmonchart ll
总用量 3.9M
-rwx------ 1 mi mi 45K 11月 20 2019 nmonchart
-rwx------ 1 mi mi 1.6K 11月 20 2019 nmonchart_cron
-rw------- 1 mi mi 109 11月 20 2019 nmonchart_license
-rwx------ 1 mi mi 2.2K 11月 20 2019 nmon_upload.php
-rw------- 1 mi mi 17K 11月 20 2019 README
-rw------- 1 mi mi 197K 11月 20 2019 sampleC.html
-rw------- 1 mi mi 468K 11月 20 2019 sampleC.nmon
-rw------- 1 mi mi 828K 11月 20 2019 sampleD.html
-rw------- 1 mi mi 2.4M 11月 20 2019 sampleD.nmon
如上所示nmonchart
就是用来解析xxx.nmon
文件的,首先要给nmonchart
授予可执行权限
# 授权
chmod 777 nmonchart
# 解析c3-dp-staging02_200603_1927.nmon文件数据
./nmonchart c3-dp-staging02_200603_1927.nmon
执行上边命令将会在当前目录下生成一个已解析完成的c3-dp-staging02_200603_1927.html
HTML文件。
然后我们双击打开这个HTML文件就可以看到已经解析成功的数据了。
具体指标参数说明参考官方文档最下边的Summary of the graphs(图形摘要)说明
最后,我这边提供了一个解析完成的HTML文件,可以直接在线进行查看。点我查看