Consider using 3 DCs, not 2. If you have 3 then you can stand to lose 1 of them. Think of each data center as an instance in a quorum. Always use odd numbers when possible.
-JZ > On Mar 6, 2017, at 2:42 PM, Le Cyberian <[email protected]> wrote: > > Thank for your replies. > > I see, in that way then failover won't be possible as if the main/major DC > is down. > > Is there something i can do using hierarchical quorum groups or observers ? > > I am quiet confused to achieve this setup somehow, as how someone would > build a failover over 2 dc's :-/ > > On Mon, Mar 6, 2017 at 11:08 PM, Van Klaveren, Brian N. < > [email protected]> wrote: > >> Or, an extra server in a third datacenter to break the tie. >> >> Brian >> >> >>> On Mar 6, 2017, at 2:05 PM, Jordan Zimmerman <[email protected]> >> wrote: >>> >>> This scenario is not possible. An even number of servers doesn't help >> you as a quorum in ZooKeeper is (N/2)+1. So, if you put 2 servers in each >> DC, a network partition would disable BOTH DCs. (4/2)+1 == 3. So, the only >> option is to choose one of the DCs as the main DC and put an extra server >> there. This way you could lose the "minor" DC. >>> >>> -Jordan >>> >>>> On Mar 6, 2017, at 11:34 AM, Le Cyberian <[email protected]> wrote: >>>> >>>> Hi Guys, >>>> >>>> I would like to have Kafka Cluster which is dependent on Zookeeper like >>>> many other great projects out their. Kafka would have 4 nodes as its >>>> cluster since their having even number is not a problem because it does >>>> leader election based its config it keeps in zookeeper. >>>> >>>> My scenario is having two server rooms on different floors having fiber >>>> connectivity with each other so network latency / lag is almost like a >>>> local connection. >>>> >>>> However, I would like to implement zookeeper cluster between both of >> them >>>> for auto-failover / redundancy purposes. So if one server room is down >>>> other should work properly. >>>> >>>> For example: on a 5 node zookeeper cluster distributed on both of the >>>> server rooms with 3 in one and 2 in other would give me 2 node failure >>>> tolerance, However if the server room which has 3 servers is down then >>>> ensemble would be broken and split brain. >>>> >>>> Can you please suggest how to achieve this to have failover / redundancy >>>> between two server rooms or two locations lets say ? >>>> >>>> Is it possible to run 3 node cluster in each server room and have some >> sort >>>> of master-master between them ? >>>> >>>> Thank for your time and helping out in advance. >>>> >>>> Kind regards, >>>> >>>> Le >>> >> >>
