0
0

ZooKeeper配置文件参数

雨水无香 发表于 2010年07月09日 11:20 | Hits: 3223
Tag: Hadoop | 开发技术 | zoo.cfg | ZooKeeper | 参数 | 配置文件

参考:http://hadoop.apache.org/zookeeper/docs/r3.3.1/zookeeperAdmin.html#sc_configuration

ZooKeeper Server的行为受配置文件zoo.cfg的控制,zoo.cfg的设计目标是让所有服务器都可以使用相同的配置文件,如果需要使用不同的配置文件,需要保证关于cluster部分的参数相同。下面是具体的参数:

最小必要配置的参数

clientPort

服务的监听端口

dataDir

用于存放内存数据库快照的文件夹,同时用于集群的myid文件也存在这个文件夹里(注意:一个配置文件只能包含一个dataDir字样,即使它被注释掉了。

tickTime

心跳时间,为了确保连接存在的,以毫秒为单位,最小超时时间为两个心跳时间

高级配置参数

dataLogDir

用于单独设置transaction log的目录,transaction log分离可以避免和普通log还有快照的竞争

globalOutstandingLimit

client请求队列的最大长度,防止内存溢出,默认值为1000

preAllocSize

预分配的Transaction log空间为block个proAllocSize KB,默认block为64M,一般不需要更改,除非snapshot过于频繁

snapCount

在snapCount个snapshot后写一次transaction log,默认值是100,000

traceFile

用于记录请求的log,打开会影响性能,用于debug的,最好不要定义

maxClientCnxns

最大并发客户端数,用于防止DOS的,默认值是10,设置为0是不加限制

clientPortBindAddress

3.3.0后新增参数,可是设置指定的client ip以及端口,不设置的话等于ANY:clientPort

minSessionTimeout

3.3.0后新增参数,最小的客户端session超时时间,默认值为2个tickTime,单位是毫秒

maxSessionTimeout

3.3.0后新增参数,最大的客户端session超时时间,默认值为20个tickTime,单位是毫秒

集群参数

electionAlg

用于选举的实现的参数,0为以原始的基于UDP的方式协作,1为不进行用户验证的基于UDP的快速选举,2为进行用户验证的基于UDP的快速选举,3为基于TCP的快速选举,默认值为3

initLimit

多少个心跳时间内,允许其他server连接并初始化数据,如果ZooKeeper管理的数据较大,则应相应增大这个值

leaderServes

leader是否接受客户端连接。默认值为yes。 leader负责协调更新。当更新吞吐量远高于读取吞吐量时,可以设置为不接受客户端连接,以便leader可以专注于同步协调工作。默认值是yes,说明leader可以接受客户端连接。(注意:当集群中有超过3台ZooKeeper Server时,强烈建议打开leader选举

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

配置集群里面的主机信息,其中server.x的x要写在myid文件中,决定当前机器的id,第一个port用于连接leader,第二个用于leader选举。如果electionAlg为0,则不需要第二个port。hostname也可以填ip。

syncLimit

多少个tickTime内,允许follower同步,如果follower落后太多,则会被丢弃。

group.x=nnnnn[:nnnnn]

weight.x=nnnnn

这两个是用于集群分组的参数,暂时只有3台机器,没仔细研究,先给个例子看看吧

group.1=1:2:3
group.2=4:5:6
group.3=7:8:9
 
weight.1=1
weight.2=1
weight.3=1
weight.4=1
weight.5=1
weight.6=1
weight.7=1
weight.8=1
weight.9=1

用于用户认证的选项

不安全选项

原文链接: http://blog.odichy.org/2010/07/09/zookeeper%e9%85%8d%e7%bd%ae%e6%96%87%e4%bb%b6%e5%8f%82%e6%95%b0.html

0     0

评价列表(0)