本文共 1403 字,大约阅读时间需要 4 分钟。
Zookeeper 是一个开源的分布式应用程序协调服务,主要用于集中管理配置信息并提供分布式的同步机制。作为 Google Chubby 的开源实现,Zookeeper 在现代分布式系统中占据重要地位,广泛应用于 Hadoop、HBase、Kafka 等项目中,是每个分布式开发人员必须掌握的技能。
Zookeeper 的设计理念体现在以下几个方面:
通过 Docker 启动 Zookeeper:
docker pull zookeeperdocker run -p 2181:2181 zookeeper
进入容器执行命令:
docker exec -it $(docker ps | grep zookeeper | awk '{print $2}') ./zkServer.sh status
./zkCli.sh
查看节点信息:
ls /zookeeper
获取节点更新信息:
stat /zookeeper
创建节点:
create /path [options] data [acl]
-s:创建顺序节点。-e:创建临时节点。修改节点数据:
set /path data_version
删除节点:
delete /path [version]
设置watch事件:
stat /path [watch]
或者:
get /path [watch]
Zookeeper 的节点支持5种操作权限:CREATE、READ、WRITE、DELETE、ADMIN。其中,DELETE 指子节点删除权限,其余权限指对自身节点的操作权限。
addauth 命令添加)。Zookeeper 提供一些四字命令用于查询服务状态及相关信息。这些命令主要通过 telnet 或 nc 提交:
| 四字命令 | 功能描述 |
|---|---|
| conf | 输出服务配置详情 |
| cons | 列出所有客户端的会话信息 |
| dump | 列出未处理的会话及临时节点 |
| envi | 输出服务环境详情 |
| reqs | 列出未处理的请求 |
| ruok | 测试服务状态(返回“imok”或无响应) |
| stat | 输出性能和客户端连接详情 |
| wchs | 列出服务器watch的详细信息 |
| wchc | 通过session列出watch详情 |
| wchp | 通过路径列出watch详情 |
Zookeeper 的学习和实践将帮助你更好地理解分布式系统的核心架构,是一项值得投入的学习之路!
转载地址:http://uerkz.baihongyu.com/