# Home server hardware recommendations

## lazloman

I'm looking at upgrading my hardware before my old server dies on me. I use my server for email, subversion, web and a couple of other things. I'd like to get a box that could last a few years and don't want to spend too much, < $500. I've been looking at maybe getting something brand new, but then again maybe I can find a quality used server. The hard drive is the most likely piece to fail, so in any case, I'll get a new one of those. Anyone have any suggestions on what I should do for a server?

Thanks

----------

## Shining Arcanine

Use ECC and RAID 5. It doesn't cost that much, but it should improve reliability. Also, use an Asus motherboard with a Seasonic PSU. Avoid Western Digital hard drives. They have issues in RAID5 unless you get the expensive models, which defeats the purpose of having a Redundant Array of Inexpensive Disks.

----------

## depontius

My servers are junk - flea market cast-offs.  The current server has a 50-cent flea-market motherboard, a case from an old computer my cousin gave my mom, hard drives from who-knows-where, Promise IDE card, video, etc, all from who-knows where.  My spare server is pretty much the same - not a bad idea to have a complete spare, when they're both junk.  Actually I'm rebuilding the spare now, because it blew a hard drive/Promise card last summer.  I rebuilt it promptly, replacing the bad parts, then delayed for a while installing Ubuntu server and thinking I was actually going to use it.  A few weeks back I got serious and installed Gentoo Hardened, again.  Actually my current server is getting a little flaky, which is what got me off my duff to get the backup server working.

Once the backup is fully up, it's going to become the prime server for a while, and the current machine is getting decommissioned.  Then the (amd64 w/3G) machine in the study is going to turn into the new server, and a new deskside is going into the study.  The current machine in the study is my main mythbackend, so it's appropriate that that become a server, anyway.

My servers do DNS, DHCP, IMAP, NFSv4 (/home), rsync for portage, http-replicator, router/firewall, etc.  The NFS space is on a RAID-1 mirror, and both prime and spare servers have identical RAID-1 mirrors, and I also use rsync to keep them matched daily.

It works, gives me something to do at hamfests and Flea@MIT, and is more than enough for a family of 4.

----------

## lazloman

RAID-5, huh, I hadn't considered that. That would certainly address my biggest concern, a failed HD rendering by box unusable.

----------

## Shining Arcanine

 *lazloman wrote:*   

> RAID-5, huh, I hadn't considered that. That would certainly address my biggest concern, a failed HD rendering by box unusable.

 

If you are willing to spend money on a fourth drive, you can setup a RAID-6 array and not have to worry about checksum errors following a drive failure. Bits can randomly change state, which could cause problems when a drive dies and you need to rebuild the array with a new drive. RAID 6 is designed to avoid that scenario. Good maintenance of a RAID 5/6 array requires that you regularly scrub the array via a cron job (i.e. echoing 1 into some file in /proc) to ensure that these sorts of issues are caught before a drive fails. Unfortunately, it is still theoretically possible for such a bit flip to happen right before a drive fails, which is why they made RAID 6.

Anyway, Newegg sells the Samsung HD204UI for $80 on sale, so a RAID 5 array with 3 of them would only cost $240:

http://www.newegg.com/Product/Product.aspx?Item=N82E16822152245

Then you could spend another $51 on memory:

http://www.newegg.com/Product/Product.aspx?Item=N82E16820139040

That would leave you with $209 for a motherboard and a CPU. Newegg has tons of sales on those. It is hard to make a suggestion for you. What is good for you will likely depend on how many cores you want. I assume that you have a case and PSU already. If not, you might need to go with cheaper hard drives to fit them into your budget.

----------

## depontius

Or question how much disk space you really need, and consider using RAID-1 instead of anything more exotic.  Big disks are pretty cheap these days.  RAID-1 increases read bandwidth just like RAID-0, but without the risk, and retains the write bandwidth of a single drive.  My impression is that RAID-5 and RAID-6 may do bad things to your write bandwidth, depending on alignment, granularity, etc.  The read bandwidth improvement of RAID-1 also multthreads, which the others don't.  (The different drives can keep their heads in different seek locations.)

