Zookeeper-3.5.7集群安装
注意:Zookeeper在3.5.5版本之后,下载带.bin后缀的文件
解压安装
# 把Zookeeper压缩包上传到Downloads文件夹内
$ cd ~/Downloads
$ rz
$ sudo tar -zxf ./apache-zookeeper-3.5.7-bin.tar.gz -C /usr/local
$ cd /usr/local
# 改名方便配置
$ sudo mv ./apache-zookeeper-3.5.7-bin/ ./zookeeper
$ sudo chown -R qinphy ./zookeeper
配置
先建立配置必要的文件及文件夹
$ cd /usr/local/zookeeper
$ mkdir data
$ mkdir dataLog
$ cd ./data
$ touch myid
配置zoo.cfg主要配置文件
$ cd /usr/local/zookeeper/conf
$ cp ./zoo_sample.cfg ./zoo.cfg
$ rm -f ./zoo_sample.cfg
$ vi zoo.cfg
Zoo.cfg配置内容
dataDir=/usr/local/zookeeper/data dataLogDir=/usr/local/zookeeper/dataLog server.1=Master:2888:3888 server.2=Slave1:2888:3888 server.3=Slave2:2888:3888
转移到其他结点安装
$ cd /usr/local
$ sudo tar -zcf ~/zookeeper.master.tar.gz ./zookeeper
$ cd ~
$ scp ./zookeeper.master.tar.gz Slave1:/home/qinphy
$ scp ./zookeeper.master.tar.gz Slave2:/home/qinphy
转到其他结点解压
$ sudo tar -zxf ./zookeeper.master.tar.gz -C /usr/local
$ sudo chown -R qinphy /usr/local/zookeeper
修改每个结点的myid文件,对应zoo.cfg内的server.x
$ cd /usr/local/zookeeper/data
$ vi myid
# Master
1
# Slave1
2
# Slave2
3
环境变量配置
# 每个结点都要配置
$ vi ~/.bashrc
export PATH=$PATH:/usr/local/zookeeper/bin
$ source ~/.bashrc
启动与关闭
# 每个结点都有
$ zkServer.sh start
# 观察结点关系
$ zkServer.sh status
$ zkServer.sh stop
观察结果:
$ zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
# 有一个是leader
$ zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost.
Mode: leader
# 其余是follower
$ zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost.
Mode: follower