Funding Cyrus High Availability
Paul.Dekkers at surfnet.nl
Sat Sep 18 03:16:22 EDT 2004
Ken Murchison wrote:
>>> Question: Are people looking at this as both redundancy and
>>> performance, or just redundance?
>> for performance we already have murder, what we currently lack is
>> redundancy. once we have redundancy then the next enhancement is
>> going to be to teach murder about it so that it can failover to the
>> backup box(s) as needed, but for now simply having the full data at
>> the backup location would be so far ahead of where we are now that
>> the need to reconfigure murder for a failover is realitivly trivial
>> by comparison.
> Actually what I was really asking, is are people looking for an
> active-active config and an active-passive config?
My vote is certainly for active-active...
And if feasible, I would also choose to have an equal role for both
servers. I think in this stage (altough maybe not if David's patch is
copied entirely) that this would be not so much work extra, but when
adding it later it seems much more work to me. (It's just a matter of
design I suppose: having two backlogs and synchronising them to the
other host. This is also what you want with an active-active situation,
it shouldn't matter who you're talking to.)
David Carter wrote:
>> In my sketch above (really not sure if it works of course) where both
>> have something like a backlog you can like "tail" that backlog and
>> push the update as soon as possible to the second machine. You solve
>> the thing you mention with delays while pushing updates to two
>> servers at the same time.
> Yes, that's exactly how my code works. Asynchronous replication (which
> Ken called lazy replication) is fairly easy to do in Cyrus.
> Synchronous replication, where you only get a response to an
> IMAP/POP/LMTP command when the data is safely committed to the
> replica, would involve a much more substantial rewrite of the Cyrus code.
I don't know the exact benefits of that solution, but I can also imagine
that this raises problems if one server is down. (You have to use a
backlog then anyway.) I think I care more about having two servers
active (with the option of active-down) and a good recovery mechanism
then if the synchronisation is lazy or not ;-) (and I think that it
might be easier to recover (when e.g. both servers crash) with a
backlog, but that's really up to the programmers.)
Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html
More information about the Info-cyrus