简介
本文主要介绍Zookeeper集群的安装和配置
下载zookeeper
到ZooKeeper官网上http://zookeeper.apache.org/下载软件包
下载及解压就不在赘述
配置zookeeper_home及path
vim /etc/profile
在profile中增加zookeeper_home的路径
#ZOOKEEPER_HOME
export ZOOKEEPER_HOME=/home/spark/zookeeper/zookeeper-3.4.6
export PATH=$PATH:$ZOOKEEPER_HOME/bin
ps:记着执行source /etc/profile,让profile的修改生效
配置zoo.cfg
cd $ZOOKEEPER_HOME/conf
cp zoo_sample.cfg zoo.cfg
复制一份conf文件夹下的zoo_sample.cfg文件,然后修改或添加以下内容.
# The number of milliseconds of each tick
tickTime=2000
# The number of ticks that the initial
# synchronization phase can take
initLimit=5
# The number of ticks that can pass between
# sending a request and getting an acknowledgement
syncLimit=2
# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just
# example sakes.
dataDir=/home/spark/zookeeper/zookeeper-3.4.6/data
dataLogDir=/home/spark/zookeeper/zookeeper-3.4.6/logs
# the port at which the clients will connect
clientPort=2181
# the maximum number of client connections.
# increase this if you need to handle more clients
#maxClientCnxns=60
server.1=master:2888:3888
server.2=node1:2888:3888
server.3=node2:2888:3888
这里参考官网的配置,master/node1/node2分别为安装zookeeper的节点
我们添加了两个文件路径,dataDir和dataLogDir,这两个文件夹本身是不存在的,需要自己创建.
配置myid
集群模式下还要配置一个文件myid,这个文件在dataDir目录下.
例如我们的master节点在zoo.cfg中配置为server.1=master:2888:3888,因此vim一个myid的文件,写入1即可
发送zookeeper到其他节点
使用scp将在master上配置好的zookeeper发送到其他的节点.
scp -r /home/spark/zookeeper root@node1:/home/spark
发送完毕后记着修改其他节点的myid文件.
启动zookeeper
在#ZOOKEEPER_HOME/bin目录下执行,zkServer.sh start
cd $ZOOKEEPER_HOME/bin
./zkServer.sh start
返回信息为:
JMX enabled by default
Using config: /home/spark/zookeeper/zookeeper-3.4.6/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
启动其他节点的zookeeper.通过如下指令可以查看当前的zookeeper的状态
./zkServer.sh stats
我的集群node1为leader,master及node2为follower.