文章采集系统(nmon系统开发系统的优点及解决办法 )
优采云 发布时间: 2021-12-05 03:11文章采集系统(nmon系统开发系统的优点及解决办法
)
一、nmon 介绍
Nmon 首次集成在 IMB AIX 中,并于 2009 年开源。nmon 系统支持常见的发行版 Linux、IBM POWER、大型机和 ARM;
运维人员可以通过nmon动态查看当前CPU负载、内存使用情况、网络负载等,也可以进行时间段数据采集,通过图表展示;
1.1 nmon 优势
官方网站:
1.2 下载,解压
nmon 最新版本是 16m
wget https://nchc.dl.sourceforge.net/project/nmon/nmon16m_helpsystems.tar.gz
#解压
mkdir nmon
tar xvf nmon16m_helpsystems.tar.gz -C /opt/nmon
如需支持ARM,请下载以下版本
wget http://sourceforge.net/projects/nmon/files/nmon16h_helpsystems_v2.tar.gz
解压后有很多二进制文件,可以根据自己的平台选择。比如我的操作系统是CentOS7,我选择nmon_x86_64_centos7
nmon_power_64_centos6 nmon_power_64le_rhel8 nmon_power_64_rhel7 nmon_x86_64_debian09 nmon_x86_64_oel8 nmon_x86_64_rhel7 nmon_x86_64_ubuntu16
nmon_power_64_centos7 nmon_power_64le_sles12 nmon_power_64_sles11 nmon_x86_64_debian10 nmon_x86_64_opensuse10 nmon_x86_64_rhel8 nmon_x86_64_ubuntu18
nmon_power_64le_centos7 nmon_power_64le_ubuntu14 nmon_x86_64_centos5 nmon_x86_64_mint18 nmon_x86_64_opensuse11 nmon_x86_64_sles10 nmon_x86_64_ubuntu19
nmon_power_64le_centos8 nmon_power_64le_ubuntu16 nmon_x86_64_centos6 nmon_x86_64_mint19 nmon_x86_64_opensuse12 nmon_x86_64_sles11
nmon_power_64le_linux nmon_power_64le_ubuntu18 nmon_x86_64_centos7 nmon_x86_64_oel5 nmon_x86_64_opensuse15 nmon_x86_64_sles12
nmon_power_64le_rhel7 nmon_power_64_linux nmon_x86_64_centos8 nmon_x86_64_oel6 nmon_x86_64_rhel5 nmon_x86_64_sles15
nmon_power_64le_rhel7_gpu nmon_power_64_rhel6 nmon_x86_64_debian08 nmon_x86_64_oel7 nmon_x86_64_rhel6 nmon_x86_64_ubuntu14
建立软连接
如果 nmon 安装在 /opt/nmon/ 下
ln -s /opt/nmon/nmon_x86_64_centos7 /usr/bin/nmon
二、使用
如果直接查看当前运行数据,可以直接从命令行执行nmon,根据界面提示的选项选择查看数据
如果需要采集每个时间段的运行数据,可以使用nmon的采集功能;
nmon采集主要参数如下:
For Data-Collect-Mode
-f # 必选项,保存数据到本地目录中,格式为.nmon。
# 不指定采集间隔(默认为秒)或者快照数默认为-s300 -c288,即每5分钟采集一次,采集288次停止;
-s # 采集间隔时间
-c # 采集次快照数,采集多少次后停止采集
-t # 采集系统进程和数据,(-T能收集命令参数)
-x # 采集规划 Capacity Planning=15 min snapshots for 1 day. (nmon -ft -s 900 -c 96)
2.1 开始采集
创建采集目录
mkdir -p /data/nmon/
从采集开始,采集快照不要太多,每次最好保持在500~800次
示例1:简单抓图,每2分钟一次采集,快照采集到720次停止采集
nmon-f-s120-c720 -m/data/nmon/
示例 2:使用系统进程捕获快照
nmon-fT-s120-c720 -m/data/nmon/
示例 3:在系统过载时捕获快照,采集5 秒一次
nmon-fT-s5-c720 -m/data/nmon/
采集启动后会在对应的存储目录下形成一个文件,格式为:hostname_date_采集time
比如我创建了一个简单的采集,每2分钟一次采集,10次后采集自动退出;这样你就可以每2分钟查看一次
pev_211201_1138.nmon 更新一次时间戳
nmon -f -s120 -c10 -m /data/nmon/
2.2站采集
采集指定次数后,nmon会自动停止进程。如果要手动停止采集,可以使用ps -ef |grep nmon查看nmon的PID,然后使用kill -USR2 PID号杀进程号。切记不要使用kill -9,会造成nmon采集文件损坏无法解析
# 查看进程
ps -ef |grep nmon
root 3116 1 0 11:38 pts/0 00:00:00 nmon -f -s120 -c10 -m /data/nmon/
root 4119 28852 0 11:54 pts/0 00:00:00 grep --color=auto nmon
# 杀掉进程
kill -USR2 3116
2.2 分析 2.2.1 nmonchart 分析
Nmonchart可以将nmon采集的数据解析成网页格式(html),通过Javascript使用谷歌图表库解析成图表文件,方便运维人员分析数据;
注意:此方法需要翻墙支撑
下载并解压 nmonchart
wget http://sourceforge.net/projects/nmon/files/nmonchart40.tar
tar zvf nmonchart40.tar -C /opt/nmonchart/
建立软连接
ln -s /opt/nmonchart/nmonchart /usr/bin/nmonchart
开始转换
nmonchart是用Korn shell写的,centos上用bash不常见,需要单独安装ksh
yum install ksh
转换语法为
nmonchart file_name.nmon out_file_name.html
例如将 pev_211201_1138.nmon 转换为 test.html
nmonchart pev_211201_1138.nmon test.html
打开VPN,下载到本地在浏览器中打开,等待几秒。点击上方标签查看对应负载
2.2.2 nmon Analyzer分析
Nmon Analyzer 使用 EXCEL 将 nmon采集 的数据转换成图表模式。推荐使用Micsoft office2016。
注意:对于大型 nmon 数据文件(10+ MB),强烈建议安装 64 位 Microsoft Excel 2016 或更高版本,并且本地内存至少 8 GB,最好 16 GB 或更大;
下载 nmon 分析器
可以通过浏览器下载,地址是
注意:可能下载不成功,可以多试几次
下载完成后会有一个PDF文件和一个EXCEL文件,其中EXCEL起到解析作用。
将nmon生成的文件(format.nmon)下载到本地,打开EXCEL或WPS格式的宏,打开nmon分析器v69_2.xlsm格式文件,点击Analyze nmon data添加nmon文件。
等待一段时间解析后,即可查看文件,
普通采集和进程的三个区别采集
<p>普通 采集 nmon -f -s120 -c10 和 process 采集nmon -fT -s120 -c10,process 采集 还有 2 个选项,Top Summary 和 Top Commands;