Server Suggestion Request

Gavin McCullagh gmccullagh at
Mon Jun 30 10:20:18 BST 2008


On Sun, 29 Jun 2008, operationsengineer1 at wrote:

> specifically, i'm thinking about this one...
> which is on sale from dell.  i could upgrade from the 1.86 GHz to the
> 2.13 GHz pretty painlessly if it made sense for my use.

I would be more concerned with RAM than the particular CPUs.  Multiple CPUs
or multiple cores is a help of course, but the upgrade of RAM rather than
CPU is more likely to help I suspect.

> i'm not familiar with raid and they offer a raid option.  is that worth
> it?  can an open source software solution work nearly as well?  i was
> thinking that of setting up a nightly back up to the 2nd hd, but i don't
> really have any experience doing that or setting up and working with
> raid.  i would think the former would be easier to implement.

Most RAID is aimed at giving you greater reliability.  Hard disks fail all
the time and for most important systems it's not okay to have a couple of
days downtime while you source a new disk and rebuild.  With RAID1 all your
data is maintained on two disks so that if one disk should die, the other
will continue while you replace the dead one.

Choosing between hardware and software raid is not simple I'm afraid.

-- Consistency --
The trouble with RAID is what happens when you get a sudden system shutdown
(eg due to a power failure) while you're writing to the disk array.
Suppose the data is written to one drive correctly, but not yet to the
other.  When the system resumes, it's very difficult for the system to
determine which disk (if either) is correct.  So, you end up with some
ambiguous blocks where depending on which disk is read, you can get a
different answer.  An FSCK may not fix or even detect the issue.

Most software RAID (ZFS excepted) suffers from the above issue and some
cheaper hardware RAID cards do too.  The better hardware raid cards include
some RAM and a battery.  What happens is that the data is first written to
the RAM, then the card takes responsibility for writing to the disks.  If a
power failure occurs, the state is maintained in the RAM (this is why
there's a battery) until the system comes up again, at which time the write
gets completed.

So decent hardware raid cards are better at maintaining the consistency of
your disk array.  

-- CPU load --
Linux software RAID is a simpler approach where linux itself maintains the
data on the disks.  If it's raid 1, that means doing each write twice and
reading from whichever disk is convenient at the time.  The duplicate
writing does add some load to the system.  If you're using RAID5 or some
other more complex raid, you incur further CPU load as the processor has to
calculate checksums which would otherwise be done by the RAID card.

-- Management --
The simplicity of linux software raid has benefits however.  You need to be
notified if a disk fails so that you can replace it promptly.  You then
need to be able to sync the array onto the new disk with minimal downtime.
Ideally, you'd like to be able to remove the disks, place them in another
machine and easily reconstruct the array.  The simple software raid
approach makes this stuff very straightforward and the fact that it's all
done with standard available packages on linux makes all of this stuff
easier.  With most hardware raid cards you'll need to locate and install a
proprietary piece of software to monitor the raid array for you.  That can
be quite awkward.  If the hardware raid card itself fails, you may not be
able to recover the data from the disk without replacing that card with an
identical one (which isn't always easy to source several years after).

If you're very concerned about the consistency, hardware raid is probably
the way to go.  Otherwise, linux software raid is very thoroughly tested
and quite simple to setup, use and maintain.


More information about the edubuntu-users mailing list