27

I am quite new for zookeeper port through which I am coming across from past few days.
I introduced with zookeeper port keyword at two occasion:

  • while configuring neo4j db cluster (link) and
  • while running compiled voltdb catalog (link) (See Network Configuration Arguments)

Then, I came across Apache Zookeeper, (which I guess is related to distributed application, I am a newbie in distributed application as well). hence question came in my mind:

  1. is there any implementation of apache zookeeper in above 2 scenarios ?
  2. What exactly this zookeeper port do internally ?

Any help would be appreciated, Thanks.

Aman Gupta
  • 5,548
  • 10
  • 52
  • 88

1 Answers1

50

Zookeeper is used in distributed applications mainly for configuration management and high availability operations. Zookeeper does this by a Master-Slave architecture. Neo4j and VoltDb might be using zookeeper for this purpose

Coming to the ports understanding : suppose u have 3 servers for zookeepers ... You need to mention in configuration as

clientPort=2181
server.1=zookeeper1:2888:3888
server.2=zookeeper2:2888:3888
server.3=zookeeper3:2888:3888

Out of these one server will be the master and rest all will be slaves.If any server goes OFF then zookeeper elects leader automatically .

Servers listen on three ports: 2181 for client connections; 2888 for follower connections, if they are the leader; and 3888 for other server connections during the leader election phase .

Seeta Somagani
  • 776
  • 1
  • 11
  • 31
Sandeep Das
  • 1,010
  • 9
  • 22
  • 1
    as per your this line `server.1=zookeeper1:2888:3888` is concern, did you mean that hostname is zookeeper ? because above configuration is present in neo4j coord.cfg file.. – Aman Gupta Aug 12 '13 at 12:13
  • Yes zookeeper1(zookeeper2,zookeeper3) refers to HostName – Sandeep Das Aug 23 '13 at 05:30