Options for synchronising filesystems

Isaac Levy ike at lesmuug.org
Mon Sep 26 14:27:34 PDT 2005


Hi Eric, All,

On Sep 26, 2005, at 4:38 PM, Eric Anderson wrote:

> I think the original poster (and I at least) knew about this  
> already, but what I still fail to see is how you can get several  
> machines using the same data at the same time, and still do updates  
> to that data?  The only way I know of is to use a syncing tool  
> (like rsync) or a shared filesystem (like NFS, or CXFS, or  
> Polyserve FS, opengfs, etc), none of which run on FreeBSD.

Gotcha, I did skip somewhat to the side of the original requirements,

>
> What I read from above, is a redundant server setup, not a high- 
> performance setup (meaning multiple machines serving the same data  
> to many clients).  If I'm missing something, please fill me in..

I'm not certain that my intention was to provide the best answer, but  
to provide yet another set of tools to get the job done.

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.

- If the master machine dies, mount the volume Read/Write on the  
other machine


I'm not certain if this meets the requirements precisely, but I  
believe there may be a combination of these Geom-based utilities  
which would- and they are all actively under continued development.

--
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 (excepting NFS, which in this context,  
makes me say *yuck*).
Anyone with some spare time want to take up this problem as a new  
Geom project? ;)

However, based on my experiences with distributed database clusters,  
I believe it's fair to say that any persistent data (writes) are a  
very difficult task to get done right across a cluster- and maintain  
contextually sane levels of performance, (due to resource locking  
issues, mixed with network latency, etc...)
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?)

>
> Eric
>

--
Got a spare NetApp anyone?  My head hurts. :)

Best,
.ike




More information about the freebsd-isp mailing list