首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

大数据zookeeper系列之(二)

zookeeper安装

zookeeper系列

配置参数解读

Zookeeper中的配置文件zoo.cfg中参数含义解读如下:

1)tickTime =2000:通信心跳数,Zookeeper服务器与客户端心跳时间,单位毫秒

Zookeeper使用的基本时间,服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个tickTime时间就会发送一个心跳,时间单位为毫秒。

它用于心跳机制,并且设置最小的session超时时间为两倍心跳时间。(session的最小超时时间是2*tickTime)

2)initLimit =10:LF初始通信时限

集群中的Follower跟随者服务器与Leader领导者服务器之间初始连接时能容忍的最多心跳数(tickTime的数量),用它来限定集群中的Zookeeper服务器连接到Leader的时限。

3)syncLimit =5:LF同步通信时限

集群中Leader与Follower之间的最大响应时间单位,假如响应超过syncLimit * tickTime,Leader认为Follwer死掉,从服务器列表中删除Follwer。

4)dataDir:数据文件目录+数据持久化路径

主要用于保存Zookeeper中的数据。

5)clientPort =2181:客户端连接端口

监听客户端连接的端口。

zookeeper节点类型

ZooKeeper中的节点类型主要可以分为以下几种:

一、基本节点类型

持久节点(Persistent)

一旦创建,除非显式删除,否则节点将一直存在于ZooKeeper中。

即使创建节点的客户端断开连接,节点也不会被删除。

适用于存储永久性数据,如配置信息等。

临时节点(Ephemeral)

节点的生命周期与创建它的客户端会话(session)绑定。

如果创建临时节点的客户端会话结束(例如客户端与ZooKeeper服务器的连接断开),那么该节点就会被自动删除。

适用于表示临时状态或临时任务,如分布式锁释放、健康检查等。

二、顺序节点类型

ZooKeeper在基本节点类型的基础上,还可以添加顺序性特性,形成顺序节点类型。顺序节点在创建时,ZooKeeper会自动在节点名称后面添加一个单调递增的序号,这个序号用于保持节点的顺序。

持久顺序节点(Persistent Sequential)

结合了持久节点和顺序节点的特点。

创建后不会被自动删除,除非显式删除。

适用于需要保持顺序性的场景,如分布式系统中的节点注册。

临时顺序节点(Ephemeral Sequential)

结合了临时节点和顺序节点的特点。

创建时自动添加递增的序号,且在创建它的客户端会话结束后自动删除。

常用于实现分布式队列或分布式锁。

三、其他节点类型(ZooKeeper 3.5及更高版本)

容器节点(Container)

在ZooKeeper 3.5及更高版本中引入。

容器节点的表现形式和持久节点相似,但有一个特殊的线程会扫描所有的容器节点。

当发现容器节点的子节点数量为0时,会自动删除该节点。

适用于leader选举、锁等场景。

持久TTL节点和持久顺序TTL节点

这类节点在创建时可以指定一个存活时间(TTL)。

如果该节点下面没有子节点,并且超过了TTL指定时间,那么该节点就会被自动删除。

需要额外的配置(如zookeeper.extendedTypesEnabled设置为true)才能使用TTL节点。

zookeeper本地模式安装部署

1)安装前准备

1)安装Jdk

(2)拷贝Zookeeper安装包到Linux系统下

(3)解压到指定目录

tar -zxvf zookeeper-3.4.11.tar.gz -C /opt/apps/

2)配置修改

(1)将/opt/apps/zookeeper-3.5.7/conf这个路径下的zoo_sample.cfg修改为zoo.cfg

mv zoo_sample.cfg zoo.cfg

2)打开zoo.cfg文件,修改dataDir路径:

vim zoo.cfg修改如下内容:dataDir=/opt/apps/zookeeper-3.4.1/zkData

mkdir zkData

3)操作Zookeeper

(1)启动Zookeeper

(2)查看进程是否启动

jps4020 Jps4001 QuorumPeerMain

(3)查看状态:

(4)启动客户端:

(5)退出客户端:quit

(6)停止Zookeeper

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OgpJjaFXe9lkvE1nQ74fnlxg0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券