zookeeper入门教程(一)安装、特点

介绍

zookeeper 词为动物管理员

  • zookeeper是一款开源的分布式协调服务框架,为分布式环境提供了一致性服务的功能,常见应用场景有:统一配置管理,文件管理,集群管理,分布式锁等功能。
  • zookeeper 在CAP理论中保证了C(一致性)和P(分区容错性)。

安装

官方下载地址:http://archive.apache.org/dist/zookeeper/
自己选择合适的版本下载即可。目前最新的版本为3.7.0,所以我们本次使用的是apache-zookeeper-3.7.0-bin.tar.gz

zookeeper安装apache-zookeeper-3.7.0-bin.tar.gz

  • 解压:tar -zxvf apache-zookeeper-3.7.0-bin.tar.gz


  • 进入conf目录在重新复制一份zoo_sample.cfg文件并命名为zoo.cfg
    cp zoo_sample.cfg zoo.cfg


  • 在安装目录创建dataDir和dataLogDir并配置到zoo.cfg(推荐,若不配置,zk创建一个默认文件夹)



  • 启动
    到bin目录下 ./zkServer.sh start

  • 停止
    ./zkServer.sh stop

  • 启动客户端(方便命令行测试)
    ./zkCli.sh

数据模型

zookeeper的数据节点可以视为树状结构(或者目录),树中的各节点被称为
znode(即zookeeper node),一个znode可以有多个子节点。
以文件系统进行类比的话,Znode天然具有目录和文件两重属性:即Znode既可以当做文件往里面写东西,又可以当做目录在下面挂载其他Znode。当然,由于Znode具有不同的类型,后半部分并不完全准确。


znode

  • 节点的数据:即znode data(节点path, 节点data)的关系就像是java map中(key,value)的关系

  • 节点的子节点children

  • 节点的状态stat:用来描述当前节点的创建、修改记录,包括cZxid、ctime等。

常见命令行


节点类型

ZooKeeper中的节点有两种,分别为临时节点和永久节点。节点的类型在创建时即被确定,并且不能改变。

  • 临时节点
    该节点的生命周期依赖于创建它们的会话。一旦会话(Session)结束,临时节点将被自动删除,当然可以也可以手动删除。虽然每个临时的Znode都会绑定到一个客户端会话,但他们对所有的客户端还是可见的。另外,ZooKeeper的临时节点不允许拥有子节点。
  • 永久节点
    该节点的生命周期不依赖于会话,并且只有在客户端显示执行删除操作的时候,他们才能被删除。

顺序节点
当创建Znode的时候,用户可以请求在ZooKeeper的路径结尾添加一个递增的计数。这个计数对于此节点的父节点来说是唯一的,它的格式为"%10d"(10位数字,没有数值的数位用0补充,例如"0000000001")。当计数值大于2的32次方-1时,计数器将溢出

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容