Hi Vijay, It might not have been clear in my previous message, but I was suggesting that with three locations you can tolerate one DC going down, assuming you have votes across locations. We have performed some preliminary tests some time ago with ZooKeeper servers across different locations, and it looked good. Perhaps we should think about running a more extensive set of tests and making them available for reference.

Just in case you're interested, here is perhaps an interesting example of how you can tolerate one location going down with three locations. For each location, create a group of three ZooKeeper servers. In this setting, we need only two votes from a remote location, independent of where the leader is. For example, consider the following groups and servers in each group:

Group 1: A B C
Group 2: D E F
Group 3: G H I

If the leader is A, then it needs to collect votes only from two servers in group 1, say A and B, and two votes from some other location, say D and E in group 2 (corresponding to location 2). To make it work, all you have to do is create groups in ZooKeeper, which enables the hierarchical quorum feature.

This example is interesting because it enables the system to mask one server crashing in each group/location and a whole location going down, and requires one fewer vote compared to absolute majority, which would be five servers given that we have nine total.

Hope it is useful.

On Jan 14, 2010, at 11:00 PM, Vijay wrote:

Hi Falvio,

Yes i am concerned about the latency between the DC's (Across continents), We actually have 6 locations but how exactly are we going to do it if we
have the 3rd DC?


On Thu, Jan 14, 2010 at 1:46 PM, Flavio Junqueira <f...@yahoo- inc.com> wrote:

Hi Vijay, I'm just curious: why exactly you want all voting nodes in a
single data center? Are you concerned about latency?

It might not be possible in your case, but if you have a third location
available, you would be able to tolerate one location going down.


On Jan 14, 2010, at 9:12 PM, Vijay wrote:


I read about observers in other datacenter,

My question is i dont want voting across the datacenters (So i will use observers), at the same time when a DC goes down i dont want to loose the
cluster, whats the solution for it?

I have to have 3 nodes in primary DC to accept 1 node failure. Thats
but what about the other DC? how many nodes and how will i make it work?


Reply via email to