What are my recovery options if RAID architecture fails?

2

Okay, first of all I'm not all that au fait with RAID (but have read up on it), so here goes... I have 4 x 1.5TB Seagate SATA II drives, and hoping to enable RAID to cater for mirroring in the event that a drive (or 2) crashes. My 3 questions are:

  1. What RAID level should I be looking into - RAID 5?
  2. Will onboard RAID (onboard SATA) give me the same performance versus a RAID Controller card?
  3. Lastly (most importantly) what can I do to recover my data and the drive if any of the components contributing to the RAID array fail - like the motherboard or RAID Controller card?

My apologies if the title is a bit misleading as I have asked other questions, but i really didn't know what to call it!

Thank you (in advance)!

EDIT: Sorry, I should also mention that I intend to have keep a backup drive (external HDD) and run incremental backups to it at the end of every day.

EDIT2:: Okay, forget about question #2, as I found a really good article here explaining it.

Shalan

Posted 2010-11-08T06:26:32.857

Reputation: 257

Answers

2

  1. I'd recommend RAID 1+0 (Often referred to as just 10) if you have four drives. This provides the most protection against data loss and also gets you some additional performance. Basically, you will be mirroring a stripe. If your RAID controller doesn't support this, go with 5. You may see a performance benefit of 10 over 5 since it won't have to manage parity.
  2. Depends on the application of what you are doing. A dedicated card might show better performance. In desktop-class use. Server performance might have a better advantage. However, I've never used RAID 1+0 onboard, always with a controller.
  3. If the components fail; just replace them with an equivalent, if not duplicate controller. Controllers are easier to replace than motherboards. If a drive fails, refer to the controller's documentation about recovering the drive.

EDIT: Just to make sure, the article you referred to is software RAID vs. hardware RAID, not a dedicated controller vs. on-board.

EDIT-2: I suppose software vs. hardware has a little wiggle room in definition. You're is actually more common place when I think about it. "on-board" RAID on a desktop class motherboard is typically an emulation, vs. my definition, which is a hardware RAID controller integrated to the motherboard.

EDIT-3: OK, last edit. After reviewing the edits to your question, the mirroring functionality may not be needed if you are willing to accept up-to a day's worth of lost data. RAID 5 and 10 offer data recovery by a means of parity or duplication. If that isn't what you're after and all you want is raw performance, than RAID 0 may be a better option. In this case, if a single disk fails, you need to re-build the array from backup.

vcsjones

Posted 2010-11-08T06:26:32.857

Reputation: 2 433

Thanks for the reply vcsjones! Any particular reason as to why you have never used RAID1+0 onboard? Also, I thought that software RAID referred to onboard, and hardware RAID to controller cards (like Adaptec or LSI)? – Shalan – 2010-11-08T06:53:07.023

3One concern about dedicated RAID controllers is that you can't freely interchange them. If your controller fails, you can't just pick any new RAID controller... IMHO, that's a major weak spot in a hardware-based RAID setup. A company would just buy a couple of spare controllers right from the start to avoid this problem, but that would be too expensive for the average consumer. For consumers, a software-based RAID solution is, well, hardware-independent but at the cost of some performance because the computer itself (CPU) must deal with the RAID stuff. – Torben Gundtofte-Bruun – 2010-11-08T07:07:34.287

I'd updated my answer. In addition I've always used controller cards simply because at work I am able to. – vcsjones – 2010-11-08T07:07:45.990

Addition based on Shalan's comment: Hardware RAID means having either a dedicated controller, or a controller on the motherboard, taking care of the RAID stuff. In both cases, it's a physical thing: a controller chip in your computer. Software RAID means letting the operating system deal with it: you don't have a dedicated controller chip but instead the computer's CPU is doing the work (at the expense of slowing the rest of the operating system a fraction). – Torben Gundtofte-Bruun – 2010-11-08T07:11:42.710

Turned my answer into a wiki. Feel free to add additional information. – vcsjones – 2010-11-08T07:14:30.270

