Zookeeper安装方式有三种,单机模式和集群模式以及伪集群模式。
- 单机模式:ZooKeeper只运行在一台服务器上,适合测试环境
- 集群模式:ZooKeeper运行于一个集群上,适合生产环境
- 伪集群模式:就是一台服务器上运行了多个ZooKeeper实例
单机模式搭建
首先我们可以在官网或者附件中下载稳定版本的ZooKeeper压缩包并上传至服务器。我们演示版本为3.4.14。之后我们解压缩压缩包:
tar -zxvf zookeeper-3.4.14.tar.gz
进⼊ zookeeper-3.4.14 目录,创建 data 文件夹:
cd zookeeper-3.4.14
mkdir data
修改配置文件名称:
cd conf
mv zoo_sample.cfg zoo.cfg
修改zoo.cfg中的dataDir属性:
dataDir=/root/zookeeper-3.4.14/data
进入bin目录,启动服务使用如下命令:
./zkServer.sh start
输出以下内容表示启动成功:
关闭服务输入命令:
./zkServer.sh stop
输出以下提示信息:
查看状态的命令如下:
./zkServer.sh status
如果启动状态,提示:
如果未启动状态,提示:
伪集群模式
ZooKeeper不但可以在单机上运行单机模式ZooKeeper,而且可以在单机模拟集群模式ZooKeeper的运行,也就是将不同实例运行在同一台机器上,用端口进行区分。 伪集群模式为我们体验ZooKeeper和做一些尝试性的实验提供了很大的便利。比如,我们在测试的时候,可以先使用少量数据在伪集群模式下进行测试。当测试可行的时候,再将数据移植到集群模式中进行真实的数据实验。这样不但保证了他的可行性,同时大大提高了实验的效率。这种搭建方式,比较简便,成本比较低,适合测试和学习。
步骤和单机版本相似,也是下载安装包上传到服务器。之后,我们创建目录zkcluster:
mkdir zkcluster
解压 zookeeper-3.4.14.tar.gz到zkcluster目录下:
tar -zxvf zookeeper-3.4.14.tar.gz -C /zkcluster
复制并改名:
cp -r zookeeper01/ zookeeper02
cp -r zookeeper01/ zookeeper03
分别在zookeeper01、zookeeper02、zookeeper03⽬录下创建data及logs目录:
mkdir data
cd data
mkdir logs
修改配置文件名称:
cd conf
mv zoo_sample.cfg zoo.cfg
配置每⼀个Zookeeper 的dataDir(zoo.cfg) clientPort 分别为2181 2182 2183:
clientPort=2181
dataDir=/zkcluster/zookeeper01/data
dataLogDir=/zkcluster/zookeeper01/data/logs
clientPort=2182
dataDir=/zkcluster/zookeeper02/data
dataLogDir=/zkcluster/zookeeper02/data/logs
clientPort=2183
dataDir=/zkcluster/zookeeper03/data
dataLogDir=/zkcluster/zookeeper03/data/logs
在每个zookeeper的 data 目录下创建⼀个 myid 文件,内容分别是1、2、3 。这个文件就是记录每个服务器的ID:
touch myid
echo "1" > myid
touch myid
echo "2" > myid
touch myid
echo "3" > myid
在每⼀个zookeeper 的 zoo.cfg配置客户端访问端口(clientPort)和集群服务器IP列表:
server.1=10.211.55.4:2881:3881
server.2=10.211.55.4:2882:3882
server.3=10.211.55.4:2883:3883
#server.服务器ID=服务器IP地址:服务器之间通信端口:服务器之间投票选举端口
依次启动三个zk实例之后,我们的伪集群模式就搭建完成了。
文章评论