安装前要先确保配置好 jdk,这里不在讲述
一、 将zookeeper 安装包下载到你想要的目录
下载地址:http://mirrors.hust.edu.cn/apache/zookeeper/
mkdir /program cd /program wget http://mirrors.hust.edu.cn/apache/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz
二、 解压 zookeeper ,并更改名字
tar -zxvf zookeeper-3.4.6.tar.gz mv zookeeper-3.4.6 zookeeper
三、 创建 zookeeper 数据文件及日志目录
http://zookeeper.apache.org/doc/trunk/zookeeperStarted.html#sc_RunningReplicatedZooKeeper
zookeeper 文档中有句话提到,要获得更低的延迟,一个专门的事务日志目录是需要的,因此我们需要为事务日志专门指定一个目录
To get low latencies on updates it is important to have a dedicated transaction log directory. By default transaction logs are put in the same directory as the data snapshots and myid file. The dataLogDir parameters indicates a different directory to use for the transaction logs.
mkdir /program/usrData/zkDir/ zkData mkdir /program/usrData/zkDir/ logData
四、 将conf/zoo_sample.cfg复制为 conf/zoo.cfg 文件,并修改
tickTime=2000 initLimit=10 syncLimit=5 dataDir=/program/usrData/zkDir/zkData dataLogDir=/program/usrData/zkDir/logData clientPort=2181 server.1=hap01:2888:3888 server.2=hap02:2888:3888 server.3=hap03:2888:3888
五、 将 zookeeper 复制到集群的各个机器中,注意相关文件夹的创建
scp -r zookeeper/ root@hap01:/program/ scp -r zookeeper/ root@hap02:/program/ scp -r zookeeper/ root@hap03:/program/
六、 设置 zookeeper myid
在 dataDir 配置的路径下,新建myid 文件,内容为 server id 的数字
hap01 -> 1 hap02 -> 2 hap03 -> 3
七、 在各个机器上配置环境变量
#zookeeper export ZOOKEEPER_HOME=/program/zookeeper export ZOO_LOG_DIR=$ZOOKEEPER_HOME/logs export CLASSPATH=$CLASSPATH:$ZOOKEEPER_HOME/lib export PATH=$PATH:$ZOOKEEPER_HOME/bin
八、 配置 hosts
#zookeeper 192.168.0.101 hap01 192.168.0.102 hap02 192.168.0.103 hap03
九、 在各个机器上运行命令,启动 zookeeper 集群
zkServer.sh start可通过 ZOOKEEPER_HOME/logs/zookeeper.out 查看日志
十、 查看机器运行状态
zkServer.sh status
十一、 连接 zookeeper 测试
zkCli.sh -server hap01:2181
十二、 退出 client
quit