(1)jpsall 該腳本是用來顯示集群的所有java行程狀態
#!/bin/bash
#該腳本是用來顯示集群的所有java行程狀態
list="master node1 node2"
# 注意替換你自己的節點名稱!!!!!!!!!
echo "顯示集群的所有java行程狀態"
for node in $list
do
echo "##### "$node"jps #####"
ssh $node $JAVA_HOME'/bin/jps'
done
echo "#####執行結束#####"
注意替換你自己節點名稱
(2)批量啟動/關閉集群
#!/bin/bash
if [ $# -lt 1 ]
then
echo "沒有引數輸入,,,,,,,"
exit ;
fi
case $1 in
"start")
echo " =================== 啟動 hadoop 集群 ==================="
echo " --------------- 啟動 hdfs ---------------"
ssh hadoop102 "/opt/module/hadoop-3.1.3/sbin/start-dfs.sh"
echo " --------------- 啟動 yarn ---------------"
ssh hadoop103 "/opt/module/hadoop-3.1.3/sbin/start-yarn.sh"
echo " --------------- 啟動 historyserver ---------------"
ssh hadoop102 "/opt/module/hadoop-3.1.3/bin/mapred --daemon start historyserver"
;;
"stop")
echo " =================== 關閉 hadoop 集群 ==================="
echo " --------------- 關閉 historyserver ---------------"
ssh hadoop102 "/opt/module/hadoop-3.1.3/bin/mapred --daemon stop historyserver"
echo " --------------- 關閉 yarn ---------------"
ssh hadoop103 "/opt/module/hadoop-3.1.3/sbin/stop-yarn.sh"
echo " --------------- 關閉 hdfs ---------------"
ssh hadoop102 "/opt/module/hadoop-3.1.3/sbin/stop-dfs.sh"
;;
*)
echo "引數為 [start|stop]"
;;
esac
注意替換自己路徑,想要多加幾個命令按照原來格式添加即可,
(3)xsync腳本:用于集群檔案分發的腳本
注意:在使用該腳本時,必須保證該機器已經安裝 rsync
可以使用 yum install rsync進行安裝
#!/bin/sh
# 1 獲取輸入引數個數,如果沒有引數,直接退出
pcount=$#
if((pcount==0)); then
echo no args;
exit;
fi
#2 主機名序列
hostlist="master node1 node2"
#3 獲取檔案名稱
p1=$1 #$1獲取第一個輸入的資料
fname=`basename $p1` #basename:獲取輸入的資料檔案自身的名稱
echo fname=$fname
#4 獲取上級目錄到絕對路徑
pdir=`cd -P $(dirname $p1); pwd` #dirname:獲取檔案的目錄名:
echo pdir=$pdir
#5 獲取當前用戶名稱
user=`whoami`
#6 回圈分發檔案
for host in $hostlist
do
echo ---------------------- $host ----------------
rsync -rvl $pdir/$fname $user@$host:$pdir
done
注意:
要修改你自己的主機名序列,在序號2

這個選項,修改成自己的主機名序列!!!!!
(4)zookeeper啟動/關閉/查看狀態腳本
#!/bin/bash
#該腳本是用來對zookeeper腳本進行啟動/關閉/查看狀態
if [ $# -lt 1 ]
then
echo "沒有引數輸入,,,,,,,"
exit ;
fi
zkpath='/opt/share/zookeeper-3.4.10' #配置zookeeper的安裝目錄
hostlist="master node1 node2" # 配置主機名佇列
case $1 in
"start")
echo " =================== 啟動 zk 集群 ==================="
for host in $hostlist
do
ssh $host $zkpath'/bin/zkServer.sh start'
echo $host "zookeeper已經啟動"
done
;;
"stop")
echo " ===================關閉 zk 集群 ==================="
for host in $hostlist
do
ssh $host $zkpath'/bin/zkServer.sh stop'
echo $host "zookeeper已經關閉"
done
;;
"status")
echo " =================== zk 集群狀態 ==================="
for host in $hostlist
do
ssh $host $zkpath'/bin/zkServer.sh status'
done
;;
*)
echo "引數為 [start|stop|status]"
;;
esac
注意:
該腳本要修改自己的zookeeper的安裝目錄
以及自己集群的主機名佇列,

(5)上面的腳本都必須要執行的操作
#創建檔案
touch xsync
#附權限
chmod +x xsync
#移動到 /usr/local/bin/ 下面
mv xsync /usr/local/bin/
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/290823.html
標籤:其他
上一篇:Spark2.1.0安裝和配置
下一篇:2021年保研夏令營經驗貼
