zookeeper 的使用

一个「分布式系统的大管家」,专门帮多台服务器 / 程序「统一管理配置、协调工作、记录状态」。

ZooKeeper = 分布式系统的共享记事本节点 = 记事本上的一条记录

用途只有 4 个:

  1. 存配置

  2. 看谁在线

  3. 选主(谁当老大)

  4. 分布式锁(大家别抢)

能够查看 zookeeper 服务状态

1. 启动 ZooKeeper

作用

ZooKeeper 本身是一个服务,要先启动,才能用客户端连上去。

命令

bash 复制代码
sudo /usr/share/zookeeper/bin/zkServer.sh start

看到这个就是成功

plain 复制代码
Starting zookeeper ... STARTED

2. 查看服务是否正常

作用

确认服务真的跑起来了,没崩。

命令

bash 复制代码
sudo /usr/share/zookeeper/bin/zkServer.sh status

成功标志

plain 复制代码
Mode: standalone

3. 进入客户端(开始操作 "记事本")

作用

打开 ZooKeeper 的命令行工具,用来增删改查节点

命令

bash 复制代码
/usr/share/zookeeper/bin/zkCli.sh

成功标志

plain 复制代码
[zk: localhost:2181(CONNECTED) 0]

4. 查看根目录有什么(ls = 看目录)

作用

看看记事本里现在有哪些记录(节点)。类似 Linux 的 ls

命令

bash 复制代码
ls /

你会看到

plain 复制代码
[zookeeper]

这是系统自带节点,不用管。

5. 创建节点(最核心:写一条记录)

作用

在记事本里新建一条记录,可以存:

  • 配置信息

  • 服务地址

  • 谁是主节点

  • 状态

命令 1:创建空节点(相当于建个文件夹)

bash 复制代码
create /myapp ""

意义

我要创建一个叫 /myapp 的项目空间。


命令 2:创建带内容的节点(真正存数据)

bash 复制代码
create /myapp/config "db.host=192.168.1.100"

意义

  • 节点:/myapp/config

  • 内容:数据库地址

  • 所有服务器都可以读取这个配置


6. 查看节点里的内容(get = 读记事本)

作用

读取节点里存的配置 / 信息。

命令

bash 复制代码
get /myapp/config

你会看到

plain 复制代码
db.host=192.168.1.100

第一行就是你存的内容。


7. 查看某个节点下有哪些子节点

作用

看看某个目录里有多少条记录。

命令

bash 复制代码
ls /myapp

输出

plain 复制代码
[config]

8. 删除节点(删除一条记录)

作用

  • 配置不用了

  • 服务下线了

  • 锁释放了

删子节点

bash 复制代码
delete /myapp/config

删父节点(必须先删子节点)

bash 复制代码
rmr /myapp

9. 退出客户端

bash 复制代码
quit

10. 停止 ZooKeeper 服务(可选)

bash 复制代码
sudo /usr/share/zookeeper/bin/zkServer.sh stop

总结

  1. 启动zkServer.sh start

  2. 进客户端/usr/share/zookeeper/bin/zkCli.sh

  3. 创建节点create /节点 "内容"

  4. 看内容get /节点

  5. 看列表ls /路径

  6. 删节点delete /节点rmr /节点

  7. 退出quit


  • create = 写一条共享记录

  • get = 读这条共享记录

  • ls = 看看有哪些共享记录

  • delete = 删掉这条共享记录

相关推荐
乐维_lwops7 小时前
Zabbix分布式监控体系架构设计与实战优化
分布式·zabbix
我是唐青枫9 小时前
C#.NET 分布式事务 深入解析:TCC、Saga、Outbox 与落地取舍
分布式·c#·.net
馨谙10 小时前
OpenEBS + PV/PVC 解析:命令、文件、作用、后续用法
云原生·容器·kubernetes
@atweiwei12 小时前
深入解析gRPC服务发现机制
微服务·云原生·rpc·go·服务发现·consul
少许极端14 小时前
消息队列4-RabbitMQ的高级特性-TTL机制、死信队列、延迟队列
分布式·消息队列·rabbitmq
AI精钢14 小时前
什么是面向 Agent 的 LLM?从 Qwen3.6-Plus 看大模型的新分水岭
网络·数据库·人工智能·云原生·aigc
AI精钢15 小时前
从 Prompt Engineering 到 Fine-Tuning:LLM 应用落地的理性决策框架
大数据·人工智能·云原生·prompt·aigc
m0_6515939116 小时前
仓储系统核心编码设计与分布式ID生成实践
大数据·分布式
014-code17 小时前
RabbitMQ 生产端可靠投递(confirm、return、重试)
分布式·消息队列·rabbitmq
014-code17 小时前
RabbitMQ 消费端幂等实战(重复消息、去重、重放怎么处理)
分布式·消息队列·rabbitmq