I’ve been thinking about finding a good way to store all of my media content at home. This would include all my DVDs, music, pictures, data backups, etc. I started planning and building a large network attached storage device a couple of months ago, and it’s finally done. Here are the specs:
- 1 terabyte of storage
- Gigabit ethernet (data reads are up to 100 GB/s)
- Supports SMB, AFP, WebDAV, and FTP
- Costs less than $3,000 and uses off-the-shelf parts
I wanted this server to be cheap, fast, and reliable. The first decision I made was to use IDE storage rather than SCSI. I selected Western Digital 200GB drives which I purchased over a period of three months at Fry’s Electronics combining various rebates to pay about $150 for each one. I purchased seven drives in all for a total of 1.4TB of raw storage capacity. RAID-5 was the logical way to combine these drives in a way that was reliable and maximized storage space. My biggest problem was actually getting the RAID setup.
I had initially planned on using the software RAID-5 implementation in Windows 2003 Server, but that failed. The problem wasn’t Windows, it was the IDE controller cards. These drives came with Promise Ultra100 TX2 IDE/100 controller cards. I used three cards with two drives connected to each card (the cards have two IDE interfaces each), but I could never get Windows to successfully build the RAID and kept getting errors in the system Event Log when trying to read/write from the drives. Finally, I called Promise and they told me that they don’t support having more than one of their cards in one machine. Uggh. I even searched their website and the included documentation for any such limitations, but found none. Back to the drawing board.
The only solution was a hardware RAID controller card. After doing some research, the 3Ware Escalade 7500-8 turned out to be the right choice. It’s compatible with Windows 2003, supports up to eight IDE drives, and has a very fast hardware RAID-5 controller. It was a breeze to setup a six drive RAID-5 volume with one additional drive as a hot spare using the bios on the card. The formatted capacity of the six drive RAID-5 volume was 931GB.
The rest of the system is comprised of the following components:
- SuperMicro 742i-420b rack mount 4U case with seven internal IDE bays and a 420W power supply.
- Intel D875PBZ motherboard (800MHz bus, Serial ATA, gigabit LAN)
- Intel Pentium 4 2.4C processor (2.4GHz, 800MHz bus, Hyper Threading)
- Western Digital Raptor boot hard drive (36GB, Serial ATA, 10,000 RPM)
- Sony CDU5211 black internal CD-ROM drive
- Floppy drive (crucial for drive/controller bios upgrades)
- ATI Radeon 7000 graphics card
- LinkSys 5-port gigabit ethernet switch
That was all the involved hardware. There are a few things to note if you intend to build a similar system. Most of the Western Digital drives on the market today need a bios upgrade to work reliably in a RAID. You need a floppy drive (have too boot into DOS) to do the upgrade. It’s better just to make sure you bought a drive that was manufactured after March 25th, 2003. Also, Intel’s drivers for their desktop boards don’t seem to support Windows 2003 Server.
I’ve got a about 200GB of content on the server now, mostly recorded HDTV shows that I haven’t had time to watch yet. I’ll also be backing up my DVD’s to this server. My client machine for browsing/viewing all the content stored on this server is a Windows XP Media Center Edition PC. It has an incredibly easy interface for watching/recording TV, viewing photo albums, listening to music, and playing DVD’s. There are also many cool innovations planned for future updates of this version of Windows!