目录结构
示例版本: zookeeper3.4.14
下载地址: http://mirrors.hust.edu.cn/apache/zookeeper/zookeeper-3.4.14/
- bin目录
该目录下包含主要运行的命令
以.cmd结尾的是在windows运行的命令
以.sh结尾的是在linux运行的命令
zkCleanup.sh 清理zookeeper历史数据 -包括事务日志文件和快照数据文件 ,但是实际生产环境中很少使用,因为zookeeper从3.0版本之后提供了对历史事务日志和快照文件的自动清理
zkCli.cmd window系统连接zk客户端的命令
zkCli.sh linux系统连接zk客户端的命令
zkEnv.cmd winsows系统下设置zookeeper启动时的环境变量 这个脚本不要单独执行,它需要嵌入到zkServer.sh或者其他脚本中使用
zkEnv.sh linux系统下对应设置环境变量的操作
zkServer.cmd windows系统启动服务端的命令
zkServer.sh linux系统启动服务端的命令
zkTxnLogToolkit.cmd
zkTxnLogToolkit.sh
- conf目录
该目录下存放配置文件,其中有我们需要修改zoo.cfg
configuration.xsl
log4j.properties
zoo.cfg
- data
这是新建的文件夹,用于存放数据
- dist-maven
该目录下包含maven编译后的jar,pom等
- lib
zookeeper需要依赖的jar包
- log
这是新建的文件夹,用于存放zookeeper日志信息
- src
包含zookeeper的源码
- zookeeper-client
包含zookeeper客户端的源码
- zookeeper-contrib
包含zookeeper案例 demo的代码
- zookeeper-docs
该目录下包含一些帮助文档
- zookeeper-it
包含zookeeper项目测试的细节及步骤
- zookeeper-jute
包含实现zookeeper序列化和反序列化的源码
- zookeeper-recipes
该目录下包含一些附加的功能
- zookeeper-server
该目录下包含一些服务端的测试样例代码
zoo.cfg
# CS通信心跳时间
tickTime=2000
# 集群中的follower服务器(F)与leader服务器(L)之间初始连接时能容忍的最多心跳数(tickTime的数量)
initLimit=10
# 集群中flower服务器(F)跟leader(L)服务器之间的请求和答应最多能容忍的心跳数
syncLimit=5
# zookeeper存储数据的目录
dataDir=D:\\enviroment\\zookeeper-3.4.14\\data
# zookeeper存储日志的目录
dataLogDir=D:\\enviroment\\zookeeper-3.4.14\\log
# 绑定的zk端口
clientPort=2181
# 单个客户端与单台服务器之间的连接数的限制,是ip级别的,默认是60,如果设置为0,那么表明不作任何限制
maxClientCnxns=60
# 这个参数和下面的参数搭配使用,这个参数指定了需要保留的文件数目。默认是保留3个
autopurge.snapRetainCount=3
# ZK提供了自动清理事务日志和快照文件的功能,这个参数指定了清理频率,单位是小时,需要配置一个1或更大的整数,默认是0,表示不开启自动清理功能
autopurge.purgeInterval=1
zCli.cmd 客户端命令
1.ls -- 查看某个目录包含的所有文件,例如:
[zk: 127.0.0.1:2181(CONNECTED) 1] ls /
2.ls2 -- 查看某个目录包含的所有文件,与ls不同的是它查看到time、version等信息,例如:
[zk: 127.0.0.1:2181(CONNECTED) 1] ls2 /
3.create -- 创建znode,并设置初始内容,例如:
[zk: 127.0.0.1:2181(CONNECTED) 1] create /test "test"
Created /test
创建一个新的 znode节点“ test ”以及与它关联的字符串
4.get -- 获取znode的数据,如下:
[zk: 127.0.0.1:2181(CONNECTED) 1] get /test
5.set -- 修改znode内容,例如:
[zk: 127.0.0.1:2181(CONNECTED) 1] set /test "ricky"
6.delete -- 删除znode,例如:
[zk: 127.0.0.1:2181(CONNECTED) 1] delete /test
7.quit -- 退出客户端
8.help -- 帮助命令
学习Java的同学注意了!!!
学习过程中遇到什么问题或者想获取学习资源的话,欢迎加入Java学习交流群,群号码:543120397 我们一起学Java!