Network RAID Storage: Proof of Concept
Posted by Motoma
I recently discovered a post on Hack a Day linking to a proof of concept how-to on setting up a software RAID on FTP servers. While the guide is a simple approach to running a network based RAID 5 configuration, a number of tools the original developer used are less than optimal. First, the set up requires both Windows and Linux, meaning you will either need two physical machines, or a virtualized machine in your configuration. The second, and larger problem is that it is restricted to RAID 5 and FTP servers. This article is my attempt to alleviate both of these issues.
The goals of this project will be simple: establish a software RAID configuration that supports all of the common RAID levels, works across network share protocol, works with any number of network shares, works with different types of network shares simultaneously, and is based entirely on open source software. Simple.
To start, this proof of concept has two network shares mounted an NFS share and an SMB share:
The difficult part of this project is the process of allocating space on the remote servers in such a way that you are able to feed them to mdadm as devices. Luckily, "everything is considered a file" in Linux, and devices such as hard disks are no exception. With hard disks considered files, there is no reason why files could not be considered hard disks. The first task to complete is to set up a regular file on each share, filled to the appropriate size. In this example, each "disk" file will be approximately 1GB:
References:
- http://www.hackaday.com/2007/12/22/virtual-raid-5-internet-storage/
- http://home.arcor.de/wonderer42/
- http://cs.joensuu.fi/%7Emmeri/usbraid/
- http://www.clarkson.edu/projects/itl/honeypot/ddtutorial.txt
Post your comment
Comments
-
This is the first step-by-step discussion I have found about how to set up network RAID. I am trying to do this for an iSCSI SAN I am creating. Being a linux newbie I am unsure about how to apply your solution to my problem. Currently, I have two CentOS servers running iSCSI acting as initiators and two storage boxes running iSCSI target. Ideally, there would be n storage boxes and using network RAID only n-1 boxes would be required for the data to stay available. I have successfully allowed both storage boxes to appear as disks via iSCSI on both the servers, now I have to use software RAID to make one network RAID device which I will then use inside GFS. It seems you are building a RAID device using files "masquerading" as disks, but I have iSCSI disks so should I create files that use all the dive space on my iSCSI disks and follow your steps or can I shortcut these steps as I have disks available? I intend to do some research to better understand what you are doing, but I thought there was no harm in asking. Thanks in advance for any help you can give.
Posted by Michael, 29/05/2008 1:16pm (3 months ago)
-
Is there a benchmark or something to see how well it performs?
Posted by , 29/05/2008 1:15pm (3 months ago)
-
Man, this is sweet, I've got a bunch of crap machines laying around and now I can use them to provide redundancy via a network RAID setup.
Thanks for the great article!Posted by chrisd, 29/05/2008 1:15pm (3 months ago)
-
Hi
I have realized the same concept with iSCSI protocol.
The last step is put the softraid under heartbeat control to have a fault tolerant system.Posted by , 29/05/2008 1:14pm (3 months ago)
-
This is just wonderful, you answered my question.
We have some brand new PC's in the office with disk space to spare. I thought what a waste and I have a shortage of disc space on the linux server I put together with abandoned parts. My first thought, was to use them as backup. Secondly I wondered if would be possible to use RAID to add some safety. I had no idea how to tackle this and lacked the time to research this idea.
You not only saved me the time I lack, but know now that it is indeed possible.
I'm eager to try out your proof of concept when I'm back at the office next week.Posted by , 29/05/2008 1:06pm (3 months ago)
-
This would be pretty sweet with gmailfs or similar "mount free storage" hacks, combining into larger container, potentially with redundancy for possible losses if spread wide enough. Might also cut back on time/overfrequent access by RAIDing over several sources instead of bottlenecking it through one. I'm going to have to play some, I never realized how cool software RAID had gotten. FUSE rocks so hard. Thanks for the tips.
Posted by , 29/05/2008 1:06pm (3 months ago)
-
why would someone find this offensive?
Posted by , 29/05/2008 1:05pm (3 months ago)
-
Hy, can I "implement" your proof of concept into my original please?
thanks, wondererPosted by wonderer, 29/05/2008 1:05pm (3 months ago)