(转)服务端监控工具:nmon的使用

在性能测试过程中,对服务端的各项资源使用情况进行监控是很重要的一环。这篇博客,介绍下服务端监控工具: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.4版本:

[[email protected] ~]# uname -a
Linux izbp1jbg0c2bbcmcba0exoz 3.10.0-693.2.2.el7.x86_64 #1 SMP Tue Sep 12 22:26:13 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
[[email protected] ~]# lsb_release -a
LSB Version:    :core-4.1-amd64:core-4.1-noarch
Distributor ID:    CentOS
Description:    CentOS Linux release 7.4.1708 (Core)
Release:    7.4.1708
Codename:    Core

三、nmon下载安装

1、官方地址http://nmon.sourceforge.net/pmwiki.php?n=Site.Download

根据我的操作系统和linux版本,选择对应的支持版本,如下:

2、下载方式

①、下载到本地,通过FTP上传到服务器

②、命令行 wget http://sourceforge.net/projects/nmon/files/nmon16e_mpginc.tar.gz

3、安装

下载完成后,执行以下命令:

# 新建一个nmon文件夹
mkdir nmon
# 解压
tar xvfz nmon16e_mpginc.tar.gz
# 改名
mv nmon_x86_64_centos7 /root/nmon
# 给工具授权
chmod -x nmon 777

四、运行nmon

完成上面的操作后,执行 ./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   指定生成的文件目录 

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

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

六、监控结果分析

1、下载分析工具

nmon监控捕获的信息,一般用nmon_analyser来进行分析。nmon_analyser 由IBM提供, 使用excel的宏命令分析加载生成excel图表,展示资源占用的各项信息。

官网地址:nmon_analyser

下载你需要的版本,然后解压,解压后出现如下2个文件:

2、使用nmon analyser工具

打开.xlsm文件,点击Analyze nmon data,打开你需要进行分析的nmon监控文件:

PS:如果提示分析文件不可用,从“工具-宏-安全性”启动宏,然后再次打开文件,即可使用该分析文件。

3、生成各种图表数据

通过分析工具生成的监控数据结果如下图:

红色标注区域为采集的监控数据,选择自己需要的类型(比如cpu),然后筛选对应的服务Pid(比如1314),选择对应的数据类型(比如CPU使用率占比),

通过excel提供的各种图形生成工具,生成直观的分析结果图。比如:

以上,即监控工具nmon的介绍和基本使用方法,更多的应用方式,请参考官网说明或自行探索。。。

转载至:https://www.cnblogs.com/imyalost/p/9873621.html

原文地址:https://www.cnblogs.com/yjt1993/p/10906010.html

时间: 2024-11-08 03:15:48

(转)服务端监控工具:nmon的使用的相关文章

服务端监控工具:Nmon使用方法

在性能测试过程中,对服务端的各项资源使用情况进行监控是很重要的一环.这篇博客,介绍下服务端监控工具:nmon的使用方法... 一.认识nmon 1.简介 nmon是一种在AIX与各种Linux操作系统上广泛使用的监控与分析工具,它能在系统运行过程中实时地捕捉系统资源的使用情况,记录的信息比较全面, 并且能输出结果到文件中,然后通过nmon_analyzer工具产生数据文件与图形化结果. 2.nmon可监控的数据类型 内存使用情况 磁盘适配器 文件系统中的可用空间 CPU使用率 页面空间和页面速度

全链路非功能测试之服务资源监控工具篇

随着信息化建设的迅速发展,为了更好的.有效的保障系统上线后稳定高效运行,在上线前都会对其服务端进行各种压力测试,例如单交易负载测试.混合综合场景压力测试.稳定性测试.浪涌测试.端到端非功能测试等全链路非功能性测试,目的是为了在上线把各种怀疑性技术性问题等排查清楚.因此在最基本的全链路非功测试过程中,对于服务器的资源使用情况.带宽.网络.磁盘.进程.数据或日志存储文件目录使用情况等进行可靠和可持续的监控,统计分析在压力测试过程中的各种数据,从而能及时发现问题原因,并快速定位解决.例如数据库的数据量

