nmon是一个非常易用的监测Unix/Linux系统性能的小工具,可以在一个屏幕上通过指令切换,显示几乎你想要的所有指标,并且可以自动将指标周期性的保存成 .nmon格式文件,这个工具可以与nmon_analyser同使用,将加载 .nmon 的输出文件并自动地创建大量的图形。
sourceforge项目地址
http://sourceforge.net/projects/nmon/?source=directory
各种CPU版本的下载地址
http://sourceforge.jp/projects/sfnet_nmon/releases/
安装nmon
在debian环境下,通过apt-get安装root@X-NAS-DAVID:~# apt-get install nmon
执行nmonroot@X-NAS-DAVID:~# nmon
执行结果截图如下:
控制指令键盘快捷键:
q - To stop and exit nmon.
h - To see quick help (hint) screen and press h again to remove the hints.
Use the following command to turn on or off stats:
c - See cpu stats.
m - See memory stats.
d - See disk stats.
k - See kernel stats.
n - See network stats.
N - See NFS stats.
j - See file system stats.
t - See top process.
V - See virtual memory stats.
. - See only busy disks/procs.
v - Verbose mode (display as Ok/warning/danger on screen).
将nmon数据保存到文件,例如:让nmon每15秒保存一次数据,共保存40次,并将输出文件命名为test.nmonnmon -F test.nmon -t -s 10 -c 40
-f 这是nmon必选参数,并且必须放在第一个,就是输出文件的意思;用该参数的话,nmon输出的文件名就是默认名称:hostname_date_time.nmon;
-F 这个参数和上面-f相同,只不过用户可以自己定义文件名称;
-s 截屏频率,也就是保存数据的频率,样例中为10s;
-c 截屏次数,样例中为40;
-t 输出top processes的数据;
-r gose into spreadsheet file
-h 查看帮助
以上几个参数都是常用的,其他参数可以通过最后一个-h查看。
如果取到.nmon文件后确定不再需要nmon继续收集信息则应kill掉nmon,命令如下:
ps -A | grep nmon #得到pid
kill -9 pid
---------------------------------------------------------------------------
通过shell脚本启动hadoop的namenode和slavenode节点上的nmon
#!/bin/bash
#启动主节点上的nmon
/home/nmon/nmon_x86_64_sles11 -f -t -s 10 -c 720
#启动所有slave节点上的nmon,主节点配置可以无密码登陆slave节点 nodelist=`cat /etc/hosts | grep suse | grep -v 90 |awk -F' ' '{print $2}'` echo "hadoop-slave node list :$nodelist" if [ "$nodelist" = "" ] then echo "no hadoop-slave" else for host in ${nodelist} { echo "start nmon on $host" ssh $host "/home/nmon/nmon_x86_64_sles11 -f -t -s 10 -c 720" } fi