Zookeeper集群搭建指的是ZooKeeper分布式模式安装。通常由2n+1台server组成。这是因为为了保证Leader选举(基于Paxos算法的实现)能过得到多数的支持,所以ZooKeeper集群的数量一般为奇数。
Zookeeper运行需要java环境,所以需要提前安装jdk。对于安装leader+follower模式的集群,大致过程如下:
- 配置主机名称到IP地址映射配置
- 修改ZooKeeper配置文件
- 远程复制分发安装文件
- 设置myid
- 启动ZooKeeper集群
这里,我们安装的是leader+follower模式
1.下载zookeeeper的压缩包,下载网址如下
2.解压
在node1主机上,解压zookeeper的压缩包到/export/server路径下去,然后准备进行安装
cd /export/software
tar -zxvf zookeeper.tar.gz -C /export/server/
cd /export/server/
ln -s zookeeper/ zookeeper
3.修改配置文件
在node1主机上,修改配置文件
cd /export/software
tar -zxvf zookeeper.tar.gz -C /export/server/
cd /export/server/
ln -s zookeeper/ zookeeper
修改以下内容
#Zookeeper的数据存放目录
dataDir=/export/server/zookeeper/zkdatas
# 保留多少个快照
autopurge.snapRetainCount=3
# 日志多少小时清理一次
autopurge.purgeInterval=1
# 集群中服务器地址
server.1=node1:2888:3888
server.2=node2:2888:3888
server.3=node3:2888:3888
4.添加myid配置
在node1主机的/export/server/zookeeper/zkdatas/这个路径下创建一个文件,文件名为myid ,文件内容为1
echo 1 > /export/server/zookeeper/zkdatas/myid
5.安装包分发并修改myid的值
在node1主机上,将安装包分发到其他机器
第一台机器上面执行以下两个命令
cd /export/server/
scp -r /export/server/zookeeper-3.4.6/ node2:$PWD
scp -r /export/server/zookeeper-3.4.6/ node3:$PWD
第二台机器上建立软连接, 并修改myid的值为2
cd /export/server/
ln -s zookeeper-3.4.6/ zookeeper
echo 2 > /export/server/zookeeper/zkdatas/myid
第三台机器上建立软连接, 并修改myid的值为3
cd /export/server/
ln -s zookeeper-3.4.6/ zookeeper
echo 3 > /export/server/zookeeper/zkdatas/myid
6.三台机器启动zookeeper服务
三台机器分别启动zookeeper服务
这个命令三台机器都要执行
/export/server/zookeeper/bin/zkServer.sh start
修改配置文件
在node1主机上,修改配置文件
cd /export/server/zookeeper/conf/
cp zoo_sample.cfg zoo.cfg
mkdir -p /export/server/zookeeper/zkdatas/
vim zoo.cfg
修改以下内容
#Zookeeper的数据存放目录
dataDir=/export/server/zookeeper/zkdatas
# 保留多少个快照
autopurge.snapRetainCount=3
# 日志多少小时清理一次
autopurge.purgeInterval=1
# 集群中服务器地址
server.1=node1:2888:3888
server.2=node2:2888:3888
server.3=node3:2888:3888
添加myid配置
在node1主机的/export/server/zookeeper/zkdatas/这个路径下创建一个文件,文件名为myid ,文件内容为1
echo 1 > /export/server/zookeeper/zkdatas/myid
安装包分发并修改myid的值
在node1主机上,将安装包分发到其他机器
第一台机器上面执行以下两个命令
cd /export/server/
scp -r /export/server/zookeeper-3.4.6/ node2:$PWD
scp -r /export/server/zookeeper-3.4.6/ node3:$PWD
第二台机器上建立软连接, 并修改myid的值为2
cd /export/server/
scp -r /export/server/zookeeper-3.4.6/ node2:$PWD
scp -r /export/server/zookeeper-3.4.6/ node3:$PWD
第三台机器上建立软连接, 并修改myid的值为3
cd /export/server/
ln -s zookeeper-3.4.6/ zookeeper
echo 3 > /export/server/zookeeper/zkdatas/myid
三台机器分别启动zookeeper服务
这个命令三台机器都要执行
/export/server/zookeeper/bin/zkServer.sh start
三台主机分别查看启动状态
/export/server/zookeeper/bin/zkServer.sh status
至此,Zookeeper安装完成。