假設有4台機,ip及主機名如下:
192.168.100.105 c1192.168.100.110 c2
192.168.100.115 c3
192.168.100.120 c4
假設storm安裝在/home/目錄下,也就是/home/storm/
* 先登入root賬號再進行以下操作
1.建立指令碼
建立並賦予執行許可權
mk batch-storm.shchmod u+x batch-storm.sh
2.編輯指令碼
vim batch-storm.sh
新增以下內容:
#!/bin/bashusage="
usage: $0 (start|stop)
"if [ $# -lt 1 ]; then
echo
$usage
exit 1fi
action=$1
iparray=(c1 c2 c3 c4)
path="
/home/storm/bin
"echo
"$action storm cluster
"case $action in
"start")
echo
"$action nimbus
"$path/storm nimbus &
sleep
3s
for ip in $
doecho
"ssh to $ip - $action supervisor
"ssh $ip $path/storm supervisor &
sleep
2s
done
echo
"$action ui
"$path/storm ui &;;
"stop")
echo
"$action ui
"ps -ef|grep uiserver|grep -v grep|awk
''|xargs
kill -9
sleep
3s
for ip in $
doecho
"ssh to $ip - $action supervisor"#
ssh $ip ps -ef|grep supervisor|grep -v grep|awk
''|xargs
kill -9
pid=$(ssh $ip ps -ef | grep supervisor | grep -v grep | awk''
)
ssh $ip "
kill -9 $
"sleep
2s
done
echo
"$action nimbus
"ps -ef|grep nimbus|grep -v grep|awk
''|xargs
kill -9
;;esac
exit
0
3.編輯storm檔案
* 該步驟在每台機都要執行
vim /home/storm/bin/storm
新增一行內容:
export j**a_home=/usr/bin/jdk1.8.0
這裡的/usr/bin/jdk1.8.0是j**a安裝目錄,請按實際情況修改。
4.執行指令碼
只需要在其中一台機執行即可
批量啟動:
./batch-storm.sh start
批量停止:
./batch-storm.sh stop
shell指令碼啟動storm 集群
最近因為學習需要,搭建了storm集群,裝了比較舊的版本storm 0.8.1,也安裝了zmq,中間安裝過程之曲折不屬本文範圍,以後再整理。本文先把storm集群啟動的指令碼放出,其中包含了啟動zookeeper。其他集群,spark,hadoop啟動 停止指令碼可參考本指令碼。不完善之處依照具體業...
storm集群啟動停止指令碼
bin bash nimbus節點 nimbusservers mini01 mini02 supervisor節點 supervisorservers mini01 mini02 mini03 啟動所有的nimbus for nim in nimbusservers do ssh t nim cd...
storm集群一鍵啟動關閉shell指令碼檔案
vi start storm cluster.sh 這裡面需要注意的是 hdp 1 hdp 2 hdp 3是我的三颱虛擬機器,如果名字不同需要修改 此指令碼必須放在storm bin方能生效 bin bash nimbus節點 nimbusservers hdp 1 hdp 2 supervisor...