1命令
登录
 zkCli.sh -server  192.168.58.81:2128   登录ip
 zkCli.sh        登录本机
 关闭会话   close
 帮助文档    help
让zk数据发生变化都是一次事务
create创建
 create /aaa  创建持久节点
 create  -e  /aaa/bbb  创建临时节点
 create   /aaa/bbb/ccc  不能创建成功 因为bbb是临时节点
 create  -s  /aaa/bbb      可以多次执行 create  -s  /aaa/bbb     创建有序节点
 create   -e   -s  /aaa/bbb 
 ls     /aaa         查看
 ls      -R     /aaa   递归查看
 ls   -s    /aaa     查看节点详情 == get -s /aaa
 quit  退出     zkCli.sh 在连接上查看节点发现临时节点没了 
ls   -s    /aaa
 mzxid 更新id  mtime更新时间
 dataVersion  版本修改次数
 ephemeralOwner = 0x0都是持久化
 创建临时节点再查看临时节点
 ephemeralOwner = 0xasgagaar   有临时
ls -w /aaa  监控节点  另一个窗口create /aaa/bbb(只监控一次)如何长期监控?
 第一个窗口
 WATCHER::
WatchedEvent state:SyncConnected type:NodeChildrenChanged path:/aaa
 set   /aaa   hellow
 get   /aaa 
 get -s /aaa 查看节点详情=ls -s /aaa
get -s /aaa比ls -s /aaa 查出的结果就多一个节点值
zk-1                                  zk-2
 get -w /aaa              set  /aaa  hellow       只监控一次   (省资源 )
 ls  -w  /aaa              create  /aaa/wowo      只监控一次(省资源 )
设置节点值
get -s /aaa 节点
set -v (dataVersion版本号) /aaa 节点值

验证版本号并删除节点
delete -v (dataVersion版本号) /aaa
不验证节点直接删除节点
 delete  /aaa/wowo 
 删除路径及所有子节点
 deleteall     /aaa
stat查看节点的状态
 stat  /aaa
2 zk权限控制
acl格式:
         授权策略                  对象                权限
            world                 anyone              r=read 可以查看
           ip                             ip             w=write 可以改变
         auth                         用户          c=create  可以创建子节点 
      digest                                           d=delete  可以删除 
                                                           a=admin  管理员 权限管理
/aaa 根目录下主节点
world 全部
getAcl    /aaa     获取aaa权限信息
 setAcl    /aaa world:anyone:cdwra      设置aaa权限信息
 c   创建节点   create  /aaa/bbb
 d  删除   delete /aaa/bbb
 w    写   set   /aaa  niganma
 r    读     查看节点   ls  -s /aaa
 a   管理员权限  这个一取消,啥也干不了了
不要那个权限就不加那个权限:
不要创建权限 setAcl /aaa world:anyone:cdwra
IP
设置ip才能对aaa操作 只有用这个ip且本机ip是这个ip登录,才能操作
setAcl /aaa ip:192.168.58.82:crdwa
auth 用户
用户:密码
addauth digest user:liu 添加用户密码
setAcl /aaa auth:user:cdwra 把aaa节点权限给用户
get /aaa 查不出
quit退出 再连接(登录)进去
addauth digest user:liu1 密码或者账号输错
get /aaa 查不出
addauth digest user:liu 认证密码账号正确
get /aaa 能查出
--------------------------------------
digest
1
create /bbb        66       world: anyone: crwa  创建节点并赋值,改权限
 get  /bbb       查值
getAcl /bbb 查权限
2
认证用户
addauth digest user:liu
create /ccc 66 auth:user1:crwad 创建节点并赋值并把这个节点权限给user用户
退出后还得认证addauth digest user:liu 才可以
3 控制zk中每个节点访问权限(每个权限控制只对当前节点有效)
setAcl /aaa worle:anyone:a 只有aaa是这个权限,子节点还是原来的权限
递归赋权
setAcl -R /aaa worle:anyone:a aaa下的节点都是这个权限
4 sertquota
三个配额
setquota -n 3 /aaa aaa节点下再创建两个(包含本身节点的话是三个)节点后会有警报,但是还能继续创建
listquota /aaa 查配额
另一个窗口
tail -f /usr/zookeeper/logs/zookeeper-root-server-cluster1.out









![[数据集][目标检测]直肠息肉病变检测数据集VOC+YOLO格式10725张6类别](https://i-blog.csdnimg.cn/direct/ece2e3c5807c40bebaf4636402a851cc.png)









