学学shell脚本还是很有必要的。
这里只是简单的一个测试代码,自动部署和启动都可以这样写,
如果把shell学好,可以写一个hadoop集群环境搭建和部署,想想这搭建环境效率多高。。
下面是例子:
#!/bin/bash
SERVERS="hadoop01 hadoop02 hadoop03"
for SERVER in $SERVERS
do
echo "当前"$SERVER"正在启动...................."
ssh root@$SERVER "source /etc/profile;/usr/apps/zookeeper-3.4.9/bin/zkServer.sh start"
echo $SERVER"启动结束--------------------------------------------"
done
这句话解释下 ssh root@$SERVER "source /etc/profile;/usr/apps/zookeeper-3.4.9/bin/zkServer.sh start"
source /etc/proifle 这句话必须添加,因为当shell进程登陆后不会加载这个文件,也就是没有一些变量使用,例如JAVA_HOME无法使用,这时就没办法启动zk,因为需要加上source进行初始化,把profile的变量加入shell登陆进程里