工作生活

Zookeeper | 基本操作

2019-07-04  本文已影响0人  icebreakeros

基本操作

ZooKeeper的结构类似于树,树中的节点成为Znode
Znode负责数据的管理,并且执行协调更新操作
ZooKeeper存在临时节点,这些节点与session同时存在
可以为每个节点添加一个“监控”(Watcher),当节点的状态发生改变时,用“监控”触发某个事件

zookeeper的目录结构

基础命令

zkCli.sh -server 192.168.219.53:2181

# 关于基本命令
# -s表示创建序列节点,-e表示创建临时节点,在一个session内有效
create [-s] [-e] path data acl    
get path [watch]
set path data [version]
stat path [watch]
ls path [watch]
ls2 path [watch]
delete path [version]  # 只可删除不带子节点的节点
rmr path # 递归删除

# 关于配额命令
# 设置配额 -n限制子节点个数 -b限制数据值的长度
setquota -n|-b val path         
listquota path
delquota [-n|-b] path

# 关于其他命令
sync path
history
redo cmdno
quit
printwatches on|off
connect host:port
close

ACL访问控制列表

zookeeper每个节点都会带一个acl的列表,用于决定用户可以操作的类型
create | read | write | delete | admin

setAcl path acl                 #
getAcl path
addauth scheme auth

zookeeper算法

zookeeper的实现主要采用了原子广播(ZooKeeper Atomaic Broadcast,简称Zab)协议

原子广播

zookeeper中服务器的状态

选举过程
核心思想:由某个新加入集群的服务器发起一次选举,如果该服务器获得n/2+1个票数,那么它将成为leader

zookeeper领导者选举的实现方式

上一篇下一篇

猜你喜欢

热点阅读