ZooKeeper集群启停脚本

ZooKeeper集群启停脚本

免密登录

Linux启停脚本需要各节点提前设置免密登录。

1
2
3
4
5
6
7
8
9
10
11
## 首先检查一下是否可以免密登录到node03
[root@node03 opt]# ssh node03
## 进行免密ssh设置,三次回车生成公钥和密钥。生成的相关信息文件存储在根目录的.ssh/路径下
[root@node03 opt]# ssh-keygen -t rsa
## 拷贝密钥,第一次登录需要输入密码
[root@node03 opt]# ssh-copy-id node03
## 再次进行免密登录检查
[root@node03 opt]# ssh node03
Last login: Sat Mar 27 11:56:16 2021 from ::1
## 其它节点同理
[root@node03 opt]# ssh-copy-id node04

编写脚本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#!/bin/bash
case $1 in
start){
for i in node03 node04 node05
do
echo -----------ZooKeeper $i 启动-----------
ssh $i "/opt/zookeeper-3.5.7/bin/zkServer.sh start"
done
}
;;
stop){
for i in node03 node04 node05
do
echo -----------ZooKeeper $i 停止-----------
ssh $i "/opt/zookeeper-3.5.7/bin/zkServer.sh stop"
done
}
;;
status){
for i in node03 node04 node05
do
echo -----------ZooKeeper $i 状态-----------
ssh $i "/opt/zookeeper-3.5.7/bin/zkServer.sh status"
done
}
;;
esac

存放到用户bin目录并修改权限

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
## 上传到指定目录
[root@node03 bin]# cd /home/henrrywan/
[root@node03 henrrywan]# ls
myZkServer.sh
## 修改权限
[root@node03 henrrywan]# chmod 777 myZkServer.sh
## 使用自定义脚本查看ZooKeeper状态
[root@node03 henrrywan]# ./myZkServer.sh status
-----------Zookeeper node03 状态-----------
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.5.7/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost.
Mode: follower
-----------Zookeeper node04 状态-----------
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.5.7/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost.
Mode: leader
-----------Zookeeper node05 状态-----------
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.5.7/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost.
Mode: follower

注意:如果出现找不到JAVA_HOME的情况,可以在zookeeper-3.5.7/bin/zkServer.sh中添加JAVA_HOME。

1
2
3
4
5
6
7
8
## 错误信息
[root@node04 henrrywan]# ./myZkServer.sh status
-----------Zookeeper node03 状态-----------
Error: JAVA_HOME is not set and java could not be found in PATH.
-----------Zookeeper node04 状态-----------
Error: JAVA_HOME is not set and java could not be found in PATH.
-----------Zookeeper node05 状态-----------
Error: JAVA_HOME is not set and java could not be found in PATH.
打赏
  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
  • Copyrights © 2015-2023 henrrywan

请我喝杯咖啡吧~

支付宝
微信