https://archive.apache.org/dist/zookeeper/
tar -xvf apache-zookeeper-3.5.5.tar.gz
rm -rf apache-zookeeper-3.5.5.tar.gz
mv apache-zookeeper-3.5.5 zookeeper
export ZOOKEEPER_HOME=/usr/local/zookeeper
export PATH=$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin:$PATH
source /etc/profile
配置ZooKeepercd /usr/local/zookeeper/conf
mv zoo_sample.cfg zoo.cfg
mkdir /usr/local/zookeeper/data
数据库
vi zoo.cfg
zoo.cfg文件中内容以下
tickTime=2000
dataDir=/usr/local/zookeeper/data
clientPort=2181
tickTime:心跳时间,为了确保链接存在的,以毫秒为单位,最小超时时间为两个心跳时间
initLimit:多少个心跳时间内,容许其余server链接并初始化数据,若是ZooKeeper管理的数据较大,则应相应增大这个值
clientPort:服务的监听端口
dataDir:用于存放内存数据库快照的文件夹,同时用于集群的myid文件也存在这个文件夹里(注意:一个配置文件只能包含一个dataDir字样,即便它被注释掉了。)
dataLogDir:用于单独设置transaction log的目录,transaction log分离能够避免和普通log还有快照的竞争
syncLimit:多少个tickTime内,容许follower同步,若是follower落后太多,则会被丢弃。apache
server.A=B:C:D:
A是一个数字,表示这个是第几号服务器,B是这个服务器的ip地址
C第一个端口用来集群成员的信息交换,表示的是这个服务器与集群中的Leader服务器交换信息的端口
D是在leader挂掉时专门用来进行选举leader所用服务器
/usr/local/zookeeper/bin/zkServer.sh start /usr/local/zookeeper/conf/zoo.cfg
zkServer.sh status