zookeeper(2)—— 了解Zookeeper

一、下载

下载Zookeeper,版本是zookeeper-3.4.14

链接:https://pan.baidu.com/s/1FKGOQWyiVzqhTzcN47QkPQ 
提取码:1234 

解压到自己的硬盘下,比如

二、目录结构

bin                 存放系统脚本(zkServer.cmd是服务器启动脚本,默认端口2181,zkCli.cmd是客户端启动脚本)
conf               存放配置文件

contrib           zk附加功能支持
dist-maven    maven仓库文件
docs              zk文档
lib                  依赖的第三方库
recipes          经典场景样例代码
src                 zk源码

三、概念

常用概念:会话、数据节点,版本,WatcherACL 权限控制,集群角色

3.1 会话

       客户端与服务端的一次会话连接,本质是TCP长连接,通过会话可以进行心跳检测和数据传输

       Zk客户端和服务端成功连接后,就创建了一次会话,ZK 会话在整个运行期间的生命周期中,会在不同的会话状态之间切换,这些状态包括: CONNECTING、CONNECTED、RECONNECTING、RECONNECTED、CLOSE

      一旦客户端开始创建 Zookeeper 对象,那么客户端状态就会变成 CONNECTING 状态, 同时客户端开始尝试连接服务端,连接成功后,客户端状态变为 CONNECTED

      通常情况下,由于断网或其他原因,客户端与服务端之间会出现断开情况,一旦碰到这种情况, Zookeeper 客户端会自动进行重连服务,同时客户端状态再次变成 CONNCTING,直到重新连上服务端后,状态又变为CONNECTED

      一般来说,客户端的状态总是介于 CONNECTING 和CONNECTED 之间。但是,如果出现诸如会话超时、权限检查或是客户端主动退出程序等情况,客户端的状态就会直接变更为CLOSE 状态

3.2 数据节点

ZooKeeper 的视图结构和标准的 Unix 文件系统类似,其中每个节点称为“数据节点”或 ZNode, 每个znode 可以存储数据,还可以挂载子节点,因此可以称之为“树”

ZNode节点类型分为两种

临时 : Create  -e  /app  “test1”

持久:  Create  /app  “test2”

还有临时有序、持久有序,创建时加-s,顺序号为单调递增,不能指定

区别:

  1. 临时节点,客户端一段断开连接,zk就会删除临时节点
  2. 临时节点不能创建子节点

节点属性:

3.3 ACL权限控制

ACL机制,保障数据安全,表示为 scheme:id:permissions

scheme代表授权策略        

id 代表用户         

permissions 代表权限(如只读,读写,管理等)

3.3.1 scheme

world:默认方式,相当于全世界都能访问 
auth:代表已经认证通过的用户(可以通过 addauth digest user:pwd 来添加授权用户) 
digest:即用户名:密码这种方式认证,这也是业务系统中最常用的 
ip:使用 Ip 地址认证

3.3.2 id

id 是验证模式,不同的 scheme,id 的值也不一样。
scheme为world时,anyone
scheme为auth时:username:password 
scheme为digest时: username:BASE64(SHA1(password)) 
scheme为ip时:客户端的 ip 地址。

3.3.3 permissions

CREATE、READ、WRITE、DELETE、ADMIN 也就是 增、删、改、查、管理权限,这 5 种权限 
简写为 crwda(即:每个单词的首字符缩写) 
CREATE(c):创建子节点的权限 
DELETE(d):删除节点的权限 
READ(r):读取节点数据的权限 
WRITE(w):修改节点数据的权限ADMIN(a):设置子节点权限的权限

3.3.4 常用命令

getAcl  节点:获取节点的权限

setAcl  节点:设置节点权限

addauth 添加用户

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值