- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ZooKeeper入门简介及配置使用
ZooKeeper系列之⼀:ZooKeeper简介
ZooKeeper 是⼀个为分布式应⽤所设计的分布的、开源的协调服务。分布式的应⽤
可以建⽴在同步、配置管理、分组和命名等服务的更⾼级别的实现的基础之上。
ZooKeeper 意欲设计⼀个易于编程的环境,它的⽂件系统使⽤我们所熟悉的⽬录树结构。
ZooKeeper 使⽤ Java 所编写,但是⽀持 Java 和 C 两种编程语⾔。
众所周知,协调服务⾮常容易出错,但是却很难恢复正常,例如,协调服务很容易处于
竞态以⾄于出现死锁。我们设计 ZooKeeper 的⽬的是为了减轻分布式应⽤程序所承担的协
调任务。
ZooKeeper系列之⼆:ZooKeeper数据模型、命名空
间以及节点的概念
ZooKeeper数据模型和层次命名空间
提供的命名空间与标准的⽂件系统⾮常相似。⼀个名称是由通过斜线分隔开的路径名
序列所组成的。ZooKeeper 中的每⼀个节点是都通过路径来识别。
下图是Zookeeper 中节点的数据模型,这种树形结构的命名空间操作⽅便且易于理解。
图:ZooKeeper层次命名空间
ZooKeeper中节点和临时节点
ZooKeeper 的节点是通过像树⼀样的结构来进⾏维护的,并且每⼀个节点通过路径来
标⽰以及访问。除此之外,每⼀个节点还拥有⾃⾝的⼀些信息,包括:数据、数据长度、
创建时间、修改时间等等。从这样⼀类既含有数据,又作为路径表标⽰的节点的特点中,
可以看出,ZooKeeper的节点既可以被看做是⼀个⽂件,又可以被看做是⼀个⽬录,它同
时具有⼆者的特点。为了便于表达,今后我们将使⽤Znode来表⽰所讨论的ZooKeeper节
点。
具体地说,Znode维护着数据、ACL (access control list ,访问控制列表)、时间戳等
交换版本号等数据结构,它通过对这些数据的管理来让缓存⽣效并且令协调更新。每当
Znode 中的数据更新后它所维护的版本号将增加,这⾮常类似于数据库中计数器时间戳的
操作⽅式。
另外Znode还具有原⼦性操作的特点:命名空间中,每⼀个Znode的数据将被原⼦地
读写。读操作将读取与Znode相关的所有数据,写操作将替换掉所有的数据。除此之外,
每⼀个节点都有⼀个访问控制列表,这个访问控制列表规定了⽤户操作的权限。
ZooKeeper 中同样存在临时节点。这些节点与session同时存在,当session⽣命周期结束,
这些临时节点也将被删除。临时节点在某些场合也发挥着⾮常重要的作⽤。
ZooKeeper系列之三:ZooKeeper的安装
ZooKeeper的安装模式分为三种,分别为:单机模式(stand-alone )、集群模式和集群伪
分布模式。ZooKeeper 单机模式的安装相对⽐较简单,如果第⼀次接触ZooKeeper的话,
建议安装ZooKeeper单机模式或者集群伪分布模式。
1)单机模式
⾸先,从Apache官⽅⽹站下载⼀个ZooKeeper 的最近稳定版本。
/zookeeper/releases.html
ZooKeeper 要求 JAVA 的环境才能运⾏,并且需要 JAVA6 以上的版本,可以从 SUN
官⽹上下载,并对 JAVA 环境变量进⾏设置。除此之外,为了今后操作的⽅便,我们需要
对 ZooKeeper 的环境变量进⾏配置,⽅法如下,在 /etc/profile ⽂件中加⼊如下的内容:
#Set ZooKeeper Enviroment
export ZOOKEEPER_HOME=/root/hadoop-0.20.2/zookeeper-3.3.1
export PATH=$PATH:$ZOOKEEPER_HOME/bin:$ZOOKEEPER_HOME/conf
ZooKeeper 服务器包含在单个 JAR ⽂件中,安装此服务需要⽤户创建⼀个配置⽂
档,并对其进⾏设置。我们在 ZooKeeper-*.*.* ⽬录(我们以当前 ZooKeeper 的最新版
3.3.1 为例,故此下⾯的“ ZooKeeper-*.*.* ”都将写为“ ZooKeeper-3.3.1” )的 conf ⽂件夹下
创建⼀个 zoo.cfg ⽂件,它包含如下的内容:
tickTime=2000
dataDir=/var/zookeeper
您可能关注的文档
最近下载
- 教科版小学科学四年级下册总复习试题(连线题).doc VIP
- 长虹LED42C2000黑屏故障通病维修方法分享.doc
- 教科版(2025秋)四年级科学下册总复习之连线题(含答案) .pdf VIP
- 2025年机修钳工(高级技师)职业技能鉴定理论考试题库资料(含答案).pdf
- 三字经全文带拼音完整版 打印版.pdf VIP
- 科教版小学科学四年级下册期末复习专项训练题04——连线题(含答案+详细解析).docx VIP
- 江苏省苏北四市(徐州、宿迁、淮安、连云港) 2025届高三第一次调研测试思想政治试题(含答案).pdf VIP
- 消防员心理培训课件.pptx VIP
- 2024年高考政治真题汇编《哲学与文化》.docx
- 风力发电场生态保护及恢复技术规范-DB21.PDF
文档评论(0)