Is it possible to assemble the same Linux Software RAID0 array two or more times simultaneously? The idea would be to let one machine assemble the block devices with Read/Write Access and to let additional machines assemble the block devices with Read Only Access.

You might think this is a ridiculous question but I have discovered the following. If I:

   -- take a Server with two sets of 12 drives, each set connected to a
   Hardware RAID controller and configured as a RAID-5 Array
   -- export each 12-drive array as an individual iSCSI Target with IET
   or SCST
   -- connect the Targets to a Client machine and stripe them together
   as a Software RAID0 ON THE CLIENT MACHINE


I can get about 700 MB/sec writing to the Server and over 600 MB/sec reading -- with blockdev and other settings optimized. I'm talking about writing one stream of data and reading one stream back.

On the other hand, if I stripe the two Hardware RAID devices together ON THE SERVER and export them as a single Target, I only get about half the read and write performance on the Client.

Ideally, I would like to get to "Two Target Performance" with just "One Target" and I'm attacking this problem at the level of the iSCSI Target and Initiator software, as well as at the Network level. BUT if I can't solve it in any of these places, I'm wondering if there might be a way to Assemble the same Software RAID two or more times simultaneously.

Currently with the iSCSI Enterprise Target (and a couple of other Linux Targets), it is possible to allow one Client to connect to a target with Read/Write access and to give all other Clients Read Only Access. SO, if I create a Software RAID on the Server and export that as a Single Target, it is possible to give multiple users simultaneous access to the Target. However, as I said above, the performance is not optimal. '
'
If I create a Software RAID on the Client out of TWO targets, the performance is great. But now it seems much more complicated for two or more clients to access the data, because each client has to Assemble the Software RAID out of the same two Targets. And only one can have Write Access.

My question is, is it possible to Assemble a RAID if you can't write anything to the block device or touch its metadata (i.e., to mark that it is clean or dirty whatever gets written when the RAID is Assembled). In my first attempt to test this I tried making the Targets RO, but mdadm gave me a segmentation fault when I tried to Assemble the RAID0. And then when I made the Targets R/W again, one of them was missing its raid superblock and mdadm couldn't assemble it.

Alternately, is there a safe way to Assemble the same RAID 0 two or more times but only mount it R/W ONCE, and in all other instances mount it RO. What happens to the RAID metadata if you do that?


Andrew

--

EditShare -- The Smart Way to Edit Together
119 Braintree Street
Suite 402
Boston, MA 02134 Tel: +1 617.782.0479
Fax:  +1 617.782.1071

-
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to