Zookeeper集群配置

安装Zookeeper分为单机、伪集群、集群 三种模式

下载 http://apache.fayea.com/apache-mirror/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz

解压zookeeper-3.4.6.tar.gz到/home/fld/zookeeper-3.4.6

###伪集群模式

这里假设建立3个节点服务

cd /home/fld/zookeeper-3.4.6

创建3个data文件夹:

mkdir data0
mkdir data1
mkdir data2

创建3个log文件:

mkdir log0
mkdir log1
mkdir log2

创建3个配置文件

cp conf/zoo_sample.cfg conf/zoo_0.cfg
cp conf/zoo_sample.cfg conf/zoo_1.cfg
cp conf/zoo_sample.cfg conf/zoo_2.cfg

3个配置文件,除了clientPort有点区别外,其他的配置项都是一样的。

编辑配置文件conf/zoo_0.cfg:

tickTime=2000
initLimit=10
syncLimit=5
dataDir=/home/fld/zookeeper-3.4.6/data0
dataLogDir=/home/fld/zookeeper-3.4.6/logs0
clientPort=2181
server.0=127.0.0.1:2887:3887
server.1=127.0.0.1:2888:3888
server.2=127.0.0.1:2889:3889

编辑配置文件conf/zoo_1.cfg:

tickTime=2000
initLimit=10
syncLimit=5
dataDir=/home/fld/zookeeper-3.4.6/data1
dataLogDir=/home/fld/zookeeper-3.4.6/logs1
clientPort=2182
server.0=127.0.0.1:2887:3887
server.1=127.0.0.1:2888:3888
server.2=127.0.0.1:2889:3889

编辑配置文件conf/zoo_2.cfg:

tickTime=2000
initLimit=10
syncLimit=5
dataDir=/home/fld/zookeeper-3.4.6/data2
dataLogDir=/home/fld/zookeeper-3.4.6/logs2
clientPort=2183
server.0=127.0.0.1:2887:3887
server.1=127.0.0.1:2888:3888
server.2=127.0.0.1:2889:3889

创建myid文件,将相应的id写入myid文件

echo 0 > data0/myid
echo 1 > data1/myid
echo 2 > data2/myid

分别启动3个服务

bin/zkServer.sh start conf/zoo_0.cfg
bin/zkServer.sh start conf/zoo_1.cfg
bin/zkServer.sh start conf/zoo_2.cfg

###集群模式

集群模式和伪集群模式类似,分别将zookeeper-3.4.6.tar.gz拷贝到3台服务器上,并解压;

创建一个zoo.cfg

cd /home/fld/zookeeper-3.4.6
cp conf/zoo_sample.cfg conf/zoo.cfg

3台机器的配置文件zoo.cfg可以保持一样,编辑配置conf/zoo.cfg:

tickTime=2000
initLimit=10
syncLimit=5
dataDir=/home/fld/zookeeper-3.4.6/data
dataLogDir=/home/fld/zookeeper-3.4.6/logs
clientPort=2181
server.0=192.168.0.1:2888:3888
server.1=192.168.0.2:2888:3888
server.2=192.168.0.3:2888:3888

分别在3台机器的/home/fld/zookeeper-3.4.6下创建目录data,然后创建myid文件,里面内容填写对应的server id:

机器0:

mkdir data
echo 0 > data/myid

机器1:

mkdir data
echo 1 > data/myid

机器2:

mkdir data
echo 2 > data/myid

分布在3台机器上启动zookeeper:

/home/fld/zookeeper-3.4.6/bin/zkServer.sh start