Thanx guys for both of your valuable inputs...much appreciated! I should add that whilst I am going to backup once a day as a precuation, I would also have need for mirroring I guess. What I forgot to mention is that I intend to run a small server for my small business and install VMWare ESXi 4 to run 3 VMs - 1 for Microsoft Exchange and SharePoint; 1 VM for Ubuntu Server (Database and general file serving); and 1 VM for Asterisk IPBX. I unsure on the exact architecture, but this is what I have in mind to do. – Shalan – 2010-11-08T07:22:47.470

If you will be running ESX on it, then you have to use a hardware controller, simply because ESX will "See past" any software solutions. At least that has been my experience. – vcsjones – 2010-11-08T07:30:11.187

@torbenbg - just to clarify...say you have an ASUS motherboard with 6 SATAII connectors and ASUS specify that it is capable of RAID 1/0/1+0/5...would that mean that it has an hardware-based "onboard" controller capable of native RAID support (configured thru the BIOS I suppose), which would therefore be similar to the likes of an Adaptec RAID Card that you would install into a PCI slot? Therefore Software RAID would mean that your OS would "run" your RAID array irrespective of what RAID levels the board supports? Sorry, I seem to be a bit confused :$ – Shalan – 2010-11-08T07:31:14.133

@vcsjones - WOAH! I didn't know that. I was looking thru a whitebox compatibility list for ESXi and noticed that my board (Intel DG45FC - http://ark.intel.com/Product.aspx?id=34685) was supported and therefore would not need a RAID card.

– Shalan – 2010-11-08T07:37:23.817

Okay, I feel a bit silly, as I just unearthed a problem based on my intended soultion - the board I have has 4 SATA ports built-in, and I have my 4 drives that I intend to ONLY store data on....yet I forgot about a drive for my Operating System/s! DOH! – Shalan – 2010-11-08T07:42:03.903

@Shalan - Just to clarify, that was with my experience using ESX 2.0. Maybe the tech has gotten better since then and that is no longer the case. – vcsjones – 2010-11-08T07:43:22.903

Hey vcsjones, sorry for the delayed response, but looks like you've helped me understand the RAID level options. I'm still ambivalent wrt a dedicated RAID card versus software RAID - I think its more vendor lock in that I'm concerned about, especially if the RAID array needs to be recovered...but thats more a financial decision. I'm going to post a question a little later regarding my proposed virtual architecture, but for now you've answered my question effectively. Thank you for your time and patience! – Shalan – 2010-11-08T11:51:30.283

2

First off, the article on hardware vs software is misleading (or at least out of date). Performance on modern hardware is usually similar - indeed I've had software RAID outperform a high end hardware RAID card. Also hot-swapping can be supported with software RAID.

That said:

  1. RAID 10/1+0 will give you the highest protection against disk failure and the fastest recovery time. RAID 5 will give you the most disk space and the fastest read performance (but the slowest write performance).
  2. See my comment above - it depends on your hardware. Personally I always recommend hardware RAID for boot devices since it is much easier to boot from a failed array with hardware RAID.
  3. If you're using hardware RAID then you have to replace it with a compatible card - at least from the same vendor and possibly from the same range (though if you're using RAID 1 this often doesn't matter). With software RAID there are no such issues.

Edit: I'd advise against setting up your boot array using any form of software RAID, but you'll probably be fine running a software RAID array for anything else (particularly if you're using RAID 10). Booting a degraded software RAID array can be challenging if you've not done it before. That said, if you're running RAID 1 for your boot array then most motherboard based fake-RAID is sufficient for this purpose.

Cry Havok

Posted 2010-11-08T06:26:32.857

Reputation: 3 486

Thanks Havoc, for the quick explanation of RAID 10 vs RAID 5. So would you advise against setting up a RAID array using the motherboard SATA connectors? – Shalan – 2010-11-08T07:53:12.640

Havoc, I am intending to set up a NAS device. The SATA drives will be only used as a datastore, and the OS (possibly Ubuntu Server or CentOS) will be booted off a 40GB SSD. Haven't figured out the connections yet. – Shalan – 2010-11-09T13:17:44.390