zookeeper 配置详解

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

安装部署:zookeeper集群的安装和部署 - 简书

配置详解:ZooKeeper 配置文件(zoo.cfg)详解 - 扫地猿 - 博客园

参数名

说明

clientPort

客户端连接server的端口,即对外服务端口,一般设置为2181吧。

dataDir

存储快照文件snapshot的目录。默认情况下,事务日志也会存储在这里。建议同时配置参数dataLogDir, 事务日志的写性能直接影响zk性能。

tickTime

ZK中的一个时间单元。ZK中所有时间都是以这个时间单元为基础,进行整数倍配置的。例如,session的最小超时时间是2*tickTime。

dataLogDir

事务日志输出目录。尽量给事务日志的输出配置单独的磁盘或是挂载点,这将极大的提升ZK性能。  
(No Java system property)

globalOutstandingLimit

最大请求堆积数。默认是1000。ZK运行的时候, 尽管server已经没有空闲来处理更多的客户端请求了,但是还是允许客户端将请求提交到服务器上来,以提高吞吐性能。当然,为了防止Server内存溢出,这个请求堆积数还是需要限制下的。  
(Java system property:zookeeper.globalOutstandingLimit. )

preAllocSize

预先开辟磁盘空间,用于后续写入事务日志。默认是64M,每个事务日志大小就是64M。如果ZK的快照频率较大的话,建议适当减小这个参数。(Java system property:zookeeper.preAllocSize )

snapCount

每进行snapCount次事务日志输出后,触发一次快照(snapshot), 此时,ZK会生成一个snapshot.*文件,同时创建一个新的事务日志文件log.*。默认是100000.(真正的代码实现中,会进行一定的随机数处理,以避免所有服务器在同一时间进行快照而影响性能)(Java system property:zookeeper.snapCount )

traceFile

用于记录所有请求的log,一般调试过程中可以使用,但是生产环境不建议使用,会严重影响性能。(Java system property:? requestTraceFile )

maxClientCnxns

单个客户端与单台服务器之间的连接数的限制,是ip级别的,默认是60,如果设置为0,那么表明不作任何限制。请注意这个限制的使用范围,仅仅是单台客户端机器与单台ZK服务器之间的连接数限制,不是针对指定客户端IP,也不是ZK集群的连接数限制,也不是单台ZK对所有客户端的连接数限制。指定客户端IP的限制策略,这里有一个patch,可以尝试一下:http://rdc.taobao.com/team/jm/archives/1334(No Java system property)

clientPortAddress

对于多网卡的机器,可以为每个IP指定不同的监听端口。默认情况是所有IP都监听 clientPort 指定的端口。  New in 3.3.0

minSessionTimeoutmaxSessionTimeout

Session超时时间限制,如果客户端设置的超时时间不在这个范围,那么会被强制设置为最大或最小时间。默认的Session超时时间是在2 *  tickTime ~ 20 * tickTime 这个范围 New in 3.3.0

fsync.warningthresholdms

事务日志输出时,如果调用fsync方法超过指定的超时时间,那么会在日志中输出警告信息。默认是1000ms。(Java system property:  fsync.warningthresholdms )New in 3.3.4

autopurge.purgeInterval

在上文中已经提到,3.4.0及之后版本,ZK提供了自动清理事务日志和快照文件的功能,这个参数指定了清理频率,单位是小时,需要配置一个1或更大的整数,默认是0,表示不开启自动清理功能。(No Java system property)  New in 3.4.0

autopurge.snapRetainCount

这个参数和上面的参数搭配使用,这个参数指定了需要保留的文件数目。默认是保留3个。(No Java system property)  New in 3.4.0

electionAlg

在之前的版本中, 这个参数配置是允许我们选择leader选举算法,但是由于在以后的版本中,只会留下一种“TCP-based version of fast leader election”算法,所以这个参数目前看来没有用了,这里也不详细展开说了。(No Java system property)

initLimit

Follower在启动过程中,会从Leader同步所有最新数据,然后确定自己能够对外服务的起始状态。Leader允许F在 initLimit 时间内完成这个工作。通常情况下,我们不用太在意这个参数的设置。如果ZK集群的数据量确实很大了,F在启动的时候,从Leader上同步数据的时间也会相应变长,因此在这种情况下,有必要适当调大这个参数了。(No Java system property)

syncLimit

在运行过程中,Leader负责与ZK集群中所有机器进行通信,例如通过一些心跳检测机制,来检测机器的存活状态。如果L发出心跳包在syncLimit之后,还没有从F那里收到响应,那么就认为这个F已经不在线了。注意:不要把这个参数设置得过大,否则可能会掩盖一些问题。(No Java system property)

leaderServes

默认情况下,Leader是会接受客户端连接,并提供正常的读写服务。但是,如果你想让Leader专注于集群中机器的协调,那么可以将这个参数设置为no,这样一来,会大大提高写操作的性能。(Java system property: zookeeper. leaderServes )。

