Go for a tower server with an external array.
Also, housing the disk array in a separate enclosure will go a long way to distributing heat and keeping as much of it as possible away from your $$$ Xeons. (Looks sexier too IMHO. Racks look like meh
. Two nice towers with all those blinkin' lights look ever so much cooler. (Run cooler too!)
Additional note: if your board supports it (and virtually all "server" mobos do) I would spend the extra to get ECC RAM. Especially if I was going to be provisioning for virtual machines, software RAID, or drive pooling. One less opportunity for unexpected surprises cropping up with ECC.
Many memory suppliers discourage people from using ECC since it will reduce performance marginally (1-2%) compared to non-ECC memory modules. But they're primarily addressing the desktop/workstation environment where (with current RAM products) it's not considered needed or desirable.
Servers, however, are a "whole 'nuther smoke." They're not just a tower PC loaded with drives and maxed out with RAM. With real servers, bullet-proof reliability, redundancy, and low-latency data bus engineering are more important than wringing the last fly speck of performance out of each of your individual components. You have to see them as 'one thing' rather than a collection of components. And they really are designed to be "set & forget" devices. You power them up - and "that's that" if
you did it right.
I've had servers run continuously for years on end. The only time they are were ever powered down was to add or replace a drive if they didn't support hot-swapping. Or (if they were Windows servers) to perform a required
reboot following a software upgrade. I've routinely had BSD/Linux servers go for well over three years without requiring a single reboot. I have one that's been rebooted only twice in seven years and is still going strong.
FWIW there's some disagreement in the "pro" community about whether or not ECC is "worth it" any more. It's split about 60-40 against last I paid attention to it. And it seems to be largely an age dependent thing. The young 'uns say we older guys aren't up enough on advances in memory engineering. We codgers (i.e. anyone over 40) say these youngsters are far too trusting when it comes to reliability claims; and haven't been around long enough to see all
the weirdness that goes down in a server environment to know.
The real truth probably falls somewhere in the middle.
So...I'm still inclined to spec ECC for a server. But I'm an "old guy." So maybe some other people might want to put their tuppence in in this one?