ZooKeeper
ZooKeeper介绍
- ZooKeeper(动物园管理员)是一个分布式的、开源的分布式应用程序的协调服务框架,简称zk。
- ZooKeeper是Apache Hadoop 项目下的一个子项目,是一个树形目录服务。
ZooKeeper的主要功能
- 配置管理
-
分布式锁
-
集群管理
Zookeeper数据模型
ZooKeeper是一个树形目录服务,每一个节点都被称为ZNode,每个节点
上都会保存自己的数据和节点信息。 节点可以拥有子节点,同时也允许少量
(1MB)数据存储在该节点上。
ZNode节点类型:
- PERSISTENT 持久化节点
- EPHEMERAL 临时节点 :-e
- PERSISTENT_SEQUENTIAL 持久化顺序节点 :-s
- EPHEMERAL_SEQUENTIAL 临时顺序节点 :-es
ZooKeeper命令行操作
服务端常用命令
-
启动 ZooKeeper 服务:
./zkServer.sh start
-
查看 ZooKeeper 服务状态:
./zkServer.sh status
-
停止 ZooKeeper 服务:
./zkServer.sh stop
-
重启 ZooKeeper 服务:
./zkServer.sh restart
Zookeeper客户端常用命令
-
连接ZooKeeper服务端:
./zkCli.sh –server ip:port
-
断开连接:
quit
-
显示指定目录下节点
ls 目录
-
创建持久化节点:
create /节点path # 创建持久化节点但不设置值 create /节点path value # 创建持久化节点并且设置值
-
获取节点值:
get /节点path
-
设置节点值:
set /节点path value
-
删除单个节点:
delete /节点path
-
删除包含子节点的节点:
deleteall /节点path
-
创建临时节点:
create -e /节点path value
-
创建顺序节点:
create -s /节点path value
-
查询节点详细信息:
ls -s /节点path