
how-to block ads
|
|
Uniqs: 1344 |
Share Topic  |
 |
|
|
|
 | Home File Server Tips and Tricks Recently, I had a need for some extra storage and thought it was about time I get a small home file server up anyways. I have a small bit of experience building raid arrays in the past and thought I would use what I know and build on that knowledge with something new. My goal was to build a cheap and reliable raid 5 array to host all my media files over the home LAN.
Raid type considerations: The first thing I did was look at the methods that I could use to build the array. There are three main raid types that I took into consideration: host-based raid, bus-based raid and software raid.
•Host-based raid: These arrays are very cheap and easy to build. All one needs is either a mainboard with a raid enabled south bridge (Intel Matrix, nvidia raid, ATi raid) or a pci/pci-e add-on card that uses a host-based controller like the JMicron or Marvell. The read performance is generally very good unless the array is in a degraded state. The write performance is no where near as good has a hardware based solutions but should be adequate for a gigabit network. However, if the array is degraded, the write performance goes down the drain. Because a host-based raid controller uses the CPU to calculate parity and route all this data through the south bridge, the south bridge will get saturated and rebuilding a degraded array could take days if the array is big. Unexpected system crashes or system power downs will cause the array to get degraded and prompt the controller for a rebuild/check. Some times a mainboard BIOS update will also update the raid boot ROM causing the array to fail.
•Bus-based raid: Arrays built using a dedicated XOR engine and dedicated I/O controllers on an add-on card, usually PCI, PCI-x or PCI-e. These arrays offer the highest level of performance in terms of read and write. Reliability is also very high if a battery is installed to keep the raid controller cache alive during unexpected system down time. However, these arrays are very expensive and often have compatibility problems when installing the raid controller on consumer grade mainboards. If the controller were to fail, the array will most likely be lost unless the same raid controller can be found and replaced. Rebuild of degrade arrays are generally very fast. What takes a host-based raid days to rebuild will only take a few hours for a hardware raid controller.
•Software raid: Array built entirely on software. There aren't any specific hardware requirements. The south bridge doesn't need to support host-based raid and no hardware raid card is required. What it needs is an operating system that supports creating a raid 5 array and a mainboard that has a lot of SATA ports (can be fixed with a PCI/PCI-e SATA controller but will add to cost). The read performance should be on par with the host-based solutions but the write performance often depends on the operating system and is usually slower than host-based raid. Unexpected system crashes and power offs will cause the system to rebuild/resync/check the array leading to a degraded level of performance. If your mainboard or controller were to die, you can keep the array as the array isn't bound by hardware. Soft raid can be had for next to nothing if one already owns a copy of Windows XP or knows how to run a Linux distribution but could be a bit expensive if one decides to use a more fancy operating system.
After much deliberation, I decided to go with the software raid solution using Windows 2008 Server (can be done with Windows Home Server or Windows XP with a bit of registry modification). Please note that if one decides to do the Windows XP mod, the array can't be transferred to 2003 Server or 2008 Server.
Since now I know which direction I am headed, I went ahead and check what hardware I could get my hands on... on the cheap. The requirements I had in mind were: low cost, low power and lots of SATA ports. I had a CM Elite 330 sitting around that I used on occasion and it has an old E6300 processor in it that I could use and seeing how I can use it as an excuse to upgrade it to an i3 setup, I went and gutted the CPU, heatsink and RAM. I went to work the next morning asking around for a cheap socket 775 with at least 6 SATA ports and it happens that my manager has one (ASUS P5E-VM HDMI) that he doesn't use... bingo, freebie The case was pretty easy as I recently saw the VSK-2000 on demo and though it would make a great file server case. Sure enough, I picked it. Now the next biggest decision is the hard drive. I had 3 different hard drives in mind: Seagate Barracuda LP, Samsung Spinpoint F2 Ecogreen and Western Digital Green. The Seagate LPs would offer a bit more performance over the other two option as it has a 5900RPM spindle speed. This wasn't a bigger seller for me because I am just using the drive as storage and I wouldn't see any more read speed than what I can get over the gigabit network. The recent firmware problems with Seagate didn't inspire much confidence in my to use them at the moment... mind you I currently have four 1.5TB 7200.11s in raid 5 with no problems. I am not a great fan of Samsung drives because most of the Samsung drives I own thus far developed bad sectors after a year of use and required RMA.
The Western Digital Greens sparked my interest when the 4K advance format versions shown up. Why are these drives interesting? Well, they have a 4Kbyte physical sector layout! This means that the 32bit sector addressing limit on the MBR that forced a 2TB limit on disk/array size is no longer valid and I can use some of my legacy boxes running Windows XP to read the 5.5TB array without any additional changes. The use of a GPT partition is not required! The Western Digital Greens as great as they are with the 4K sectors aren't exactly without faults. During my build, I found two interesting problems with the WD Green drives and I believe they would prove extremely useful for those of you who are looking to use these drives in other raid configurations. •The Western Digital Green uses a feature called Intellipark that will park the read head after a set idle threshold. On the drives I received, WD15EARS, the threshold was set to 8 seconds. In raid configurations, this can lead to excess LCC (load cycle count) very quickly. Some people believe this will degrade the drive as the LCC increases over time. This wasn't a specific problem related the the new 4K sector drives as it was first discovered with the Green drives first released by Western Digital two years ago. Luckily, Western Digital, after much complaint from general users, released a small tool called WDIdle3 that will disable (set the threshold to a longer period of time) the Intellipark feature. The tool works on the WD15EARS drives. •The next problem has to do with TLER (time limited error recovery). This feature is useful in raid configurations as it sets a threshold on the amount of time a drive would try to recover from a read or write error and thus avoid stalling the whole array for extended periods of time. This feature was originally meant for the RE series of drives from Western Digital but some people discovered that this feature can also be enabled on some consumer grade drives as well with a tool called WDTLER. This included the Western Digital Green drives. However, it looks like Western Digital finally pulled the plug on the feature on consumer grade drives as I am unable to use the tool with my WD15EARS drives.
The final build is as follows (for reference): ASUS P5E-VM HDMI - $0 Intel Core 2 Duo E6300 - $0 G.SKILL DDR2-800 2x1GB - $0 Western Digital Raptor 75GB (OS) - $0 Western Digital WD15EARS Caviar Green x 5 - $118 each LG IDE optical drive - $0 ANTEC VSK-2000 - $40 ANTEC Earthwatt 380w - $0 APC Backup-UPS ES 550VA - $45 Windows 2008 Server STD /w SP2 - $300 Total after tax comes to ~$1100
Server power draw from wall (idle): 85w (The E6300 is not very efficient) Server power draw from wall (full CPU load): 100w Server power draw from wall (read/write): 86w-90w
I had to make some SATA power cables to make the build look clean, other than that, the build was pretty easy to pull off:
And here's what the final product looks like:
Here are some interesting pieces of information I found out about running a software raid under Windows: •Unlike host-based raid and bus-based raid, the Windows soft raid doesn't allow the user to setup a write-back cache. I believe Windows does perform some write caching during writes but can't be enabled/disabled by the user. •Unlike host-based raid and bus-based raid, Windows will not allow the user to set a stripe size. And this actually took me a bit of digging to find out: The default stripe size Windows sets is 64K.
And there you have it folks, a home file server on the cheap! I hope some of this information will prove useful for some of you. | |  elios join:2005-11-15 Springfield, MO | why not use Windows Home Server cheaper and better for a home network setup | |  KanebrakeHendricks MotorsportsPremium join:2002-03-12 | Nice build but as elios said why not look at WHS? | |  OctaveanPremium,MVM join:2001-03-31 New York, NY kudos:1 | reply to Chrno Cleanest build I have ever seen hands down. Beautiful work really! | |  | reply to elios My original intent was actually to run WHS on the box but at the end I needed Server 2008 or run my next project of sorts. Besides this, I need a fallback plan in case I lose two drives at the same time because of drive time outs or something unexpected. If this were to happen, I would lose the array and I would need to run some type of recovery software on the drives if the array can't be recognized by Windows. The recovery software will not run in WHS, unfortunately.
Running WHS would be a very cost effective solution but I just needed more. As I have mentioned in my original post, one could even hack Windows XP to make this work 
@Octavean Your words are too kind, thank you. | |  elios join:2005-11-15 Springfield, MO | the WHS software JOBD has its own recovery for stuff and imo you really dont need RAID like that for a home server maybe 1 but not a big array like | |
|