server.x=[hostname]:nnnnn[:nnnnn]

这里的x是一个数字,与myid文件中的id是一致的。右边可以配置两个端口,第一个端口用于F和L之间的数据同步和其它通信,第二个端口用于Leader选举过程中投票通信。  
(No Java system property)

group.x=nnnnn[:nnnnn]weight.x=nnnnn

对机器分组和权重设置,可以  参见这里(No Java system property)

cnxTimeout

Leader选举过程中,打开一次连接的超时时间,默认是5s。(Java system property: zookeeper.  cnxTimeout )

zookeeper.DigestAuthenticationProvider
.superDigest

ZK权限设置相关,具体参见  《  使用super  身份对有权限的节点进行操作 》  和  《 ZooKeeper   权限控制 》

skipACL

对所有客户端请求都不作ACL检查。如果之前节点上设置有权限限制,一旦服务器上打开这个开头,那么也将失效。(Java system property:  zookeeper.skipACL )

forceSync

这个参数确定了是否需要在事务日志提交的时候调用 FileChannel .force来保证数据完全同步到磁盘。(Java system property: zookeeper.forceSync )

jute.maxbuffer

每个节点最大数据量,是默认是1M。这个限制必须在server和client端都进行设置才会生效。(Java system property: jute.maxbuffer )

zookeeper集群配置配置文件详解 1、配置文件解读 tickTime=2000 //leader和follower之间心跳检测时间 initLimit=10 //初始化连接次数是10次,和第一个配置连在一起意思就是10*2000 20秒之内还没连接成功,说明follower是有故障的。 syncLimit=5 //leader下发给follower同步数据,如果5次重试机会,超过5次则表示认为follower存在故障。 dataDir=/tmp/zookeeper // 数据持久化目录 clientPort=2181 // 客户端 阅读详情

相关推荐

zookeeperzookeeper 查看ZK连接总数

1.概述 线上环境,因为写了一些代码,每次刷新页面的时候,都会连接zk,然后用完就关闭,不用持久化,但是确有发现我每次点击连接数都会递增,但是过了一会会慢慢减少,但是减少到一定程度后就不减少了。 猜测是因为我的是多线程获取消费组信息的,20个消费组就是20次,然后就会突然增多,然后用完就关了,然后看起来就减少了,但是有些一定是开了没有关闭。 查看连接数的命令如下 netstat -na | grep 2181 | wc -l 2181是ZK默认端口 然后我就用jstack查看线程,逐步找到未关闭的,进行.

九师兄 7654

第2关:ZooKeeper配置

ZooKeeper入门-初体验 第2关:ZooKeeper配置

qq_61604164的博客 5479

记录一次线上zookeeper连接数耗尽拒绝连接的问题处理

推测发现,是服务端(主动断开方)主动断开连接,是由于TCP关闭连接时的四次挥手中的,收到客户端(被动断开方)最后一个FIN结束包,并且返回ACK给客户端后,等待一段时间才回到CLOSED状态。至于为什么会有大量的TIME_WAIT,应该是连接数达到ZK的单台客户端(60)连接数ZK客户端不断重连,服务端不断拒绝 断开连接,所以会出现大量的临时TIME_WAIT。通过统计发现,有问题的宿主主机上有4500个与ZK服务器的连接 处于TIME_WAIT状态,而这台宿主主机上的POD服务只有10个。.......

lipengyao2010的专栏 3480

分布式框架(二):Zookeeper

Zookeeper ZooKeeper本质上是一个分布式的小文件存储系统(Zookeeper=文件系统+监听机制)。提供基于类似于文件系统的目录树方式的数据存储,并且可以对树中的节点进行有效管理,从而用来维护和监控存储的数据的状态变化。通过监控这些数据状态的变化,从而可以达到基于数据的集群管理、统一命名服务、分布式配置管理、分布式消息队列、分布式锁、分布式协调等功能。 Zookeeper从设计模式角度来理解:是一个基于观察者模式设计的分布式服务管理框架,它负责存储和管理大家都关心的数据,然后接受观察者的注册

Men-DD 1673

Zookeeper 详解

下载安装包:https://zookeeper.apache.org/releases.html 选择一个版本进行下载: 下载完成后对压缩文件进行解压缩: 打开apache-zookeeper-3.6.1-bin\conf目录,把zoo_sample.cfg重命名成zoo.cfg 之后使用记事本打开这个文件,修改dataDir的值:原先:dataDir=/tmp/zookeeper 修改成dataDir=F:\Spark\Zookeep\Zookeep\apache-zookeeper-3.6.1-bi

共勉 2711

Zookeeper配置详解

配置参数详解(主要是%ZOOKEEPER_HOME%/conf/zoo.cfg文件) 参数名 说明 clientPort 客户端连接server的端口,即对外服务端口,一般设置为2181吧。 dataDir 存储快照文件snapshot的目录。默认情况下,事务日志也会存储在这里...

