nano conf/zoo.cfg
tickTime=2000
dataDir=/var/lib/zookeeper
clientPort=2181
initLimit=5
syncLimit=2
server.1=10.0.0.2:2888:3888
server.2=10.0.0.3:2888:3888
server.3=10.0.0.4:2888:3888
我正在尝试理解这个cfg文件。 clientPort
用于传入通信,对吗?但为什么还有两个这样的端口:server.1=10.0.0.2:2888:3888
?
答案 0 :(得分:0)
表单server.X的条目列出组成的服务器 ZooKeeper服务。当服务器启动时,它知道它是哪个服务器 是通过在数据目录中查找文件myid。那个文件有 包含服务器编号,ASCII格式。
最后,请注意每个服务器名称后面的两个端口号:" 2888"和 " 3888&#34 ;.对等方使用以前的端口连接到其他对等方。这样的 连接是必要的,以便对等方可以进行通信,例如 同意更新的顺序。更具体地说,是ZooKeeper服务器 使用此端口将关注者连接到领导者。当一个新的领导者 出现,跟随者使用此打开与领导者的TCP连接 港口。因为默认的领导者选举也使用TCP,我们目前 需要另一个港口进行领导选举。这是第二个港口 服务器条目。
参考: - http://zookeeper.apache.org/doc/r3.1.2/zookeeperStarted.html