• 性能测试之nmon的使用


    一、认识nmon

    1、简介

    nmon是一种在AIX与各种Linux操作系统上广泛使用的监控与分析工具,它能在系统运行过程中实时地捕捉系统资源的使用情况,记录的信息比较全面,

    并且能输出结果到文件中,然后通过nmon_analyzer工具产生数据文件与图形化结果。

    2、nmon可监控的数据类型
    内存使用情况

    磁盘适配器

    文件系统中的可用空间

    CPU使用率

    页面空间和页面速度

    异步I/O,仅适用于AIX

    网络文件系统(NFS)

    磁盘I/O速度和读写比率

    服务器详细信息和资源

    内核统计信息

    消耗资源最多的进程

    运行队列信息

    3、特点
    ①、占用系统资源少(一般不到2%)

    ②、功能强大(监控数据类型全面)

    ③、结合grafana之类的仪表图,可以更直观的实时展示所监控的数据

    ④、移植性、兼容性较好

    二、检查安装环境
    # 查看操作系统的信息
    uname -a
    # 查看linux发行版本
    lsb_release -a

    我的操作系统为64位,linux版本为CentOS7版本,后面使用nmon要用对应的版本

    三、nmon下载安装
    1、下载方式

    ①、下载到本地,通过FTP上传到服务器
    ②、命令行wget http://sourceforge.net/projects/nmon/files/nmon16e_mpginc.tar.gz

    2、安装
    下载完成后,执行以下命令:

    # 新建一个nmon文件夹
    mkdir nmon
    # 新建一个nmon文件夹
    mkdir nmon
    # 移动,估计自己的版本选择合适的nmon版本移动过去
    mv nmon_x86_64_centos6 /root/nmon
    # 给工具授权
    chmod +x nmon


    四、运行nmon
    完成上面的操作后,切换到工具目录,执行./nmon命令,出现如下界面,说明安装成功:

    常用快捷命令说明:

    1、# c
    查看CPU相关信息
    2、# m
    查看内存相关信息
    3、# d
    查看磁盘相关信息
    4、# n
    查看网络相关信息
    5、# t
    查看相关进程信息
    6、# h
    查看帮助相关信息
    7、# q
    退出nmon

    五、采集数据
    nmon通过命令行启动监控,捕获服务器的各项数据,命令如下:

    ./nmon -s 10 -c 60 -f -m /tmp/nmon_report
    # 参数说明
    -f 监控结果以文件形式输出,默认机器名+日期.nmon格式
    -F 指定输出的文件名,比如test.nmon
    -s 每隔多少秒抽样一次,单位是秒,上述命令配置是10s;
    -c 采样次数,上述命令配置是60,即监控总时长为10*60=600秒
    -m 指定生成的文件目录

    该命令执行后,会在/tmp/nmon_report目录下生成以hostname_YYYYMMDD_HHMM.nmon格式命名的监控文件,并将监控数据写入文件,nmon进程会在监控完成后自动退出,如需强制退出,先查找nmon进程 “ps –ef | grep nmon”,然后kill掉即可。

    PS:一般来说不建议对稳定性测试使用nmon监控,因为生成的nmon文件超过10M时,分析工具会由于内存不足导致报错。

    如果必须进行的话,建议加大采样频次,降低采样次数(低于330次)。

    5.1 NMON监控结果分析
    通过后台监控方式生成的.nmon文件,实际上是文本文件,可以直接用记事本或其他文本编辑工具打开,但可视化效果不好,也不方便分析。因此,通常使用nmon analyser对nmon文件进行解析,生成带图表信息的xlsx格式文件。 

    5.1.1 解析nmon文件
    Nmon文件解析工具是nmon analyser,该工具可以从以下地址获取:

    官网地址:https://www.ibm.com/developerworks/aix/library/au-nmon_analyser/

    在这里插入图片描述
    获取工具后,无需安装,进入工具目录,双击nmon analyser vxx.xlsm格式的文件,即可打开工具界面,如图所示:

     如果界面提示安全警告,“宏已被禁用”,点击【启用内容】即可,如上图红框内容所示。此时,点击【Analyze nmon data】,在windows文件选择框中选择待分析的nmon文件,等待分析、处理完成后,会在nmon文件目录下生成同名但后缀名为.xlsx的文件,后续分析在该xlsx文件中进行即可。

    5.1.2 分析结果文件
    通过nmon analyser工具,我们已经将nmon文件转换成xlsx格式的结果文件,打开结果文件,可以发现每个sheet页对应一个指标数据,一般在性能测试中,主要关注以下指标:

    SYS_SUMM

    DISK_SUMM

    CPU_ALL

    CPU_SUMM

    DISKBUSY

    MEM

    NET

    每个指标对应结果文件中的同名sheet页,每个页面除了采样数据,还提供了对应的图表数据。在实际结果分析时,一般选择性能测试中所采样的数据,也就是说,如果你的nmon程序是在性能测试前就启动的,或者性能测试结束后仍然有采样的,此时的结果文件会包括一些非相关的数据。所以,我的建议是:在性能测试开始后启动nmon监控,通过设置监测时长使nmon在性能测试结束前退出。

    接下来,对以上几个主要指标页面进行介绍。

    5.1.3 主要指标页面介绍

    系统汇总页面(SYS_SUMM):
    该页面主要显示系统CPU(蓝线)和I/O(粉红线)的使用情况,其中坐标左纵轴为cpu(user%+sys%)使用率,横轴为运行时长,右纵轴为磁盘传输次数(Disk xfers),坐标图下方展示统计数据。

    其中,User%为用户进程的CPU占比,Sys%为系统和中断的CPU占比,Wait%为进程阻塞等待完成一次IO请求的CPU占比,Idle%为空闲CPU占比。通常,CPU被充分使用的经验值是:User%:65%-70%;Sys%:30%-35%;Idle%:0%-5%。

    CPU使用情况(CPU_ALL、CPU_SUMM):
    CPU_ALL页面展示在采样周期内服务器的CPU的使用情况,实际上,与SYS_SUMM展示的CPU数据是相同的,区别只是前者使用线状图表示。

    CPU_SUMM页面展示的是每颗CPU的使用情况,与使用top命令,按数字键”1”显示各颗CPU的效果是一样的。

    3. 磁盘使用情况(DISK_SUMM、DISKBUSY):

    DISK_SUMM页面主要显示磁盘读、写、IO情况,其中,需要注意的是:某一时间点的磁盘读写数据(Disk Read KB/s\Disk Write KB/s)等于该时间点上所有磁盘和分区的Read/Write的速率(KB/s)之和,分别与页面DISKREAD、DISKWRITE对应;某一采集时间点的IO/sec等于页面DISKXFER中该时间点上所有磁盘和分区的IO/sec之和。因此,该时间点上的I/O值统计是会有重复的。

     DISKBUSY页面主要显示各个磁盘及分区的繁忙程度,是磁盘使用时间和全部时间的比值,即磁盘有百分之多少时间是活动的。通常,根据该页面显示的磁盘百分比数据,可以快速了解该磁盘的使用情况。

    4. 内存使用情况(MEM):

    MEM页面主要显示系统总内存、已用内存、可用内存、swap、cached等内存统计信息,统计单位为MB,图表左轴有个”千”字,单位换算后,memfree约19G,如图:

    5. 网络使用情况(NET):

    NET页面显示服务器各个网络适配器读写数据情况,单位KB/s,注意与带宽单位(bps)的换算,1MB/s = 8Mbps,如图:

    原文链接:https://www.cnblogs.com/ojxmz106/p/15769321.html

  • 相关阅读:
    冗余换性能从Backbone的triggerEvents说开了去
    Sublime Text3 中安装 Emmet
    windows下安装dig
    掺合模式(Mixin)
    Backbone.sync将模型同步到服务器
    Sublime text jQuery插件
    快捷键汇集
    动态创建script在IE中缓存js文件时导致编码不正确bug
    Firefox中使用location.hash会自动decodeURI Bug
    Backbone事件模块
  • 原文地址:https://www.cnblogs.com/wuxiaoxia/p/16157425.html
Copyright © 2020-2023  润新知