Disaster Recovery

Restriping disk arrays with X-RAID2

Like it or not, many storage products offer a proprietary RAID implementation. In this post, Rickatron explains the ReadyNAS X-RAID2 technology.

One of the good things about selecting storage technologies today is that there are plenty of options. Further, many storage systems don’t use the traditional RAID 1, RAID 5 and RAID 6 offerings. There are a few RAID technologies that are proprietary to a particular storage product. Two that come to my mind are NetApp’s RAID-DP which is loosely analogous to RAID 6 and Drobo’s BeyondRAID.

Recently in a few situations I have started working with the NETGEAR ReadyNAS series of unified storage products. Note the unified distinction, which means it can provide both file (CIFS, HTTP, NFS, FTP and more) storage as well as block storage via iSCSI. The ReadyNAS series provides the X-RAID2 disk protection mechanism. X-RAID2 is loosely equivalent to RAID 5 in terms of protection overhead, but it does have a few differentiating features.

First of all, X-RAID2 does not deliver a fixed-size logical unit. So, let’s take an array of three hard drives that are 750 GB each. This would present over 1 TB of usable storage space for all of the block and file storage protocols to consume from. But, what is cool about X-RAID2 as implemented on the ReadyNAS series is that you can add additional drives that are larger and both the usable storage pool will expand and the volume that started with 3 drives can be expanded to use the larger drives. Once this happens, a restriping technique is used. Below is an example I was working with -- Figure A shows a volume that had five hard drives while it is being restriped to include the newly arrived sixth hard drive:

Figure A

Restriping an X-RAID2 array

Click to enlarge.

Depending on the model, the ability to leverage large drives depends on available slots. This may be avoided with intentional failing out of a drive to restripe to a larger drive, however.

Leveraging disk technologies that can work with drives of dissimilar geometry may be a very welcome step given the recent shortage of hard drives and the associated increase in storage costs.

Have you used X-RAID2 much? I’ve used it in a few virtualization scenarios and have been very happy with it for the class of storage I’m using. Share your comments below.

About

Rick Vanover is a software strategy specialist for Veeam Software, based in Columbus, Ohio. Rick has years of IT experience and focuses on virtualization, Windows-based server administration, and system hardware.

3 comments
Neon Samurai
Neon Samurai

I recently traded up by replacing the existing drives one at a time with larger ones. Replace a drive, wait for RAID to restore the data. Replace another drive, wait for the data rebuild. Once all drives where replaced, it recognized the larger platter space and expanded the usable storage accordingly. All this without a single reboot. I'd recommend a UPS though as a power loss during a rebuild could end badly. On a technical note, it appears to be a software raid that behaves like a hardware raid thanks to the ReadyNAS OS. When I looked at the replaced smaller drives, they all had LVM partitions hosting the RAIDed data partitions. In terms of the OS itself, you can also go beyond what the factory install provides. It's a Debian based OS under the hood. My first addition was installing SSH and root access to manage files from command prompt; not to mention some scp/rsync happiness. (I wouldn't recomment 'apt-get update && apt-get upgrade' though unless you know what you are doing. It taught me how to re-flash the factory firmware though.)

deano-techrepublic
deano-techrepublic

Couple of questions ... If you have 3x 750GB drives and you add a single 1TB drive, does it utilize the entire 1TB of space ? That would imply some sophisticated apportioning of data across the drives in the array to balance things out. Check out unRAID from Lime Technology - pretty cool. It also allows different size drives, but fully utilizes them. Data isn't striped across them, it simply uses a large parity drive. That way any single drive can be pulled and the data on the drive is clean. Personally I use two Debian systems at home. The primary uses ZFS (currently zfs-fuse, though it's fully in the kernel now), and a backup system that uses normal software raid. SW raid allows differing sizes, but only uses the smallest that fits. It allows easy adding of new drives to the arrays. ZFS is a little more problematical to add new drives, but the benefits far outweigh the issues. 100% correct data goes a long way. D.

Neon Samurai
Neon Samurai

It's possible I didn't wait long enough for the expansion mechanism to kick in but I didn't see increased usable space until all drives where replaced with larger ones. It seems to base all drive partitioning on the smallest in the collection. Once all where replaced though, my usable space doubled in accordance with the doubling of drive sizes. With your Debian boxes, the software raid would make me nervious. Anything I've heard about raid recoveries going sideways always involved software. Raid is one of those things I want the hardware to manage independently of the OS. That may be just me though.

Editor's Picks