大数据集群相关集群启停脚本整理(测试环境3台节点)

1. Hadoop集群启停脚本

#!/bin/bash
if [ $# -lt 1 ]
then
echo "No Args Input..."
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 "Input Args Error..."
;;
esac

2. HBase集群启停脚本

#!/usr/bin/env bash
# HBase集群启停脚本
if [ $# -lt 1 ]
then
echo "No Args Input..."
exit ;
fi
case $1 in
"start")
echo " =================== 启动 HBase集群 ==================="
ssh hadoop102 "sh /opt/module/hbase-2.0.5/bin/start-hbase.sh"
;;
"stop")
echo " =================== 关闭 HBase集群 ==================="
ssh hadoop102 "sh /opt/module/hbase-2.0.5/bin/stop-hbase.sh"
;;
"restart")
echo " =================== 重启 HBase集群 ==================="
ssh hadoop102 "sh /opt/module/hbase-2.0.5/bin/stop-hbase.sh"
sleep 5
ssh hadoop102 "sh /opt/module/hbase-2.0.5/bin/start-hbase.sh"
;;
esac

3. Zookeeper集群启停脚本

#!/usr/bin/env bash
if [ $# -lt 1 ]
then
echo "No Args Input..."
exit ;
fi
case $1 in
"start")
echo " =================== 启动 zookeeper集群 ==================="
for i in hadoop102 hadoop103 hadoop104
do
echo --------- $i ----------
ssh $i "/opt/module/zookeeper-3.5.7/bin/zkServer.sh start"
done
;;
"stop")
echo " =================== 关闭 zookeeper集群 ==================="
for i in hadoop102 hadoop103 hadoop104
do
echo --------- $i ----------
ssh $i "/opt/module/zookeeper-3.5.7/bin/zkServer.sh stop"
done
;;
"status")
echo " =================== 查看 zookeeper集群 ==================="
for i in hadoop102 hadoop103 hadoop104
do
echo --------- $i ----------
ssh $i "/opt/module/zookeeper-3.5.7/bin/zkServer.sh status"
done
;;
esac

4. Kafka集群启停脚本

#!/usr/bin/env bash
if [ $# -lt 1 ]
then
echo "No Args Input..."
exit ;
fi
case $1 in
"start")
echo " =================== 启动 kafka集群 ==================="
for i in hadoop102 hadoop103 hadoop104
do
echo --------- $i ----------
ssh $i "/opt/module/kafka/bin/kafka-server-start.sh -daemon /opt/module/kafka/config/server.properties"
done
;;
"stop")
echo " =================== 关闭 kafka集群 ==================="
for i in hadoop102 hadoop103 hadoop104
do
echo --------- $i ----------
ssh $i "/opt/module/kafka/bin/kafka-server-stop.sh"
done
;;
"restart")
echo " =================== 重启 kafka集群 ==================="
for i in hadoop102 hadoop103 hadoop104
do
echo --------- $i ----------
ssh $i "/opt/module/kafka/bin/kafka-server-stop.sh"
sleep 5
ssh $i "/opt/module/kafka/bin/kafka-server-start.sh -daemon /opt/module/kafka/config/server.properties"
done
;;
esac

5. Zabbix集群启停脚本

#!/usr/bin/env bash
# Presto Server集群执行脚本
if [ $# -lt 1 ]
then
echo "No Args Input..."
exit ;
fi
case $1 in
"start")
echo " =================== 启动Zabbix集群 ==================="
ssh hadoop102 "sudo systemctl start zabbix-server zabbix-agent httpd"
ssh hadoop103 "sudo systemctl start zabbix-agent"
ssh hadoop104 "sudo systemctl start zabbix-agent"

;;
"stop")
echo " =================== 关闭 启动Zabbix集群 ==================="
ssh hadoop102 "sudo systemctl stop zabbix-server zabbix-agent httpd"
ssh hadoop103 "sudo systemctl stop zabbix-agent"
ssh hadoop104 "sudo systemctl stop zabbix-agent"
;;
"enable")
echo " =================== 设置开机启动Zabbix集群 ==================="
ssh hadoop102 "sudo systemctl enable zabbix-server zabbix-agent httpd"
ssh hadoop103 "sudo systemctl enable zabbix-agent"
ssh hadoop104 "sudo systemctl enable zabbix-agent"
;;
"disable")
echo " =================== 关闭开机启动Zabbix集群 ==================="
ssh hadoop102 "sudo systemctl disable zabbix-server zabbix-agent httpd"
ssh hadoop103 "sudo systemctl disable zabbix-agent"
ssh hadoop104 "sudo systemctl disable zabbix-agent"
;;
esac

