前言

现在有三台服务器在运行,假如需要关闭所有服务器的话,要一台一台的去关,如果有上千台服务器呢?这样效率就会很低下,现在写一个脚本来开启或者关闭所有服务器。

一、所有zookeeper同时启动的shell脚本

把下面脚本放在/root/bin目录下:

#!/bin/bash

case $1 in
"start"){
        for i in zookeeper101 zookeeper102 zookeeper103
        do
             echo ----------zookeeper $i 启动----------
             ssh $i "/opt/module/zookeeper-3.5.7/bin/zkServer.sh start"
        done
}
;;
"stop"){
        for i in zookeeper101 zookeeper102 zookeeper103
        do
             echo ----------zookeeper $i 停止----------
             ssh $i "/opt/module/zookeeper-3.5.7/bin/zkServer.sh stop"
        done
}
;;
"status"){
        for i in zookeeper101 zookeeper102 zookeeper103
        do
             echo ----------zookeeper $i 状态----------
             ssh $i "/opt/module/zookeeper-3.5.7/bin/zkServer.sh status"
        done
}
;;
esac



再赋予这个脚本权限:
在这里插入图片描述

二、使用脚本启动/停止集群

1.启动

在这里插入图片描述

2.查看集群状态

在这里插入图片描述

3.停止

在这里插入图片描述

三、遇到的问题

一开始每次使用脚本启动、停止或查看集群状态都得输入密码。
解决:设置三台机器之间的免密登录。
解决过程:
1、在zookeeper101服务器设置秘钥:
在这里插入图片描述
第二个箭头是重复设置才会出现,其他三个箭头无脑回车就行。

2、把秘钥复制到三台服务器上:
在这里插入图片描述
第二个箭头输入linux的登录密码,这样就可以不用每次启动集群都输入每台机器的密码了。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