shell脚本操作Zookeeper集群
前提: 已经安装好zk集群,并且做好免密登录。
脚本如下:
#!/bin/batch
#node1、node2、node3已做好ip映射,也可替换为具体ip地址
zk_arr=("node1" "node2" "node3")
echo "请选择对zk集群的操作类型"
active=""
PS3="请输入的选择"
select var in "启动" "关闭" "查看状态"
do
echo "请稍后..."
case $var in
"启动")
active="start"
break
;;
"关闭")
active="stop"
break
;;
"查看状态")
active="status"
break
;;
*)
echo "输入有误请从新输入"
continue
;;
esac
done
echo "zk集群正在${var}"
for node in ${zk_arr[*]}
do
#shell脚本远程登录其他服务器执行多行命令
#1:引号内命令之间用分号隔开(简单命令使用)
#ssh root@$node "source /etc/profile;/export/server/zookeeper-3.4.6/bin/zkServer.sh $active"
#2:<< EOF EOF 格式,EOF只是一个标识,可以换做其他任意字符,多行命令写在标识之间。(比较复杂的命令推荐使用)
ssh root@$node << EOF
source /etc/profile
/export/server/zookeeper-3.4.6/bin/zkServer.sh $active
EOF
done
echo "zk集群${var}完成"
运行结果:

版权声明:本文为weixin_40002653原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。