
zookeeper入门及进阶
发布日期:2021-05-18 08:19:02
浏览次数:16
分类:精选文章
本文共 1472 字,大约阅读时间需要 4 分钟。
ZK入门指南
1. 什么是ZK?
ZK(Zookeeper)是一个分布式的协调服务框架,用于管理和协调分布式系统中的节点。它是一种适用于大规模网络环境的高效解决方案。
2. ZK的核心特点
- 分布式集群:一个领导节点(leader),多个从节点(follower)。
- 高可用性:只要半数以上节点存活,系统就能正常服务。
- 数据一致性:所有节点保存的数据完全一致。
- 可靠性:每次数据更新要么成功完成,要么失败放弃。
3. 数据模型
ZK采用树状数据模型,支持直键、持久化和临时节点。其核心特点是支持动态结构变化,并能通过脚本自动处理节点状态变化。
4. 安装步骤
- 下载压缩包:请从ZK官方网站获取最新版本。
- 解压并改名:解压并将文件名改为“zookeeper”。
- 配置环境变量:编辑
/etc/profile
,添加以下内容。export ZOOKEEPER_HOME=/usr/local/zookeeperexport PATH=$ZOOKEEPER_HOME/bin:$PATH
- 生效配置:重新加载当前会话。
5. 集群搭建
- 机器准备:至少需要3台机器。
- 配置zoo.cfg:安装完成后,将
zoo_sample.cfg
复制为zoo.cfg
,并修改相关参数。tickTime=2000initLimit=10syncLimit=5dataDir=/usr/local/zookeeper/zkDataclientPort=2181server.1=mypc01:2888:3888server.2=mypc02:2888:3888server.3=mypc03:2888:3888
- 创建myid文件:在
$ZOOKEEPER_HOME/zkData
目录下,创建myid
文件,内容为每台机器的唯一ID(如1、2、3)。touch $ZOOKEEPER_HOME/zkData/myid
- 传播配置:可以使用
scp
命令将配置文件和myid
文件复制到其他机器上。
6. 启动与停止
- 查看帮助信息:
/usr/local/zookeeper/bin/zkServer.sh --help
- 启动集群:在所有节点上运行:
zkServer.sh start
- 查看状态:
zkServer.sh status
- 停止集群:
zkServer.sh stop
- 重新启动:
zkServer.sh restart
7. 选举机制
ZK通过投票机制选举出领导节点(leader)。主要依据以下条件:
- Epoch:表示投票次数,编号递增。
- zxid:每次节点状态变化生成唯一时间戳,zxid越大越晚。
- ServerID:节点ID,需在
myid
文件中指定。
8. ZK客户端操作
使用zkCli.sh
进行操作:
# 查看节点内容zkCli.sh ls /路径# 增加监听zkCli.sh ls /watch# 退出客户端zkCli.sh quit
9. 监听节点变化
- 挂载监听:
# 监听节点数变化cd /zmwatch && echo "/watch" | zkCli.sh ls
- 内容变化:
get /newpath watch
- 自动化处理:可以通过脚本自动处理各类型事件。
10. ZK应用场景
- 与HBase结合:用于管理HBase的不稳定表元数据,记录存储位置信息和备用节点。
- 高可用性数据存储:用于分布式系统中的协调服务,确保数据一致性和高可用性。
通过以上配置和使用ZK,您可以轻松建立一个可靠的分布式协调集群,适用于多种高并发场景。
发表评论
最新留言
很好
[***.229.124.182]2025年04月29日 19时27分31秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
2025版最新Nessus 工具介绍与使用教程,零基础入门到精通,收藏这一篇就够了
2023-01-25
2025版最新关于HW护网行动的一些知识,零基础入门到精通,收藏这篇就够了
2023-01-25
(建议收藏)2024最新 URL Scheme大全APP跳转界面地址更新中 ios快捷指令快捷方式链接跳转微信小程序必备autojs可用免root (可定制开发和提取URL Scheme 参数提取)
2023-01-25
2025版最新大模型学习路线,零基础入门到精通,收藏这篇就够了
2023-01-25
2025版最新大模型开发流程(非常详细)零基础入门到精通,收藏这一篇就够了
2023-01-25
(干货)数据分析案例--以上海二手房为例
2023-01-25
(大部分安卓手机通用)一加OnePlus Ace3扬声器优化教程 外放直接媲美苹果
2023-01-25
2025版最新大模型微调方法(非常详细)零基础入门到精通,收藏这篇就够了
2023-01-25
2025版最新大模型算法岗位薪资指南,零基础入门到精通,收藏这一篇就够了
2023-01-25
2025版最新大语言模型的指令微调,零基础入门到精通,收藏这篇就够了
2023-01-25
2025版最新小白学习大模型:什么是大模型?零基础入门到精通,收藏这篇就够了
2023-01-25
2025版最新常用黑客工具之【Nmap 教程基础】零基础入门到精通,收藏这篇就够了
2023-01-25
2025版最新开发一款大模型需要经过哪些步骤?开发一款大模型的完整流程,收藏这篇就够了
2023-01-25
$.inArray函数判断数组中的是否包含字符串
2023-01-25
2025版最新渗透测试和黑客工具列表,零基础入门到精通,收藏这一篇就够了
2023-01-25
2025版最新网络安全入门书籍整理大全,零基础入门到精通,收藏这篇就够了
2023-01-25
2025版最新网络安全知识入门及学习流程(非常详细)零基础入门到精通,收藏这篇就够了
2023-01-25
2025版最新网络安全等级保护测评指南,零基础入门到精通,收藏这篇就够了
2023-01-25