Zookeeper基础命令
一、 事件监听
在 ZooKeeper 中,可以通过注册事件监听器来监视 ZNode 的状态变化和节点的子节点变化
1. stat -w path
1 # NodeCreated 创建 2 # NodeDataChanged 修改 3 # NodeDeleted 删除 4 stat -w path
2. ls -w paht
1 # NodeDeleted 删除 2 ls -w path
3. get -w /node
1 get -w /node 2 # NodeDataChanged 修改 3 set /node change
4 # NodeDeleted 删除
5 delete /node
二、权限命令
1. 新增/登录用户
1 # addauth digest 账号:密码 2 addauth digest test:test
2. 创建节点时指定权限
1 # create path value [acl] 2 #[acl]--> auth::crwda,登录状态下的简写 3 #crwda--> create, read, write, delete, admin 4 create /acl-node ddd auth::crwda
ACL构成:
[schema: id : permissions]
schema 权限机制
-
world: 配置下只有一个id,就是anyone,组合写法:[world: anyone : permissions]
-
auth: 认证登录,需要有一个注册的用户 ,格式: auth:user:password:permissions
-
digest: 和auth是差不多的,但是在设置密码的时候必须是密文. Base64(sha1(password))
比如:create /acl-node ddddssss digest:test:xBgKhNNC8TTZv/YLTAC801hGjzs=:cdrwa
-
ip: 进行IP的访问限制 ,格式: ip:ip地址:权限
-
super: 超级管理员.
cdrwa: 【permissions】
ip为例
1 [zk: localhost:2181(CONNECTED) 12] create /acl-node test ip:127.0.0.1:cdrwa 2 Created /acl-node 3 [zk: localhost:2181(CONNECTED) 13] getAcl /acl-node 4 'ip,'127.0.0.1 5 : cdrwa
使用另一台服务器访问
1 [zk: localhost:2181(CONNECTED) 5] ls / 2 [acl-node, node, test, zookeeper] 3 [zk: localhost:2181(CONNECTED) 6] get /acl-node 4 Insufficient permission : /acl-node
3. 查看节点权限
1 getAcl /acl-node
#输出: 2 'digest,'mike:xBgKhNNC8TTZv/YLTAC801hGjzs= 3 : cdrwa
4. 修改权限
1 setAcl /acl-node world:anyone:cdrwa
如果该文章对你有所帮助,请点个赞支持下,谢谢!