linux多节点zookeeper(不限于zookeeper)批量调起(举例,问题排查)

小脚本,废话不多说直接来

#!/bin/bash

flag=$1
DfsOrAll=$2


#启动zookeeper
#这里 hadoop01 hadoop02 hadoop03 都是节点别名,取代ip地址,可在/etc/hosts配置
for i in hadoop01 hadoop02 hadoop03
do
echo --------------------------zookeeper $i ${flag} -------------------
ssh $i "/opt/app/zookeeper-3.4.10/bin/zkServer.sh ${flag}"
done

#启动hdfs相关
if [ ${DfsOrAll} == "hdfs" ];then
    ssh root@hadoop01 "/opt/app/hadoop-2.7.2/sbin/${flag}-dfs.sh"
elif [ ${DfsOrAll} == "yarn" ];then
    ssh root@hadoop02 "/opt/app/hadoop-2.7.2/sbin/${flag}-yarn.sh"
elif [ ${DfsOrAll} == "all" ];then
    ssh root@hadoop01 "/opt/app/hadoop-2.7.2/sbin/${flag}-all.sh"
else
    echo "无启动hdfs相关"
fi

#kafka相关
#等等

具体都在带注释里,脚本差不多,随你发挥

主要问题:

1.启动脚本跑完后,显示成功,却发现zookeeper没起来。

解决方案:在zookeeper的bin目录下找到zkEnv.sh ,在文件前几行找个位置添加java的环境变量,如下(自己的java版本可能和我的不一样,具体进入自己节点的/etc/profile看)

​​​​​​​export JAVA_HOME=/opt/app/jdk1.8.0_181

​​​​​​​

2.运行zkServer.sh status 后报错

解决方案:有的部分节点zookeeper启动失败,找到并启动就好了

猜你喜欢

转载自blog.csdn.net/qq_40788398/article/details/125203612