ZooKeeper Standalone模式(单点模式)
1. 下载安装包
2.解压: tar -zxvf zookeeper-3.5.1.tar.gz
3.
将zookeeper-3.5.1/conf/目录下的zoo_sample.cfg修改为zoo.cfg,配置如下:
- tickTime=2000
- dataDir=/home/zookeeper/data
- clientPort=2181
- admin.ServerPort=2333
- initLimit=5
- syncLimit=2
4.进入bin目录,开启服务;
./zkServer.sh start (开启)
./zkServer.sh stop (关闭)
ZooKeeper Distributed模式(集群模式)
在三台机器上同时进行:
1. 下载安装包
2.解压: tar -zxvf zookeeper-3.5.1.tar.gz
3.
将zookeeper-3.5.1/conf/目录下的zoo_sample.cfg修改为zoo.cfg,配置如下:
- tickTime=2000
- dataDir=/home/zookeeper/data
- clientPort=2181
- admin.ServerPort=2333
- initLimit=5
- syncLimit=2
- server.1=192.168.1.13:2888:3888
- server.2=192.168.1.16:2888:3888
- server.3=192.168.1.17:2888:3888
4.
在我们配置的dataDir指定的目录下面,创建一个myid文件,里面内容为一个数字,用来标识当前主机,conf/zoo.cfg文件中配置的server.X中X为什么数字,则myid文件中就输入这个数字;
echo "1" > myid ;echo "2" > myid ;echo "3" > myid
5.进入bin目录,开启服务;
./zkServer.sh start (开启)
./zkServer.sh stop (关闭)
6.可以通过ZooKeeper的脚本来查看启动状态,包括集群中各个结点的角色(或是Leader,或是Follower)
./zkServer.sh status
启动命令:
bin/zkCli.sh -server 192.168.1.17:2181
显示根目录下、文件:
ls /
创建文件,并设置初始内容:
create /jxl hello
获取文件内容:
get /jxl
修改文件内容:
set /jxl hello, world
删除文件:
delete /jxl
退出客户端:
quit
在删除文件之前,查看另外两台服务器上的zookeeper能不能查看到刚创建的文件,如能查看则表明集群创建成功。
当leader服务器宕机之后,集群会自动选举新的leader,而当宕机的主机启动后不会成为leader,新leader保持不变。