64-bit 1TB File Server (Or, 'How to dispose of $2k')
For roughly a year now, I’ve been tweaking the specs on a 1TB file server I keep meaning to build. When I started the project, I was confined to artemis’ meager ~30GB RAID storage. I added a 120GB RAID 1 volume running off a Highpoint RocketRaid PATA RAID controller connected to aragorn, which helped a little. Unfortunately, aragorn ate shit and died, and one of the 120GB drives in the RAID array seems damaged, as I can’t duplicate the primary drive onto the secondary now that I’ve moved the controller and drives over to boromir.
When I upgraded to prospertine, with 3×75GB Western Digital 10kRPM SATA drives (two volumes; 1 RAID0 volume @150GB, and one POD volume @75GB), the situation improved, but I’ve already maxed prospertine out, primarily with my VMWare virtual machine collection and files I pulled of the ailing 120GB array on boromir.
With my digital photography habbit getting worse, my compulsion to create VMs growing more pronounced, and my insatiable appetite for ISOs of pre-release MS software and new games, my disk space situation is dire. It may be time to make the leap into terabyte land.
The latest config, as of right now, is a Prescott 531 processor (chosen for a combination of EM64T 64-bit extensions, hyperthreading, and price), an Intel server mobo based on the E7221 chipset, a Highpoint RocketRaid 2220 SATA-II RAID controller, and five WD Caviar 250GB 7200RPM SATA II disks. I’m also throwing in some GigE gear; prospertine has on-board GigE, as does the mobo included in this config, and I’ll want that speed if I’m to offload a bunch of data onto a network share.
The plan is to create a single RAID 5 volume, which lacks the blistering performance of RAID 0, but by distributing parity information across the volume, provides the redudancy I require. Under RAID 5, a volume with n same-sized disks with m bytes per disk has a usable capacity of *m bytes; in other words, you lose one disk’s worth of storage to the parity blocks.
Given this math, my five 250GB drives will provide an even terabyte of usable storage. The other Seagate Barracuda you see in the wishlist is to replace the failed drive from aragorn’s/boromir’s array: I’ll be using a RAID 1 volume composed of the two 120GB PATA drives as the system drive for the new file server, so I need them working.
I’ll run FreeBSD, either 5.4-RELEASE or 6.0-RELEASE, depending upon what’s available. FreeBSD supports the EM64T 64-bit extensions, so I’ll be able to run in 64-bit mode. FreeBSD is also supported by Highpoint, which provides both binary and source versions of its drivers.
I could run Slackware Linux instead, but as Linux has emerged as the bohemian rebel OS of choice, I’ve found myself drawn to the niche BSD OSes instead.
I considered a Pentium D (dual-core), which has alot of appeal to me, but the increased cost and power requirements didn’t seem worth it. I also considered AMD’s 64-bit line, but I’m less familiar w/ the ancillary components (mobo etc) so went w/ what I know.
I found a nice X-Alien case, with a huge 450W power supply. I used a power supply calculator to estimate my power needs, since I was concerned a total of 7 SATA drives would overload a normal PSU, but I was surprised to find an estimate of slightly over 300W. I guess those modders w/ 500W PSUs are running 200W video cards? Perhaps SLI configs really suck down the juice.