zookeeper中的QuorumPeerMain解析

在一个初级的hadoop与zookeeper集群中,当集群搭建成功后,你jps查看进程的时候,其他的进程都是比较熟悉的,比如:

但是对于zookeeper配置搭建成功后的一个jps你可能会陌生,如下图:

其实这是QuorumPeerMain是zookeeper集群的启动入口类,是用来加载配置启动QuorumPeer线程的。

QuorumPeer, 谷歌翻译quorum是法定人数,定额的意思, peer是对等的意思,那么QuorumPeer中quorum代表的意思就是每个zookeeper集群启动的时候集群中zookeeper服务数量就已经确定了,zookeeper是基于paxos算法实现的,那是一个唯一的分布式集群一致性算法,在zookeeper中将这一算法演绎为集群分布式协调可持续服务。在每个zookeeper的配置文件中配置集群中的所有机器

server.1=127.0.0.1:2888:3888

server.2=127.0.0.1:2888:3888

server.3=127.0.0.1:2888:3888

配置中每个server.X记录代表集群中的一个服务,QuorumPeerConfig会构建一个QuorumServer对象,其中的server.X中的X代表zookpeer的sid,每个zookeeper都会编辑自己的sid在dataDir目下的myid文件中,sid标记每个服务,在快速选举中起作用。

所以对这个进程不应该陌生,如果你要关闭,就直接zkServer.sh stop 就可以了。

 

posted @ 2017-12-08 20:07  高登军  阅读(22772)  评论(0编辑  收藏  举报