Slashdot Mirror


Distributed Data Storage on a LAN?

AgentSmith2 asks: "I have 8 computers at my house on a LAN. I make backups of important files, but not very often. If I could create a virtual RAID by storing data on multiple disks on my network I could protect myself from the most common form on data failure - a disk crash. I am looking for a solution that will let me mount the distributed storage as a shared drive on my Windows and Linux computers. Then when data is written, it is redundantly stored on all the machines that I have designated as my virtual RAID. And if I loose one of the disks that comprise the raid, the image would automatically reconstruct itself when I add a replacement system to the virtual RAID. Basically, I'm looking to emulate the features of hi-end RAIDS, but with multiple PCs instead of multiple disks within a single RAID subsystem. Is there any existing technologies that will let me do this?"

4 of 446 comments (clear)

  1. Re:NBD Does this - NBD server for windows by flok · · Score: 5, Informative

    And since the guy is also using windows-boxes, an NBD-server for windows can be found here:
    http://www.vanheusden.com/Loose/nbdsrvr/
    This version enables you to also export partitions/disks.

    --

    www.vanheusden.com - home of Multitail, HTTPing, CoffeeSaint, EntropyBroker, rsstail, bsod, listener, nagcon, nagi
  2. Intermezzo by mikeee · · Score: 5, Informative

    Intermezzo is designed for this and a bit more - if one of the machines is a laptop you can take it away and work on it, and it'll resync when you get back.

    It isn't particularly high-performance, from what I know, and may be more complexity than you need.

  3. Re:NBD Does this by dbarclay10 · · Score: 5, Informative

    Just to clarify what this guy is saying:

    1) Make all your machines NBD servers. NBD for Linux, NBD for Windows. NBD stands for "network block device" and allows a client to use a server's block device.
    2) Set up a master client/server (using Linux or something else with a decent software RAID stack). This machine will be the only NBD *client*, and it will use all the NBD block devices exported by the rest of your network.
    3) On the master set up in 2), create a Linux MD RAID array overtop all the NBD devices that are available.
    4) Create a filesystem on the brand-spanking-new multi-machine RAID array.
    5) Export it back to the other machines via Samba or NFS or AFS or what have you.

    Why does only one machine (the "master server") access the NBD devices, you ask? Because for a given block device, there can only be one client accessing it safely. Thus, if you want to make the RAID array available to anything other than the machine which is *running* the array off the NBD devices, you need to use something which allows concurrent access; something like NFS, Samba, or AFS.

    Hope that clears it up a bit.

    --

    Barclay family motto:
    Aut agere aut mori.
    (Either action or death.)
  4. Re:Intermezzo by laursen · · Score: 5, Informative
    Intermezzo is designed for this and a bit more - if one of the machines is a laptop you can take it away and work on it, and it'll resync when you get back.

    We have looked at various distributed filesystems for use in a clustered setup of webservers. We wanted to remove the single point of failure from a central NFS server - Intermezzo was one of the filesystems we had a look at.

    The idea behind Intermezzo is fairly simple and the documentation is good. The Intermezzo system looked like an ideal solution for our setup (Coda and OpenAFS are far to complex for use in a distributed filesystem on a closed internal net).

    We tested the system but sadly it's not really production stable and I can't advise that you use it.

    If you are looking for a SAFE solution then Intermezzo is not for you - you will just end up with garbled data, deadlocks and tons of wasted time ...

    My 2 cents.