标签:bin 三台 zookeeper sh zkServer ssh zksh 群起
一、在/bin目录下创建zksh.sh
touch zksh.sh vi zksh.sh
二、输入shell脚本代码
#!/bin/bash case $1 in "start"){ for i in hadoop201 hadoop202 hadoop203 do echo ---------- zookeeper $i 启动 ------------ ssh $i "source /etc/profile; /opt/module/zookeeper/bin/zkServer.sh start" done };; "stop"){ for i in hadoop201 hadoop202 hadoop203 do echo ---------- zookeeper $i 停止 ------------ ssh $i "source /etc/profile; /opt/module/zookeeper/bin/zkServer.sh stop" done };; "status"){ for i in hadoop201 hadoop202 hadoop203 do echo ---------- zookeeper $i 状态 ------------ ssh $i "source /etc/profile; /opt/module/zookeeper/bin/zkServer.sh status" done };; esac
注意:1.三台服务器的名称分别是 hadoop201 hadoop202 hadoop203 ,这里需要根据自身情况更改
2.ssh中的zkServer.sh文件路径也要根据自身修改
3.如果在ssh中不添加“source /etc/profile”,有可能汇报如下错误
ZooKeeper JMX enabled by default Using config: /opt/module/zookeeper/bin/../conf/zoo.cfg Error contacting service. It is probably not running.
三、给zksh.sh加权限
chmod 777 zksh.sh
四、群起命令
/bin/zksh.sh start
五、群关闭命令
/bin/zksh.sh stop
六、查看集群状态
/bin/zksh.sh status
七、注意事项
(1)case行尾必须为单词“in”,每一个模式匹配必须以右括号“)”结束。
(2)双分号“;;”表示命令序列结束,相当于java中的break。
(3)最后的“*)”表示默认模式,相当于java中的default。
(4) 简单的版本
#!/bin/bash for i in hadoop1 hadoop2 hadoop3 do echo ------------------- $i ------------------ ssh $i "zkServer.sh $*" 2> /dev/null done
注:可加2> /dev/null 将日志过滤掉,不出现在输出台上
2> /dev/null ===>意思是将错误日志输出到“黑洞”(丢弃)
标签:bin,三台,zookeeper,sh,zkServer,ssh,zksh,群起 来源: https://www.cnblogs.com/lxzcloud/p/15085777.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。