There's 3 ports that matter to Zookeeper and all 3 must be different.
1) Client port - where the clients connect.
2) Leader port - the other servers connect to the leader on this port - only
listens while the server is elected leader.
3) Quorum port - used for leader election and voting and things like that
between the Zookeeper servers to keep their data consistent.
If My config looks like this :
Then that means each server needs 2181 open for clients, 3555 open for when
that server is the leader and 4555 open for all quorum communications. Your
errors look like you have the leader port and quorum ports switched or
firewalling in between. It sounds like no quorum is achieved and that's why
Zookeeper is not functioning. If you have 3 servers in your ensemble,
achieving quorum requires 2 of them to be up and communicating with each
other over the proper ports.
In other words, make sure it doesn't look like this:
server.1=server1:2181:2181 <- WRONG
Anything where the ports are shared between functions or otherwise unable to
communicate with each other will break the ensemble.
View this message in context: http://zookeeper-user.578899.n2.nabble.com/Zookeeper-cluster-failing-tp7349092p7577991.html
Sent from the zookeeper-user mailing list archive at Nabble.com.