zk-cluster-zookeeper:2181读取(所有节点)
zk-cluster-zookeeper-readable:2181selector:
kubeblocks.io/role=leaderEndpoints 随主节点切换自动更新
无 roleSelector — 所有 Pod
将读请求分发到所有节点
KubeBlocks ZooKeeper Operator 提供 ZooKeeper 集群的全生命周期自动化管理,支持滚动升级、动态配置变更与 Prometheus 监控集成,是 Kafka、HBase 等分布式系统的可靠协调服务底座。
RPO = 0
零数据丢失
99.99%
高可用目标
100%
开源免费
2 步部署生产级 ZooKeeper Operator
安装 KubeBlocks
# 添加 Helm 仓库 helm repo add kubeblocks https://apecloud.github.io/helm-charts helm repo update # 安装 KubeBlocks helm install kubeblocks kubeblocks/kubeblocks \ --namespace kb-system --create-namespace
创建 ZooKeeper Operator 集群
apiVersion: apps.kubeblocks.io/v1
kind: Cluster
metadata:
name: zookeeper-cluster
namespace: demo
spec:
terminationPolicy: Delete
componentSpecs:
- name: zookeeper
componentDef: zookeeper
serviceVersion: "3.9.4"
replicas: 3一键创建、扩容、缩容 ZooKeeper 集群,自动处理 Leader 选举与成员重新配置。
逐节点滚动升级策略,升级期间集群保持 Quorum 可用,业务不中断。
内置 JMX Exporter,自动暴露 ZooKeeper 指标,与 Prometheus + Grafana 无缝集成。
支持 ZooKeeper 3.5+ 动态重新配置,无需重启即可调整集群成员与配置参数。
ZooKeeper 基于 ZAB(ZooKeeper Atomic Broadcast)协议实现分布式一致性。Leader 处理所有写请求并广播给 Follower,多数节点确认后事务提交,保障数据零丢失。
Leader 处理所有写请求,通过 ZAB 广播确保多数 Follower 确认后提交
Follower 承载只读请求,横向扩展读性能
三种 Service:Leader 专用写服务、全节点读服务、ZAB 协议内部通信
内置 JMX Exporter,自动暴露 ZooKeeper 指标,与 Prometheus + Grafana 无缝集成
支持 ZooKeeper 3.5+ 动态重新配置,无需重启调整集群成员
zk-cluster-zookeeper:2181zk-cluster-zookeeper-readable:2181kubeblocks.io/role=leaderKubeBlocks ZooKeeper Operator 支持 ZooKeeper 3.7、3.8、3.9 等主流版本。
ZooKeeper 基于 ZAB 协议,需要多数派(n/2+1)节点存活才能对外服务。生产环境推荐 3 节点(可容忍 1 节点故障)或 5 节点(可容忍 2 节点故障)。
KubeBlocks开源版完全开源免费。KubeBlocks企业版 提供图形化控制台与商业支持等增值功能。