1 Zookeeper概念
•Zookeeper 是一个分布式的、开源的分布式应用程序的协调服务。
•Zookeeper 是 Apache Hadoop 项目下的一个子项目,是一个树形目录服务。
•Zookeeper 提供的主要功能包括:
•配置管理
•分布式锁
2 ZooKeeper 命令操作
2.1 基本节点
PERSISTENT 持久化节点
服务端关闭和客户端断开连接,节点都能保存。
EPHEMERAL 临时节点 :-e
当客户端断开连接,节点失效。
PERSISTENT_SEQUENTIAL 持久化顺序节点 :-s
只是将持久化节点排序,节点不会丢失。
EPHEMERAL_SEQUENTIAL 临时顺序节点 :-es
2.2 服务端命令
进入zookeeper安装目录下的bin,启动shell脚步,zkServer.sh脚步启动
•启动 ZooKeeper 服务: ./zkServer.sh start
•查看 ZooKeeper 服务状态: ./zkServer.sh status
•停止 ZooKeeper 服务: ./zkServer.sh stop
•重启 ZooKeeper 服务: ./zkServer.sh restart
2.3 客户端命令
•连接ZooKeeper服务端
./zkCli.sh –server ip:port
•断开连接
quit
•查看命令帮助
help
•显示指定目录下节点
ls 目录
•创建节点
create /节点path value
•获取节点值
get /节点path
•设置节点值
set /节点path value
•删除单个节点
delete /节点path
•删除带有子节点的节点
deleteall /节点path
无法一并创建节点,必须创建父节点,才能创建子节点。
当有子节点,delete删除节点失去作用,无法直接删除节点,必须将子节点全部删除后,父节点才能进行删除。
deleteall 可以直接删除全部节点。
2.4 客户端命令-创建临时有序节点
•创建临时节点
create -e /节点path value
•创建顺序节点
create -s /节点path value
•查询节点详细信息
ls –s /节点path
•czxid:节点被创建的事务ID
•ctime: 创建时间
•mzxid: 最后一次被更新的事务ID
•mtime: 修改时间
•pzxid:子节点列表最后一次被更新的事务ID
•cversion:子节点的版本号
•dataversion:数据版本号
•aclversion:权限版本号
•ephemeralOwner:用于临时节点,代表临时节点的事务ID,如果为持久节点则为0
•dataLength:节点存储的数据的长度
•numChildren:当前节点的子节点个数