远程登陆执行机器监控
上一篇 /
下一篇 2012-03-19 18:00:46
/ 个人分类:测试工具
应
工作需要在多台linux机器上同时执行性能监控,主要想查看cpu, mem的信息。因zabbix这种工具过于重量级,经同事推荐使用nmon(http://nmon.sourceforge.net/pmwiki.php)。该工具好处就是简单,直接下载下来运行即可,得到的报告使用ibm提供的工具(http://www.ibm.com/developerworks/wikis/display/WikiPtype/nmonanalyser )进行解析并生成报表。
使用nmon的难点在于需要同时在多台机器启动监控并在目标机器上生成报告,像hadoop这样的集群可能存在很多机器,因此写了下面简单脚本来自动启动nmon,:
#start_mon.sh
#启动单台机器上的nmon命令
#!/usr/bin/expect
set host [lindex $argv 0]
set timeout 5
spawn ssh root@[string trim $host] -p2200
expect {
{Are you sure you want to continue connecting (yes/no)?} {send "yes\r"; exp_continue}
{password: } {send "xxxxx\r"}
}
#send "echo 'hello'>hello\r"
send "cd /home/pplive/nmon\r"
send "/root/nmon/nmon_x86_rhel52 -f -s 1 -c 2\r "
send "exit\r "
expect eof
#rum.sh
#根据hosts文件里列出的主机ip执行命令
#!/bin/sh
HOSTS_FILE=$1
echo "Hosts file:$HOSTS_FILE"
while read host
do
echo "for host:$host"
./start_nmon.sh $host
done < $HOSTS_FILE
hosts文件内容:
1.1.1.1
2.2.2.2
...
最后运行命令./run.sh hosts就可以了
收藏
举报
TAG:
auto
tool
Tool