美文网首页
zooKeeper相关学习笔记(一)

zooKeeper相关学习笔记(一)

作者: NealLemon | 来源:发表于2019-07-23 16:52 被阅读0次

数据模型

归根结底,就是一个树形结构。

  • 可以理解为前端的tree.js组件。
  • 也可以理解为linux下的文件目录结构: usr/local usr/etc
  • 每个节点称为 znode ,可以有子节点,也可以有数据。
  • 每个节点分为永久节点和临时节点,临时节点在session断开后消失。
  • 每个节点都有各自的版本号,当节点发生变化时,版本号会累加。
  • 删除/修改 过时的节点,版本号不匹配会报错。
  • 每个ZK数据节点不易过大,几K即可。
  • 节点可以设置权限。

作用

  • master节点选举: 首脑模式,主节点挂了之后,会选举从节点接受工作,并保证这个节点是唯一的。从而保证集群的高可用。
  • 统一配置文件管理。
  • 发布订阅:发布者把数据发布到固定znode上,订阅者会读取这个数据。
  • 分布式锁。
  • 集群管理。

操作命令

  • ls /znode1 查看znode1下的所有子节点。
  • ls2 /znode1 查看znode1的节点信息。
  • create 创建节点命令
    • create -s /node1 data1 创建序列节点 node1 存放数据 data1
    • create -e /node2 data2 创建临时节点 node2 存放数据 data2
  • delete 节点 【版本号】 删除 : delete /node1 1
  • set 节点 【版本号】更新 : set /node1 newdata 1

watcher

  • 每个节点的操作,都有一个监听者---watcher

  • 当某个节点发生变化,出发watcher事件

    • 节点创建事件:NodeCreated
    • 节点删除事件:NodeDataChanged
    • 节点数据变化事件:NodeDeleted
    • 子节点创建/删除事件:NodeChildrenChanged
  • 在原客户端下,watcher机制是一次性的,出发后立即销毁。

使用场景

  • 统一资源配置

ACL权限

  • getAcl:获取某个节点的acl权限信息。 例如 :getAcl /test/test1
  • setAcl:设置某个节点的acl权限信息。 例如: setAcl /test/test1 digest:username:password:cdrwa
  • addauth:输入认证授权信息,注册时输入明文密码(登录)但是在zk的系统里,密码是以加密的形式存在的。 例如: addauth digest username:password

构成

[scheme: id : permissions]

scheme:代表采用的某种权限机制。

id : 代表允许访问的用户。

permissions : 权限组合字符串。

权限类别

权限.png

scheme构成

scheme.png

permissions 构成

permission.png

ACL 详解

ACL详解.png super.png

使用场景

  • 开发/测试/生产 环境区分

四字命令

原文链接

fourletter.png

相关文章

网友评论

      本文标题:zooKeeper相关学习笔记(一)

      本文链接:https://www.haomeiwen.com/subject/kisalctx.html