重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
hadoop2.7.3+zookeeper3.4.9+hbase1.2.6
10年积累的网站设计制作、成都网站建设经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计后付款的网站建设流程,更有南乐免费网站建设让你可以放心的选择与我们合作。
我想让它们实现开机自启动,需要2个脚本实现。h2.sh 和h3.sh.
#!/bin/bash
#discribe: 实现hadoop+zookeeper+hbase 开机自启动
#对我非常有用的链接:ssh 到其他机器,实现zk启动。https://zhidao.baidu.com/question/1447196109490350780.html
#while true 我会用,但不熟。
#有小人挡路,不要怕。也不要以自己的能力克服小人,因为你克服不了。可以自己绕过去。或者找其他人克服小人。
#实现开机自动启动,多亏了下面这篇链接,解决了切换用户后,继续执行下面的命令。http://www.jb51.net/article/59255.htm
#因此,这个脚本还需要同目录h2.sh 这个脚本的配合,完成整体的开机自启动。h2.sh 的作用就是切换用户后,执行这个脚本。
内容如下:
h3.sh:
while true
do
for ip in master11 slave22 slave23
do
ping -c 5 $ip &>/dev/null & # 不加&符号,会一直提示。没法敲其他命令了。 &>/dev/null也很重要。
if [ $? -ne 0 ];then
tag=1;
echo $ip+"NO kai ji"
break
else
tag=0
fi
done
if [ $tag -eq 0 ];then
break
fi
break #这是一个难点。它的作用是跳出while循环。避免死循环。
done
/usr/local/hadoop273/sbin/start-all.sh
[ $? -eq 0 ] && sleep 5||exit 1
for i in master11 slave22 slave23
do
ssh $i "/home/hadoop/hadoop/zookeeper-3.4.9/bin/zkServer.sh start"
done
#[ $? -eq 0 ] && /usr/local/hbase-1.2.6/bin/start-hbase.sh|| exit 2
if [ $? -eq 0 ];then
/usr/local/hbase-1.2.6/bin/start-hbase.sh
else
echo "zk no ok"
fi
h2.sh:
su - hadoop -s /bin/bash /root/h3.sh.
把h2.sh 放到/etc/init.d/底下,就行了。
脚本得有执行权限。