安装及配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
   | cp $ZK_HOME/conf/{zoo_sample.cfg,zoo.cfg}
 
  tickTime=2000  initLimit=10  syncLimit=5  clientPort=2181  dataDir=${ZK_HOME}/data  ataLogDir=${ZK_HOME}/logs 
  server.1=zk_server_1:2888:3888 server.2=zk_server_2:2888:3888 server.3=zk_server_3:2888:3888
 
  echo 1 > ${dataDir}/myid
  | 
 
客户端操作
1 2 3 4 5 6 7 8 9 10 11 12
   | connect host:port    get path [watch]     ls path [watch]      ls2 path [watch]     set path data [version]  rmr path             create [-s] [-e] path data acl   stat path [watch]    listquota path       setAcl path acl      getAcl path          delete path [version] 
   | 
 
znode 节点类型
每个 znode 都有不同的生命周期,而生命周期长短取决于 znode 的节点类型.Zoookeeper 提供了如下4种节点类型:
| 节点类型 | 
特性 | 
创建方式 | 
| 持久节点 | 
会话关闭后,该节点仍然存在,可以创建子节点 | 
create <path> <data> | 
| 持久顺序节点 | 
在持久节点特性的基础上.节点名后缀为自增数字 | 
create -s <path> <data> | 
| 临时节点 | 
会话关闭后,该节点不存在,不可以创建子节点 | 
create -e <path> <data> | 
| 临时顺序节点 | 
在临时节点特性的基础上,节点名后缀为自增数字 | 
create -s -e <path> <data> | 
ACL 访问控制列表
ZooKeeper 提供了一套完善的 ACL 权限控制机制保障数据安全性.其实 ACL 规则由Scheme:id:permission格式组成,其中,对于身份认证,提供了以下几种方式:
| 身份认证方式 | 
解释 | 
| world | 
默认方式,所有用户都可无条件访问,组合形式为: world:anyone:[permissions] | 
| digest | 
用户名:密码认证方式,最常用.组合形式为: digest:username:BASE64(SHA1(password)):[permissions] | 
| ip | 
对指定ip进行限制,组合形式为: ip:127.0.0.1:[permissions] | 
| auth | 
认证登录形式,需要用户获取权限后才可访问,组合形式为: auth:user:password:[permissions] | 
对于 znode 的 permissions 权限,提供了以下 5 种操作权限:
| 权限 | 
简写 | 
解释 | 
| CREATE | 
C | 
允许授权对象在当前节点下创建子节点 | 
| DELETE | 
D | 
允许授权对象在当前节点下删除子节点 | 
| WRITE | 
W | 
允许授权对象在当前节点进行更新操作 | 
| READ | 
R | 
允许授权对象在当前节点获取节点内容或获取子节点列表 | 
| ADMIN | 
A | 
允许授权对象对当前节点进行 ACL 相关的设置操作 | 
zookeeper 四字命令
1 2 3 4 5 6 7
   | echo conf | nc 192.168.0.68 2181  echo cons | nc 192.168.0.68 2181  echo envi | nc 192.168.0.68 2181  echo mntr | nc 192.168.0.68 2181  echo ruok | nc 192.168.0.68 2181  echo stat | nc 192.168.0.68 2181  echo wchs | nc 192.168.0.68 2181 
   |