----------

## lazloman

Wow! Lots of good advice here. Any recs on a good RAID controller? I'm looking at a couple of Promise cards, some good (FastTrak TX2300), some not so good (FastTrak TX4650).

----------

## depontius

 *lazloman wrote:*   

> Wow! Lots of good advice here. Any recs on a good RAID controller? I'm looking at a couple of Promise cards, some good (FastTrak TX2300), some not so good (FastTrak TX4650).

 

Spend enough money.  I know nothing of the cards you mention, and little about hardware RAID in general.  What I do know is that the cheaper RAID cards are really firmware RAID - also called Fake-RAID.  If you want true hardware RAID, the cards are quite a bit more expensive.  Rather than buying a Fake-RAID card just use software RAID under Linux.  From what I've heard, Linux software RAID actually outperforms Fake-RAID.  But the real reason for going with software RAID is that the on-disk formats used for Fake-RAID tend to be card-specific, proprietary, and all that stuff.  In other words, for many/most Fake-RAID cards, your disk data is tied to the card.  Lose the card, you've lost your data.  That's not true of software RAID.  I know, because in my exhortation to "junk" I've had Promise cards fail.  In one case I had one channel fail, so I disconnected my CDROM and used that channel for one side, the working side of the Promise card for the other, and it all recovered, rebuilt, and was on its way.

Incidentally, the card-specific admonition for Fake-RAID also applies to true hardware RAID.  Don't buy one hardware RAID card, buy two.  Either that or keep right on top of your backups.  If you don't have a spare compatible hardware RAID card, if you lose the one you've got, you've lost your data.  Don't count on being able to buy a matching hardware RAID card a few years down the road.  Plus if you have bought two and lose one, run on the replacement, but then start shopping around, either for a compatible replacement or for a new pair of cards.

----------

## norg

You should take a look at the AMD CPUs with a low TDP, they may be sufficient for your needs and are cheap. There are several with 2-4 Cores and around 2.5GHz with a 45W TDP. I'm using an AMD4850e on a mikro-atx board, 4GB RAM as my Fileserver that also manages some of other stuff. I prefer Software RAID, so you are not bound to a specific controller and can exchange the hardware easy. I use a SW-RAID 5 with five 1TB Samsung HDDs and one system HDD. And the whole system is full encrypted and the performance is enough for my gigabit network (i put a intel pci-e gbit card in it, to avoid low performance with onboard network).

You should specify your needs, what services are running, how much space do i need etc. and then create the suitable setup.

----------

## lazloman

I use my box as a mail server, subversion repo,web server, dns, ntp and backup. I know I'll quite a bit of storage, so I'll be looking in the TB range for drives. It's a low use machine as I'm about the only one actively using it although some of the services my passively use. I'm going to start pricing this stuff this weekend and hopefully, by the end of the month, I can start building a new box.

----------

## Mad Merlin

 *depontius wrote:*   

>  *lazloman wrote:*   Wow! Lots of good advice here. Any recs on a good RAID controller? I'm looking at a couple of Promise cards, some good (FastTrak TX2300), some not so good (FastTrak TX4650). 
> 
> Spend enough money.  I know nothing of the cards you mention, and little about hardware RAID in general.  What I do know is that the cheaper RAID cards are really firmware RAID - also called Fake-RAID.  If you want true hardware RAID, the cards are quite a bit more expensive.  Rather than buying a Fake-RAID card just use software RAID under Linux.  From what I've heard, Linux software RAID actually outperforms Fake-RAID.  But the real reason for going with software RAID is that the on-disk formats used for Fake-RAID tend to be card-specific, proprietary, and all that stuff.  In other words, for many/most Fake-RAID cards, your disk data is tied to the card.  Lose the card, you've lost your data.  That's not true of software RAID.  I know, because in my exhortation to "junk" I've had Promise cards fail.  In one case I had one channel fail, so I disconnected my CDROM and used that channel for one side, the working side of the Promise card for the other, and it all recovered, rebuilt, and was on its way.
> 
> Incidentally, the card-specific admonition for Fake-RAID also applies to true hardware RAID.  Don't buy one hardware RAID card, buy two.  Either that or keep right on top of your backups.  If you don't have a spare compatible hardware RAID card, if you lose the one you've got, you've lost your data.  Don't count on being able to buy a matching hardware RAID card a few years down the road.  Plus if you have bought two and lose one, run on the replacement, but then start shopping around, either for a compatible replacement or for a new pair of cards.

 