haoranhaoshi的博客 307

Zookeeper 配置参数详解

Zookeeper 配置参数详解

Yang的博客 1548

zookeeper配置详解

zookeeper配置 最低配置:以下是必须在配置文件中定义的最低配置关键字: clientPort:侦听客户端连接的端口; 也就是客户端尝试连接的端口。 secureClientPort:使用SSL侦听安全客户端连接的端口。clientPort指定明文连接的端口,而secureClientPort指定SSL连接的端口。指定两者都启用混合模式,而忽略将禁用该模式。请注意,当用户将zookeeper...

codas的博客 4210

zookeeper配置

ZooKeeper下载安装 1、下载:链接: https://pan.baidu.com/s/12v1T3iVxBdkKP2PclVAHpQ 提取码: u5ed 2、拖入/software目录解压安装至/opt目录下:tar -zxvf zookeeper-3.4.6.tar.gz -C /opt/ 3、删除安装包: rm -rf zookeeper-3.4.6.tar.gz 4、重命名解压文件:mv zookeeper-3.4.6.tar.gz zookeeper 5、配置全局环境变量: vi /etc/

qianchun22的博客 1013

ZooKeeper配置文件详解

ZooKeeper配置文件详解 zkServer.sh读取的默认配置文件是$ZOOKEEPER_HOME/conf/zoo.cfg。如果要用其它配置文件。如下传递配置文件参数: zkServer.sh start your_config zkServer.sh stop your_config zkServer.sh status your_config 配置文件的官方说明:https://zookeeper.apache.org/doc/r3.6.2/zookeeperAdmin.html#sc

LoveSummer 6737

Zookeeper配置

Zookeeper是一个分布式协调服务,主要用于管理和协调分布式系统中的节点(称为"znodes")。

Made In SQL 1141

安装配置ZooKeeper

安装包上传至站点后,执行如下命令进入该目录,并执行命令将。安装包,并上传到至站点,本次演示在虚拟机站点。执行命令进入“data"文件夹;修改为如下所示,并在文件末尾增加如下如下内容。的安装目录,并在该目录新建文件夹。若显示如下界面即为解压成功。若显示如下所示,及启动成功。文件复制一份并重命名为。的文件,并写入ID号。

阁下的小窝 2078

ZooKeeper系列之四:ZooKeeper配置

<br /><br />ZooKeeper的功能特性通过ZooKeeper配置文件来进行控制管理(zoo.cfg配置文件)。ZooKeeper这样的设计其实是有它自身的原因的。通过前面对ZooKeeper配置可以看出,对ZooKeeper集群进行配置的时候,它的配置文档是完全相同的(对于集群伪分布模式来说,只有很少的部分是不同的)。这样的配置方使得在部署ZooKeeper服务的时候非常地方便。另外,如果服务器使用不同的配置文件,必须要确保不同配置文件中的服务器列表相匹配。<br /><br /><br /

张林林|深蓝(Linlin Zhang,shenlan211314) 的专栏 5万+

zookeeper配置

3.修改/创建zookeeper配置文件 1)在zookeeper目录下新建data目录和logs目录 mkdir data logs 在data中新建myid文件,在其中填入数字1(对应zoo.cfg文件的server编号) 2)由于conf目录下没有zoo.cfg文件,所以复制zoo_sample.cfg成zoo.cfg: cp zoo_sample.cfg zoo.cfg 注意一定要删除原有内容后(否则集群会报错myid could not be determined),

v15220的博客 9320

ZooKeeper配置详解

参考ZooKeeper管理员指南——部署与管理ZooKeeper配置部分,不过我自己对配置进行了很多补充,解释了为什么是这么配置,原博客地址为http://nileader.blog.51cto.com/1381108/1032157 参数 说明 ...

chitankong1289的博客 407

Zookeeper配置安装

1.官网网址http://zookeeper.apache.org/releases.html 下载网址http://mirrors.hust.edu.cn/apache/zookeeper 2.安装 安装JDK 上传JDK压缩包 解压文件 tar -xvf jdk-8u51-linux-x64.tar.gz 编辑环境变量配置文件 vim /etc/p...

suzhou_xj的博客 226

Zookeeper 开启kerberos配置

一. 前言 这两天需要搞一个开启kerberos的zookeeper环境用于测试. 顺手记录一下. 二. 安装步骤 2.1 前置环境准备 JDK : jdk1.8 服务器 : CentOS 7.5 软件版本: zookeeper : 2.4.8 前置环境: kerberos 安装 参考文档 2.2 安装zookeeper zookeeper安装我就不细说了, 先贴一个配置文件示例 , 后续的参数配置都是基于这个zoo.cfg配置文件的基础上进行修改. zoo.cfg 配置 # The numb

张伯毅的专栏 3788
上一篇: hadoop shell(翻译自官网)
下一篇: 定时清理mysql表数据 event
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值