zabbix 服务端安装

zabbix 是另外一个用的比较多地监控工具,同样也需要 apache+php 的支持,但它比nagios 要多一个 mysql,因为它有数据需要存储.所以,安装 zabbix,必须要安装 mysql.在安装 zabbix 之前,也需要安装 epel 扩展源,因为 centos 自带 yum 源是没有 zabbix 的. 注:zabbix使用LNMP也可以,但是在yum安装zabbix会默认将配置文件生成到apache的目录下. 安装扩展源 安装zabbix需要使用扩展源 yum install

3.1 zabbix 服务端安装

zabbix 也是一个用的比较多的监控工具,同样需要apache+php的支持,但它比nagios多一个mysql,因为它有数据需要存储.所以,安装zabbix必须安装mysql. 安装epel扩展源 [[email protected] ~]# yum install -y epel-release 安装rpm包的lamp环境 [[email protected] ~]# yum install -y httpd mysql mysql-libs php php-mysql mysql-ser

服务端性能保障之流量并发控制方法

服务端性能保障之流量并发控制方法 7月底最后一个周日,我们品课学院线下性能提升班第二期算是正式开课,零基础的学员不少,有测试管理经验.多年开发或者测试经验的人员也有几位,但是各个都很上进好学,不是因为学习而学习,而是有共同理想而走在一个教室,交流探讨专业知识.他们谦虚且上进.因为他们知道做着没有累积性的工作,却期望老板替你加薪?做得久也未必能领得多,一切以实力见真章,所以他们珍惜每一堂课,认真笔记,发散性的问问题,无论功能测试.测试管理.行业知识.架构设计.软硬件知识等等,的确很考验老师的知识面

Spring Cloud官方文档中文版-服务发现:Eureka服务端

官方文档地址为:http://cloud.spring.io/spring-cloud-static/Dalston.SR3/#spring-cloud-eureka-server 文中例子我做了一些测试在:http://git.oschina.net/dreamingodd/spring-cloud-preparation Service Discovery: Eureka Server 服务发现:Eureka服务端 How to Include Eureka Server 如何创建Eurek

ssh 服务端安全配置

更改ssh服务端配置文件 [[email protected] ~]# vi /etc/ssh/sshd_config Port 59118                 #ssh 连接默认端口为22 ,更改后提高安全级别 PermitRootLogin no         #禁止root用户远程登录 PermitEmptyPasswords no    #禁止空密码登录 UseDNS no                  #不使用DNS GSSAPIAuthentication no  

Android客户端与PHP服务端交互(一)---框架概述

背景 作为一个普通上班族,总是想做一些自认为有意义的事情,于是乎准备成立一个工作室,尽管目前正在筹备阶段,但是之前有些朋友提出一些需求的时候,我发现自己的能力还是有限,直到最近和一些技术牛朋友聊起这事儿,大家不谋而合,也准备加入小团队.只是我作为工作室的“业务员”,感觉有必要都了解一下,这样才好和客户沟通,提出解决方案,也方便大家讨论订方案.譬如之前有商家提出的在线订单,要求客户可以使用APP直接下单,商家处理订单.当时我不是很懂,自己接不了,现在和朋友交流后,准备学习一下. 框架 ① 客户提交

基于NIO的消息路由的实现(四) 服务端通讯主线程(2)断包和粘包的处理

本来我打算单独开一章,专门说明粘包和断包,但是觉得这个事儿我在做的时候挺头疼的,但是对于别人或许不那么重要,于是就在这里写吧. 那么何谓粘包.何谓断包呢? 粘包:我们知道客户端在写入报文给服务端的时候,首先要将需要写入的内容写入Buffer,以ByteBuffer为例,如果你Buffer定义的足够大,并且你发送的报文足够快,此时就会产生粘包现象,举例来说 你发送一个 报文" M|A",然后你有发送了一个"M|B",如果产生粘包,服务端从缓冲区里面读出的就是"