Date: Tue, 27 Sep 2005 13:25:26 +0200 (CEST) From: Oliver Fromme <olli@lurza.secnetix.de> To: freebsd-cluster@FreeBSD.ORG Subject: Re: Options for synchronising filesystems Message-ID: <200509271125.j8RBPQxk094107@lurza.secnetix.de> In-Reply-To: <BF443E79-045A-4ADC-956D-01DDEE64413D@lesmuug.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Isaac Levy <ike@lesmuug.org> wrote: > In effect, a terse example of how someone could use the Geom tools I > mentioned, to meet this requirement: > > + Setup mirrored disks across machines as discussed before > > + Mount a slice of that disk Read/Write on one machine (acting as > master) > + Mount that same slice Readonly on both machines, using Geom Gate, > and serve data from there. That doesn't work. You would need a cache coherency proto- coll for that setup to work correctly. Or mount it read- only _everywhere_ (including the master). If you have to perform updates, you would have to perform this sequence: 1. remount the master read-write, 2. do the updates, 3. remount the master read-only, 4. flush the caches on the slaves (umount; mount). But that means you'll have a short downtime each time you update things -- probably not what you want, especially if a redundant setup is the goal. Currently, the _only_ way to mount the same filesystem on multiple FreeBSD systems is NFS (or third-party software like CODA). Another alternative, as others have mentioned, is to duplicate or synchronize the filesystems on each server regularly (rsync, unison, whatever). > Eric, you are definately correct, that there's not really a disk- > level mechanism to maintain concurrent writes between volumes mounted > across servers using FreeBSD Not even concurrent reads and write (i.e. one host writes and the others read). See above. > (excepting NFS, which in this context, makes me say *yuck*). NFS certainly has its disadvantages, but works pretty well when set up in a reasonable way. > I guess I'm saying this is a big-picture computing problem IMHO, and > I don't know of a good solution here (though I'm curious about what > kind of work has been done in Dragonfly which is relevant?) So far, DragonFly BSD hasn't done anything regarding cache- coherency for clusters, though it is planned for the future, I think. So, as of today, DF doesn't provide a solution for the above problem either. However, Matt Dillon has worked on a journalling feature for UFS which might be helpful for the situation given by the OP. Not everything is implemented yet, but it _is_ already usable to maintain remote mirrors. On July 5th, Matt wrote: "I can now run a buildworld loop, and the mirror generated by the journal stays in synch (diff -r reports no differences if I idle the buildworld, wait a second or two for the journal to catch up, and run it)." Best regards Oliver -- Oliver Fromme, secnetix GmbH & Co. KG, Marktplatz 29, 85567 Grafing Dienstleistungen mit Schwerpunkt FreeBSD: http://www.secnetix.de/bsd Any opinions expressed in this message may be personal to the author and may not necessarily reflect the opinions of secnetix in any way. It's trivial to make fun of Microsoft products, but it takes a real man to make them work, and a God to make them do anything useful.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200509271125.j8RBPQxk094107>