6. Azkaban集群启停脚本

#!/usr/bin/env bash
# 启动+关闭azkaban集群脚本
if [ $# -lt 1 ]
then
echo "No Args Input..."
exit ;
fi

case $1 in
"start")
echo " =================== 启动 azkaban集群 先启动Executor Server ==================="
for i in hadoop102 hadoop103 hadoop104
do
echo --------- $i ----------
ssh $i "sh /opt/module/azkaban/azkaban-exec/bin/start-exec.sh"
sleep 5
echo "--开始激活Executor Server---"
ssh $i "curl -G '$i:12321/executor?action=activate' && echo"
done
echo " =================== 启动 azkaban集群 再启动Web Server ==================="
ssh hadoop102 "sh /opt/module/azkaban/azkaban-web/bin/start-web.sh"
;;
"stop")
echo " =================== 关闭 azkaban集群 Executor Server ==================="
for i in hadoop102 hadoop103 hadoop104
do
echo --------- $i ----------
ssh $i "sh /opt/module/azkaban/azkaban-exec/bin/shutdown-exec.sh"
done
echo " =================== 关闭 azkaban集群 Web Server ==================="
ssh hadoop102 "sh /opt/module/azkaban/azkaban-web/bin/shutdown-web.sh"
;;
"start-web")
echo " =================== 单独启动 Web Server ==================="
ssh hadoop102 "sh /opt/module/azkaban/azkaban-web/bin/start-web.sh"
;;
"stop-web")
echo " =================== 单独关闭 Web Server ==================="
ssh hadoop102 "sh /opt/module/azkaban/azkaban-web/bin/shutdown-web.sh"
;;
esac

7. Kylin集群启停脚本

#!/usr/bin/env bash 
if [ $# -lt 1 ]
then
echo "No Args Input..."
exit ;
fi
case $1 in
"start")
echo " =================== 启动 Hadoop102 Kylin服务 ==================="
ssh hadoop102 "sh /opt/module/kylin-3.0.2/bin//kylin.sh start"
;;
"stop")
echo " =================== 关闭 Hadoop102 Kylin服务 ==================="
ssh hadoop102 "sh /opt/module/kylin-3.0.2/bin//kylin.sh stop"
;;
"restart")
echo " =================== 重启 Hadoop102 Kylin服务 ==================="
ssh hadoop102 "sh /opt/module/kylin-3.0.2/bin/kylin.sh stop"
sleep 5
ssh hadoop102 "sh /opt/module/kylin-3.0.2/bin/kylin.sh start"
;;
esac

8. Presto集群启停脚本

#!/usr/bin/env bash
# Presto Server集群执行脚本
if [ $# -lt 1 ]
then
echo "No Args Input..."
exit ;
fi
case $1 in
"start")
echo " =================== 启动 Presto Server集群 ==================="
for i in hadoop102 hadoop103 hadoop104
do
echo --------- $i ----------
ssh $i "/opt/module/presto/bin/launcher start"
done
;;
"stop")
echo " =================== 关闭 Presto Server集群 ==================="
for i in hadoop102 hadoop103 hadoop104
do
echo --------- $i ----------
ssh $i "/opt/module/presto/bin/launcher stop"
done
;;
esac


=================================================================================
#!/usr/bin/env bash
# Presto Client执行脚本
echo " =================== 启动 hadoop102 Presto Client ==================="
ssh hadoop102 "sh /opt/module/presto/bin/presto-cli/prestocli --server hadoop102:8881 --catalog hive --schema default"

9. 集群文件分发脚本(首先要设置ssh免密登录)

#!/bin/bash
#1. 判断参数个数
if [ $# -lt 1 ]
then
echo Not Enough Arguement!
exit;
fi
#2. 遍历集群所有机器
for host in hadoop102 hadoop103 hadoop104
do
echo ==================== $host ====================
#3. 遍历所有目录,挨个发送
for file in $@
do
#4 判断文件是否存在
if [ -e $file ]
then
#5. 获取父目录
pdir=$(cd -P $(dirname $file); pwd)
#6. 获取当前文件的名称
fname=$(basename $file)
ssh $host "mkdir -p $pdir"
rsync -av $pdir/$fname $host:$pdir
else
echo $file does not exists!
fi
done
done


posted @ 2021-06-15 10:21  521pingguo1314  阅读(197)  评论(0)    收藏  举报