问题导读
一、说说ACL 权限控制机制?
二、Chroot 特性?
三、会话管理?
01
说说ACL 权限控制机制?
正经回答:
UGO(User/Group/Others)
目前在 Linux/Unix 文件系统中使用,也是使用最广泛的权限控制方式。是一 种粗粒度的文件系统权限控制模式。
ACL(Access Control List)访问控制列表
包括三个方面:
权限模式(Scheme)
(1)IP:从 IP 地址粒度进行权限控制
(2)Digest:最常用,用类似于 username:password 的权限标识来进行权限 配置,便于区分不同应用来进行权限控制
(3)World:最开放的权限控制方式,是一种特殊的 digest 模式,只有一个 权限标识“world:anyone”
(4)Super:超级用户
授权对象
授权对象指的是权限赋予的用户或一个指定实体,例如 IP 地址或是机器灯。
权限Permission
(1)CREATE:数据节点创建权限,允许授权对象在该 Znode 下创建子节点
(2)DELETE:子节点删除权限,允许授权对象删除该数据节点的子节点
(3)READ:数据节点的读取权限,允许授权对象访问该数据节点并读取其数据 内容或子节点列表等
(4)WRITE:数据节点更新权限,允许授权对象对该数据节点进行更新操作
(5)ADMIN:数据节点管理权限,允许授权对象对该数据节点进行 ACL 相关设置操作
分享朋友圈,每天进步一点点~
02
Chroot 特性?
正经回答:
3.2.0 版本后,添加了 Chroot 特性,该特性允许每个客户端为自己设置一个 命名空间。如果一个客户端设置了 Chroot,那么该客户端对服务器的任何操 作,都将会被限制在其自己的命名空间下。
通过设置 Chroot,能够将一个客户端应用于 Zookeeper 服务端的一颗子树相 对应,在那些多个应用公用一个 Zookeeper 进群的场景下,对实现不同应用间 的相互隔离非常有帮助。
03
会话管理?
正经回答:
分桶策略:
将类似的会话放在同一区块中进行管理,以便于 Zookeeper 对会话 进行不同区块的隔离处理以及同一区块的统一处理。
分配原则:每个会话的“下次超时时间点”(ExpirationTime)
计算公式:
ExpirationTime_ = currentTime sessionTimeout
ExpirationTime = (ExpirationTime_ / ExpirationInrerval 1) *
ExpirationInterval , ExpirationInterval 是指 Zookeeper 会话超时检查时 间间隔,默认tickTime
- End -