三台服务器:
master
slaver1
slaver2
下载:wget http://archive.apache.org/dist/zookeeper/zookeeper-3.7.0/apache-zookeeper-3.7.0-bin.tar.gz

(1)解压Zookeeper安装包到/opt/module/目录下

tar -zxvf apache-zookeeper-3.7.0-bin.tar.gz -C /opt/module/

(2)将/opt/module/apache-zookeeper-3.7.0-bin/conf这个路径下的zoo_sample.cfg修改为zoo.cfg

cd /opt/module/apache-zookeeper-3.7.0-bin/conf
cp zoo_sample.cfg zoo.cfg

(3)在/opt/module/apache-zookeeper-3.7.0-bin/这个目录上创建zkData文件夹

cd /opt/module/apache-zookeeper-3.7.0-bin/
mkdir zkData

(4)在/opt/module/apache-zookeeper-3.7.0-bin/zkData目录下创建一个myid的文件,并编辑文件,在文件中添加与server对应的编号

cd /opt/module/apache-zookeeper-3.7.0-bin/zkData
touch myid
vi myid
0

(5)打开zoo.cfg文件,修改dataDir路径:

cd /opt/module/apache-zookeeper-3.7.0-bin/conf
vim zoo.cfg
dataDir=/opt/module/apache-zookeeper-3.7.0-bin/zkData #######################cluster##########################
server.0=master:2888:3888
server.1=slaver1:2888:3888
server.2=slaver2:2888:3888

(6)将配置好的文件传送到其他两台机器上

scp -rp /opt/module/apache-zookeeper-3.7.0-bin/ root@slaver1:/opt/module/
scp -rp /opt/module/apache-zookeeper-3.7.0-bin/ root@slaver2:/opt/module/

(7)修改slave1和slave2的myid文件

(8)分别启动Zookeeper

/opt/module/apache-zookeeper-3.7.0-bin/bin/zkServer.sh start

/opt/module/apache-zookeeper-3.7.0-bin/bin/zkServer.sh status

(9)启动客户端

cd /opt/module/apache-zookeeper-3.7.0-bin/bin
./zkCli.sh

显示所有操作命令
help
查看当前znode中所包含的内容
ls /
分别创建2个普通节点
create /sanguo “jinlian”
create /sanguo/shuguo “liubei”
获得节点的值
get /sanguo/shuguo

(10)其他操作

创建短暂节点

create -e /sanguo/wuguo “zhouyu”
(1)在当前客户端是能查看到的 ls /sanguo
(2)退出当前客户端然后再重启客户端 quit bin/zkCli.sh
(3)再次查看根目录下短暂节点已经删除 ls /sanguo

创建带序号的节点

(1)先创建一个普通的根节点/sanguo/weiguo create /sanguo/weiguo “caocao”
(2)创建带序号的节点 create -s /sanguo/weiguo/xiaoqiao “jinlian” 如果原来没有序号节点,序号从0开始依次递增。如果原节点下已有2个节点,则再排序时从2开始,以此类推。

修改节点数据值

set /sanguo/weiguo “simayi”

节点的值变化监听

在slave2主机上注册监听/sanguo节点数据变化 get /sanguo watch 在slave1主机上修改/sanguo节点的数据 观察slave2主机收到数据变化的监听 set /sanguo “xisi”

删除节点
delete /sanguo/jin
递归删除节点
rmr /sanguo/shuguo
查看节点状态
stat /sanguo ```c