You can use a mysql master-master setup to solve the problem of the single database. The trick is to use auto_increment_increment and auto_increment_offset so that you're auto_increment never gets screwed up. You can find really good documentation on onlamp.com under advanced mysql replication*. I use the following settings: auto_increment_increment = 10 auto_increment_offset = 1 on db10 and auto_increment_increment = 10 auto_increment_offset = 2 on db20. This means you can scale to a replication ring of max 10 nodes.
You make one master at datacentre 1 and the other at datacentre 2. Let all the mogilefsd's connect to the local database or use heartbeat to switch them over. * http://www.onlamp.com/pub/a/onlamp/2006/04/20/advanced-mysql-replication.html Arnoud Vermeer On Thu, May 22, 2008 at 1:37 AM, dormando <[EMAIL PROTECTED]> wrote: > MogileFS does replication between datacenters. There's still a single > database, but you can work with that a bit. > > In trunk there's code but no documentation for it. Basically you configure > network zones, then use a specific replication policy to say how many copies > you want in each network. The trackers will return paths "local" to that > client. > > There're no docs yet, but we run it in production and it works okay. > Fixes/updates coming, and it's not hard to set up if you want to test it in > a dev setup. > > Also, we got your mail three times :) > > -Dormando > > > William Francis wrote: > >> * sorry if this comes through more than once. I sent a few hours ago >> but it hasn't shown up on the list yet. gmail's IMAP has been weird >> today :-/ >> >> >> We currently have mogilefs running quite satisfactorily for our >> service and we're growing into a second datacenter initially for >> disaster recovery but eventually load balancing as well. After a >> couple hours of searching and looking through CPAN I've noticed that >> geographic replication seems to be something that has been discussed >> several times in the past (here and elsewhere) but I've been unable to >> locate anything that suggests the best approach to take for our >> situation. Did I miss something or is this still in the realm of 'gee >> that'd be neat' but there's no generally accepted way to do it and >> it's just been hacked together somehow each time by people who need to >> solve this problem? >> >> Any pointers greatly appreciated and thanks for something that works >> beautifully! >> >> Will >> > >
