ZooKeeper 是 Apache 的顶级项目。ZooKeeper 为分布式应用提供了高效且可靠的分布式协调服务,提供了诸如统一命名服务、配置管理和分布式锁等分布式的基础服务。在解决分布式数据一致性方面,ZooKeeper 并没有直接采用 Paxos 算法,而是采用了名为 ZAB 的一致性协议。
ZooKeeper 主要用来解决分布式集群中应用系统的一致性问题,它能提供基于类似于文件系统的目录节点树方式的数据存储。但是 ZooKeeper 并不是用来专门存储数据的,它的作用主要是用来维护和监控存储数据的状态变化。通过监控这些数据状态的变化,从而可以达到基于数据的集群管理。
很多大名鼎鼎的框架都基于 ZooKeeper 来实现分布式高可用,如:Dubbo、Kafka 等。
ZooKeeper 官方支持 Java 和 C 的 Client API。ZooKeeper 社区为大多数语言(.NET,python 等)提供非官方 API。
- Java208
- 数据库101
- 框架83
- 设计78
- Spring77
- 分布式74
- java62
- JavaSE57
- 工具37
- 大数据33
- 架构31
- 分布式通信31
- 笔记30
- 设计模式27
- 搜索引擎数据库25
- Spring核心24
- 综合22
- 软件20
- 关系型数据库20
- Spring综合20
- 网络19
- KV数据库19
- Redis18
- MQ17
- 数据结构和算法16
- Elasticsearch16
- JavaEE15
- 其他15
- 基础特性15
- 列式数据库14
- 操作系统13
- 分布式协同13
- mysql12
- 文档数据库12
- 分布式理论12
- HBase12
- JVM11
- MongoDB11
- Linux11
- 并发10
- Mysql10
- Spring数据10
- 中间件9
- flink9
- 构建9
- Kafka9
- 工作8
- DevOps8
- 编程8
- 网络综合8
- hive8
- IO8
- 服务器8
- 安全8
- Elastic8
- 解决方案8
- RPC8
- SpringWeb8
- 重构7
- 分布式存储7
- hadoop7
- Maven7
- 树6
- 网络协议6
- 分布式调度6
- Python6
- 高级特性6
- 容器6
- JavaWeb6
- 监控诊断6
- 分布式协同综合6
- ZooKeeper6
- 效能6
- Tomcat6
- dependence5
- 测试5
- 缓存5
- 微服务5
- Spring集成5
- network4
- vuepress4
- 数据库中间件4
- UML4
- 线性表4
- 网络技术4
- 编程范式4
- IDE4
- 模板引擎4
- hdfs4
- SpringIO4
- Spring其他4
- RPC综合4
- RocketMQ4
- 软件工程3
- redis3
- 数据库综合3
- 分布式综合3
- 编程语言3
- ORM3
- 规范3
- Git3
- minio3
- linux2
- AI2
- windows2
- DDD2
- 操作系统应用2
- 监控2
- JavaBean2
- 流量控制2
- Shardingsphere2
- 方法论2
- Dubbo2
- MQ综合2
- idea1
- 力量训练1
- CDN1
- cloudflare1
- 使用指南1
- markdown1
- 分布式高可用1
- spark1
- 人工智能1
- python1
- bug1
- 数据库``1
- 命令1
- Spring安全1
- io1
- 其他MQ1
ZooKeeper 命令用于在 ZooKeeper 服务上执行操作。
启动服务和启动命令行
# 启动服务
bin/zkServer.sh start
# 启动命令行,不指定服务地址则默认连接到localhost:2181
bin/zkCli.sh -server hadoop001:2181
为了避免存储在 Zookeeper 上的数据被其他程序或者人为误修改,Zookeeper 提供了 ACL(Access Control Lists) 进行权限控制。
ACL 权限可以针对节点设置相关读写等权限,保障数据安全性。
ZooKeeper ACL 提供了以下几种命令行:
- getAcl 命令:获取某个节点的 acl 权限信息。
- setAcl 命令:设置某个节点的 acl 权限信息。
- addauth 命令:输入认证授权信息,注册时输入明文密码,加密形式保存。
ZooKeeper 是 Apache 的顶级项目。ZooKeeper 为分布式应用提供了高效且可靠的分布式协调服务,提供了诸如统一命名服务、配置管理和分布式锁等分布式的基础服务。在解决分布式数据一致性方面,ZooKeeper 并没有直接采用 Paxos 算法,而是采用了名为 ZAB 的一致性协议。
ZooKeeper 主要用来解决分布式集群中应用系统的一致性问题,它能提供基于类似于文件系统的目录节点树方式的数据存储。但是 ZooKeeper 并不是用来专门存储数据的,它的作用主要是用来维护和监控存储数据的状态变化。通过监控这些数据状态的变化,从而可以达到基于数据的集群管理。
很多大名鼎鼎的框架都基于 ZooKeeper 来实现分布式高可用,如:Dubbo、Kafka 等。
ZooKeeper 官方支持 Java 和 C 的 Client API。ZooKeeper 社区为大多数语言(.NET,python 等)提供非官方 API。
ZooKeeper 是 Apache 的顶级项目。ZooKeeper 为分布式应用提供了高效且可靠的分布式协调服务,提供了诸如统一命名服务、配置管理和分布式锁等分布式的基础服务。在解决分布式数据一致性方面,ZooKeeper 并没有直接采用 Paxos 算法,而是采用了名为 ZAB 的一致性协议。
ZooKeeper 主要用来解决分布式集群中应用系统的一致性问题,它能提供基于类似于文件系统的目录节点树方式的数据存储。但是 ZooKeeper 并不是用来专门存储数据的,它的作用主要是用来维护和监控存储数据的状态变化。通过监控这些数据状态的变化,从而可以达到基于数据的集群管理。
很多大名鼎鼎的框架都基于 ZooKeeper 来实现分布式高可用,如:Dubbo、Kafka 等。
ZooKeeper 官方支持 Java 和 C 的 Client API。ZooKeeper 社区为大多数语言(.NET,python 等)提供非官方 API。
单点服务部署
在安装 ZooKeeper 之前,请确保你的系统是在以下任一操作系统上运行:
- 任意 Linux OS - 支持开发和部署。适合演示应用程序。
- Windows OS - 仅支持开发。
- Mac OS - 仅支持开发。
安装步骤如下:
下载解压
进入官方下载地址:http://zookeeper.apache.org/releases.html#download ,选择合适版本。