【Zookeeper】编写集群Zookeeper启动、查看状态、停止管理脚本
在分布式集群中,经常会有多台Zookeeper机器,如果每台机器启动,不但麻烦且浪费时间,有时还会有疏漏,所以编写一个shell脚本,统一对所有zk机器进行管理,显得尤为重要了。
本文假设有三台机器需要管理,分别是hadoop111,hadoop112,hadoop113,管理start status stop 三种命令:
1. 首先在本用户的bin目录下(若无bin目录,可以新建该目录),创建一个zk.sh脚本:
cd /home/用户名/bin vi zk.sh
2.增加脚本代码:
#! /bin/bash case $1 in "start"){ for i in hadoop111 hadoop112 hadoop113 do ssh $i "/opt/module/zookeeper-3.4.10/bin/zkServer.sh start" done };; "status"){ for i in hadoop111 hadoop112 hadoop113 do ssh $i "/opt/module/zookeeper-3.4.10/bin/zkServer.sh status" done };; "stop"){ for i in hadoop111 hadoop112 hadoop113 do ssh $i "/opt/module/zookeeper-3.4.10/bin/zkServer.sh stop" done };; esac
3.给脚本赋权限:
chmod 777 zk.sh
4.使用方法:
zookeeper启动命令
zk.sh start
zookeeper查看状态
zk.sh status
zookeeper停止命令
zk.sh stop
注意事项:
1. 集群内的各个服务器需要配置ssh登录,不知道如何配置SSH的,点击 linux配置ssh登录;
2.保证集群之间可以正常通信,比如关闭了防火墙或者开了对应端口;
3.如果是有更多的机器,只需要在脚本的for i in 后面添加机器hostname即可;
4.启动zookeeper的路径,一定要写绝对路径;
作者:ShadowFiend
出处:http://www.cnblogs.com/ShadowFiend/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。如有问题或建议,请多多赐教,非常感谢。