linux安装zookeeper集群保姆教程,包括集群启停脚本

举报
橙子园 发表于 2022/05/26 00:30:04 2022/05/26
【摘要】 三台机器安装zookeeper集群 注意事项:安装前三台机器一定要保证时钟同步 说明: 我这里是有3台服务器,分别hostname为node01、node02、node03。三台机器已经配置好了ss...

三台机器安装zookeeper集群

注意事项:安装前三台机器一定要保证时钟同步

说明:

  • 我这里是有3台服务器,分别hostname为node01、node02、node03。
  • 三台机器已经配置好了ssh。
  • zookeeper使用的是cdh5的zookeeper包,没有使用原生zookeeper项目的包。
  • 三台机器已经进行了时钟同步。

下载zookeeeper的压缩包,下载网址如下:http://archive.cloudera.com/cdh5/cdh/5/
我下载的版本为:zookeeper-3.4.5-cdh5.14.2.tar.gz

将压缩包上传到的node01的/book/soft路径下

1、解压

解压node01执行以下命令解压zookeeper的压缩包到node01服务器的/book/install路径下去,然后准备进行安装

cd /book/soft

tar -zxvf zookeeper-3.4.5-cdh5.14.2.tar.gz -C /book/install/

  
 
  • 1
  • 2
  • 3
2、修改配置文件

第一台机器依次执行下面的修改配置文件

# 到对应的配置路径下
cd /book/install/zookeeper-3.4.5-cdh5.14.2/conf

# 创建一个存储zookeeper数据的目录
mkdir -p /book/install/zookeeper-3.4.5-cdh5.14.2/zkdatas

# 拷贝一份配置文件
cp zoo_sample.cfg zoo.cfg

# 打开要修改的配置文件
vim zoo.cfg

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

修改的内容如下:

dataDir=/book/install/zookeeper-3.4.5-cdh5.14.2/zkdatas
autopurge.snapRetainCount=3
autopurge.purgeInterval=1

server.1=node01:2888:3888
server.2=node02:2888:3888
server.3=node03:2888:3888

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

解释:

server.A=B:C:D, A代表服务器的编号,与下面的对应下面的myid, B是集群的各个IP地址,C:D 是端口配置

3、添加myid配置

在第一台机器的/book/install/zookeeper-3.4.5-cdh5.14.2/zkdatas/路径下创建一个文件,文件名为myid ,文件内容为1,执行如下命令即可

echo 1 > /book/install/zookeeper-3.4.5-cdh5.14.2/zkdatas/myid

  
 
  • 1
4、安装包分发并修改myid的值

安装包分发到其他机器,第一台机器上面执行以下两个命令,不过前提条件是3台服务器已经配置好了ssh

scp -r /book/install/zookeeper-3.4.5-cdh5.14.2/ node02:/book/install/

scp -r /book/install/zookeeper-3.4.5-cdh5.14.2/ node03:/book/install/

  
 
  • 1
  • 2
  • 3

第二台机器上修改myid的值为2,执行以下命令即可

echo 2 > /book/install/zookeeper-3.4.5-cdh5.14.2/zkdatas/myid

  
 
  • 1

第三台机器上修改myid的值为3,执行以下命令即可

echo 3 > /book/install/zookeeper-3.4.5-cdh5.14.2/zkdatas/myid

  
 
  • 1
5、配置环境变量

三台节点都配置/etc/profile文件

# zookeeper
export ZK_HOME=/book/install/zookeeper-3.4.5-cdh5.14.2
export PATH=$PATH:$ZK_HOME/bin

  
 
  • 1
  • 2
  • 3

三台节点执行以下命令,让新添环境变量生效

source /etc/profile

  
 
  • 1
6、三台机器启动zookeeper服务

三台机器执行下面命令

/book/install/zookeeper-3.4.5-cdh5.14.2/bin/zkServer.sh start

  
 
  • 1

查看启动状态

/book/install/zookeeper-3.4.5-cdh5.14.2/bin/zkServer.sh status

  
 
  • 1

使用nohub开启,做了个小优化
zookeeper服务开启使用nohub,在每次开启之后会在开启服务的路径生成日志文件zookeeper.out, 所以我们在三台机器下的zookeeper的安装目录下创建一个logs文件

mkdir /book/install/zookeeper-3.4.5-cdh5.14.2/logs

  
 
  • 1

然后启动时切换到此路径下,然后如下命令启动服务:

# 开启
cd /book/install/zookeeper-3.4.5-cdh5.14.2/logs && /book/install/zookeeper-3.4.5-cdh5.14.2/bin/zkServer.sh start

  
 
  • 1
  • 2
7、关闭zookeeper

三个节点都运行下命命令

zkServer.sh stop

  
 
  • 1
8、使用脚本启停zookeeper

创建脚本

vim /home/book/bin/zkshell.sh

  
 
  • 1

添加内容,注意内容修改为你自己对应安装的路径

#!/bin/bash


case $1 in
"start" ){
start_params="cd /book/install/zookeeper-3.4.5-cdh5.14.2/logs && zkServer.sh $1"
for (( i=1 ; i <= 3 ; i = $i + 1 )) ; do
    echo ============= node0$i $start_params =============
    ssh node0$i "source /etc/profile;$start_params"
done


};;
"stop"){
stop_params="zkServer.sh $1"
for (( i=1 ; i <= 3 ; i = $i + 1 )) ; do
    echo ============= node0$i $stop_params =============
    ssh node0$i "source /etc/profile;$stop_params"
done


};;
esac


  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24

修改文件权限,使其成为可执行文件

chmod 777 /home/book/bin/zkshell.sh

  
 
  • 1

启动zookeeper集群

zkshell.sh start

  
 
  • 1

在这里插入图片描述
关闭zookeeper集群

zkshell.sh stop

  
 
  • 1

文章来源: blog.csdn.net,作者:橙子园,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/Chenftli/article/details/123940513

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。