一、xcall.sh
作用:集群之间批量执行命令(前提:支持 ssh
免密登陆)
使用:sh xcall.sh jps
#!/bin/bash
params=$@
i=307
for (( i=137 ; i <=139 ; i = $i + 1 )) ; do
echo ============= hadoop@192.168.131.$i $params =============
ssh hadoop@192.168.131.$i "$params"
done
二、xscp.sh
作用:集群之间传输文件、目录(前提:支持 ssh
免密登陆)
使用:sh xscp.sh xx.sh
#!/bin/bash
if [[ $# -lt 1 ]] ; then echo no params ; exit ; fi
p=$1
dir=`dirname $p`
filename=`basename $p`
cd $dir
fullpath=`pwd -P .`
user=`whoami`
echo $p $dir $filename $fullpath
# xcall.sh . xcall.sh /home/hadoop/apps
for (( i =137; i <= 139; i = $i + 1 )) ; do
echo ======= hadoop@192.168.131.$i =======
scp -r $p ${user}@192.168.131.$i:$fullpath
#rsync -lr $p ${user}@s$i:$fullpath
done