- ZooKeeper 是一个数型目录服务,它是 Apache Hadoop 项目下的一个子项目。
- ZooKeeper 是一个开源的分布式应用程序协调服务
- ZooKeeper 提供的主要功能包括
(1) 配置管理
(2) 分布式锁
(1) 集群管理
docker pull zookeeper(2) 创建 ZooKeeper 容器并添加映射
docker run -di --name=zookeeper -p 2181:2181 --privileged=true zookeeper(3) 查看容器是否启动
docker ps
此时 ZooKeeper 已经安装成功
docker exec -it zookeeper /bin/bash(5) 然后进入到 bin 目录下
cd bin(6) 在 bin 目录下执行,就可以连接到 ZooKeeper 服务端
客户端连接 ZooKeeper 服务端,进入 ZooKeeper 客户端
./zkCli.sh -server localhost:2181
然后我们就可以敲 ZooKeeper 的命令了。
(7) 退出客户端到 ZooKeeper 容器中quit
注意:把阿里云的2181端口打开,否则外界无法访问
3. ZooKeeper 的数据模型 ZooKeeper 是一个树型目录服务,它是一个层次化的服务。每个节点都被称为 ZNode,每个节点都会保存自己的数据和节点信息。
每个节点都可以拥有子节点,节点可以分为四大类:
- 持久化节点
- 临时节点 -e
- 持久化顺序节点 -s
- 临时顺序节点 -es
help(2) 查看根节点下的目录
ls /(3) 查看根节点下的zookeeper目录
ls /zookeeper
想看哪个目录在 / 后面写全路径
(4) 在根节点下创建app1节点create /app1 wangpeng
app1 后面存的是数据,如果不写数据也可以,数据为空
create /app2(5) 获取节点值
get /app1(6) 设置节点值
在 app2 节点上设置值
set /app2 itcast(7) 删除节点
delete /app1(8) 删除带有子节点的节点
deleteall /app1
上面的都是持久化节点
(9) 创建临时节点
当前连接的客户端一旦断开,临时节点就会被删除掉
create -e /app1(10) 创建顺序节点
自动将创建的节点名改成有编号的节点名,所有顺序节点公用一个编号
create -s /app1(11) 创建临时顺序节点
create -es /app3(12) 查询节点详细信息
zookeeper 节点的详细信息
ls -s /zookeeper5. 使用 Curator 提供的 api 操作 ZooKeeper (1) 导入 Curator 的依赖
org.apache.curator curator-framework 4.0.0 org.apache.curator curator-recipes 4.0.0



