Zookeeper 安装与基础命令操作
Part1 安装 ZK
下载安装包
PS: Mac 之前下载了 3.5.6 启动之后,报错
应该是 lib 下的 jar 包缺失,省的麻烦,我就直接下载了 3.4.14 版本
启动 ZkServer
执行 zk 的 bin 下面的启动脚本;例如
查看状态、停止 zk 服务
客户端连接 ZkServer
在这里插入图片描述
ls 查看命令
在这里插入图片描述
get 获取数据
get 和 stat 的区别是 get 比 stat 多返回了节点数据:
create 创建节点
create [-s] [-e] path data acl 可以注意一下各个版本的变化-s: 创建顺序节点 自动累加(全局累加)
-e:创建临时节点
set path data [version] 修改节点
根据版本号修改
delete path [version] 删除节点
delete 只能用来删除叶子节点,如果节点下有子节点的话则不能删除
rmr path
用来删除节点,与 delete 的区别是 delete 只能用来删除叶子节点,如果节点下有子节点的话则不能删除,则 rmr 可以删除非叶子节点,即节点下有子节点时仍可以删除节点,zk 中的 delete 类似于 Linux 下的 rmdir,只能用来删除空目录,而 rmr 则类似于 rm -rf,不管目录下面有什么都递归删除
1watch 通知机制
关于 watcher 机制大体的理解可以为,当每个节点发生变化,都会触发 watcher 事件,类似于 mysql 的触发器。zk 中 watcher 是一次性的,触发后立即销毁。可以参考https://blog.csdn.net/hohoo1990/article/details/78617336
stat path [watch]
设置 watch 事件get path [watch]
设置 watch 事件子节点创建和删除时触发 watch 事件,子节点修改不会触发该事件
stat path [watch] 设置 watch 事件
在这里插入图片描述
2ACL 权限控制
ZK 的节点有 5 种操作权限:CREATE
、READ
、WRITE
、DELETE
、ADMIN
也就是 增、删、改、查、管理权限,这 5 种权限简写为crwda
(即:每个单词的首字符缩写)。注:这 5 种权限中,delete
是指对子节点的删除权限,其它 4 种权限指对自身节点的操作权限
身份的认证有 4 种方式:
world
:默认方式,相当于全世界都能访问auth
:代表已经认证通过的用户(cli 中可以通过 addauth digest user:pwd 来添加当前上下文中的授权用户)digest
:即用户名:密码这种方式认证,这也是业务系统中最常用的ip
:使用 Ip 地址认证
使用[scheme:id:permissions]
来表示 acl 权限
getAcl:获取某个节点的 acl 权限信息
在这里插入图片描述
setAcl 设置权限
在这里插入图片描述
acl Auth 密码明文设置
acl digest 密码密文设置
acl ip 控制客户端
3 四字命令 Four Letter Words
使用四字命令需要安装
nc
命令,(yum install nc
)
stat 查看状态信息
ruok 查看 zookeeper 是否启动
dump 列出没有处理的节点,临时节点
conf 查看服务器配置
cons 显示连接到服务端的信息
envi 显示环境变量信息
mntr 查看 zk 的健康信息
wchs 展示 watch 的信息
wchc 和 wchp 显示 session 的 watch 信息 path 的 watch 信息
需要在 配置
zoo.cfg
文件中添加4lw.commands.whitelist=*
4 参考文章
版权声明: 本文为 InfoQ 作者【石臻臻的杂货铺】的原创文章。
原文链接:【http://xie.infoq.cn/article/9bbb8e9323ae3675fb2bfdc43】。未经作者许可,禁止转载。
评论