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
?
1条答案
按热度按时间z4bn682m1#
表单server.x的条目列出了组成zookeeper服务的服务器。当服务器启动时,它通过在数据目录中查找文件myid来知道它是哪台服务器。该文件包含服务器号(ascii)。
最后,注意每个服务器名称后面的两个端口号:“2888”和“3888”。对等机使用前一个端口连接到其他对等机。这样的连接是必要的,以便对等方可以通信,例如,商定更新的顺序。更具体地说,zookeeper服务器使用此端口将追随者连接到领导者。当一个新的引线出现时,一个跟随者使用这个端口打开一个到引线的tcp连接。因为默认的领导人选举也使用tcp,所以我们目前需要另一个端口来进行领导人选举。这是服务器条目中的第二个端口。
ref:- httphttp://zookeeper.apache.org/doc/r3.1.2/zookeeperstarted.html