I'll echo this sentiment, I have a more detailed writeup over here that you may be interested in: http://skrypuch.com/raid/

Also, unless you have a convenient soundproof closet to throw your server in, make sure you get a QUIET machine. 5 years down the road you'll be hating yourself when you realize that machines only get louder with age. Make sure you get an aftermarket CPU cooler with a 120mm fan, all of the stock coolers (IME) are loud. Also, a 120mm case fan and a 120mm or 140mm PSU fan and you should be good.

----------

## lazloman

Cool dude,thanks!

----------

## Ant P.

I'm using a mini-ITX as a server for the quietness/low-power angle, runs git/ntp/smtp/imap/IM/http and a few other things.

All the advice I can give if you go that direction is that Jetway mobos are junk, their firmware is broken, go with another brand.

----------

## cach0rr0

bought a used HP DL380 off of craigslist for $150 for just such a purpose

i thought i could deal with the noise, because years back I had a pair of PE8450's, PE6300, and a PE2450, running in my bedroom. Of course, my electric bill on the cooling end was astronomical. 

Now that I'm an old fart, turns out no, the DL380 was too loud, and way way too hot. 

So, the point of bringing that up...I ended up just opting to deploy KVM guests for all of my server goodies (web, email, vpn). Has some advantages from a security standpoint segregating things off like that (as outlined here), plus it's portable enough, backing up the entire server is as simple as backing up that .img file. Since my desktop stays on 24/7, that works out perfectly. 

Something to think about. If you did that, then had an external server that was nothing more than a backup system (low specs, but reliable disks raid'd to all hell), might pan out just as good or better than buying new hardware (assuming of course,  that your desktop processor supports KVM)

----------

## Shining Arcanine

 *lazloman wrote:*   

> Wow! Lots of good advice here. Any recs on a good RAID controller? I'm looking at a couple of Promise cards, some good (FastTrak TX2300), some not so good (FastTrak TX4650).

 

Don't bother with a good hardware RAID controller. A good hardware RAID controller will likely cost more than all of the other components in your server combined and it will make your array less portable provided that you intend to standardize on Linux. Also, having an extraordinarily expensive raid controller goess against notion of having a Redundant Array of Inexpensive Disks.

With that said, an inexpensive hardware raid controller will likely have poorer reliability than Linux software RAID. I have heard that some controllers, even expensive ones, do not do a good job of dealing with write reordering, so the arrays that they are supposed to manage can fall into an inconsistent state. Supposedly, there are even more expensive units with batteries that can prevent that, provided that the batteries do not die before power is restored.

In my opinion, you should do just as well with with software RAID, a good UPS, ECC and apcupsd. Just get a few more CPU cores if you are worried about having to do the RAID calculations in software. I built a server recently that does software RAID 5 with 3 disks. It has a 3.2GHz AMD X2 Phenom 555 and I never see kernel CPU utilization exceed 30% in htop when doing disk intensive operations. With software RAID, you get portability, reliability and more importantly scalability. You won't have to worry about whether or not your $500 to $1000 microcontroller is the bottleneck on your system. Even better, there is no need to worry about losing support. The support you get (from Gentoo's bug tracker and the kernel mailing list) on day 1 is the support you will get x years later, well after a hardware RAID card's warranty will have expired. Even better is that you will have the option of migrating to RHEL and get RedHat's support should you feel the need to pay for that level of support.

----------

## lazloman

In case anyone's still watching this thread, I thought I'd post a followup on my decisions.

I went with an ASUS motherboard, an AMD Phenom II CPU, two Seagate 1TB drives setup as a linux software RAID 1.

It all seems to be running very nicely, thanks again for the advice.

----------

