首先默认所有机器已安装JDK,具体可参考https://arithstar.com/?p=68
下载zookeeper安装包、解压
#下载
wget http://archive.apache.org/dist/zookeeper/stable/zookeeper-3.4.12.tar.gz
#解压
tar -zxvf zookeeper-3.4.12.tar.gz
创建必要文件
cd到zookeeper目录下
#创建data文件夹
mkdir data
#创建dataLog文件夹
mkdir dataLog
cd data
#将机器号存到myid文件中(每个机器不同的机器号)
echo 1 > myid
配置zoo.cfg
#移到config文件夹
cd /usr/local/zookeeper/zk/conf
#将里面的样本配置文件复制一份
cp zoo_sample.conf zoo.cfg
#编辑zoo.cfg文件
vim zoo.cfg
#修改或添加以下内容
tickTime=2000
initLimit=10
syncLimit=5
clientPort=2181
dataDir=/usr/local/zookeeper/zk/data
dataLogDir=/usr/local/zookeeper/zk/dataLog
server.1=192.168.66.61:2888:2889
server.2=192.168.66.62:2888:2889
server.3=192.168.66.63:2888:2889
(说明:server.X,这个X值即为集群机器中myid
文件中的值;后面的IP即为集群机器的IP,后面的两个端口号依次为集群中节点交换信息的端口、重新选举Leader的通信端口)
启动zookeeper
Zookeeper集群的启动,需要进入各个节点单独启动。进入Zookeeper的/bin
目录下执行命令 ./zkServer.sh start
即可启动服务。然后执行命令./zkServer.sh status
查看服务状态并可以看到当前节点是leader(主)节点还是follower(从)节点。
如果启动失败,可以查看/bin目录下启动生成的日志文件zookeeper.out,看失败的原因是什么,然后对症下药调整。(常见的失败原因有:防火墙未关闭、配置文件未创建、数据目录未创建、myid文件未创建或创建有误等)