Stupid RAID question

Lennart Sorensen lsorense-1wCw9BSqJbv44Nm34jS7GywD8/FfD2ys at public.gmane.org
Tue Oct 4 21:33:48 UTC 2011


On Mon, Oct 03, 2011 at 08:44:09PM -0400, Alejandro Imass wrote:
> Usually you want to separate your booting OS from your RAID volumes.
> It's actually standard practice.

Standard practice on servers with hardware raid controllers and a lot
of disks.  Often the OS disks are a different performance characteristic
than the data drives too.

> Again it depends on what is your goal: reduce risk, performance, size
> of the array?
> 
> RAID 10 usually provides the lowest level of risk and the simplicity
> greatly outweighs RAID 5 in most situations where you have a small
> number of spindles. Anything less than 10 drives I would usually go
> with RAID 10 despite the "less" space (not actually that much less).
> In RAID 10 with just 4 drives you can have one drive fail on each side
> and the array is fully functional. In RAID 5 any 2 drive failure
> renders the array unusable, you will need to rebuild, etc.

Raid 5 takes a lot of CPU unless you have a hardware raid controller or
other xor engine to do the lifting.  RAID 0 and 1 are completely trivial.
So yeah raid 10 is a nice way to get the performance of stripping and
the reliability of mirroring without the overhead of xor calculations
of raid 3+ (usually 5 or 6), but at the cost of some disk space.

> Regarding Linux software raid in particular, I had a very bad
> experience with mdadm/RAID 5 in the past. I mean, it works in the lab,
> but in a real world scenario, it will bite you in the ass, so I
> wouldn't touch it with a ten foot pole. But RAID 10 is usually very
> simple and straight forward, very stable and very fault tolerant
> especially if you have S.M.A.R.T. working. With cheap commercial
> drives you can bet that all your drives will fail almost
> simultaneously, so it's very common for 2 drives to fail in any cheap
> array, one right after the other.

raid 5 with mdadm has been running fine for a number of years for me,
including a few disk migrations (from 500GB to 1TB drives on a live
system hotswapping one disk at a time and rebuilding).

> Furthermore, if the application is random-write intensive (e.g. RDBMS
> storage) RAID 5 will kill the performance of the DB unless it's a very
> large SAN implementation with *very* professional hardware. Disk
> drives are relatively cheap nowadays and RAID 10 is being preferred
> all across the board for many reasons, especially for slow and
> unstable software raid.

Certainly getting the filesystem block size and the raid stripe size
matched makes a huge difference, and small random I/Os hurt raid 5.

> My real world 0.02: If you are limited in budget for a real hardware
> RAID it's usually best to stick to raid 1 or raid 10 with a small
> number of spindles. For example, with a relatively cheap and good
> quality 1000 watt power supply (e.g. Agiler) you can easily fit 5 SATA
> drives: 1 for boot and 4 for a raid 10 array. Some boards still have
> the IDE port which is ideal for the boot disk.

I am personally not willing to have any disk without at least raid 1,
and that includes boot.  I value my time.

> As to having a separate boot disk versus booting directly on the
> array, I would almost always have a separate boot disk but it's a
> question of choice. A single point of failure for the OS is OK IMHO,
> but it's never OK for your data!

I don't think any single point of failure when it comes to disks is
acceptable.  Disks are too cheap for that.  Boot should be raid 1
at minimum.

> Hence the 3-layer separation is usually good practice: (a) base
> system, (b) application software, (c) data.
> 
> Boot drive will only be used for that: boot and you can even enable
> and setup spin-down on that particular drive.

I am not wasting a disk interface for something just to boot the system.
I suppose a USB key could be acceptable and then boot from USB.
But still, I really couldn't be bothered.  Booting from software raid 1
has been super reliable in linux for over a decade now, why not use it?

-- 
Len Sorensen
--
The Toronto Linux Users Group.      Meetings: http://gtalug.org/
TLUG requests: Linux topics, No HTML, wrap text below 80 columns
How to UNSUBSCRIBE: http://gtalug.org/wiki/Mailing_lists





More information about the Legacy mailing list