As I previously mentioned, Windows Home Server is all but dead to me now that Microsoft is killing the Drive Extender technology. So the search was on for an alternative. As the name of this post implies, I’ve made a decision. Here’s how I came to it.
Just days before Microsoft’s announcement I wrote about how I use Windows Home Server. My primary use is for file storage. Every file of any significance is on it, including my iTunes and Video libraries. Music and Video are on the server simply as files, there’s not management/streaming software actually running in the server. I also use it for PC backups but since all my data is on the server it’s not a critical piece. I’ll want to do something in case I need to rebuild my PC, but it doesn’t have to be something the server does.
The other requirement is that it needs to work with my new hardware. Moving Windows Home Server V1 to the new hardware is a viable option, at least for the next year. So anything I looked at was compared to WHS v1.
I’ve also been researching ways to manage my music and video libraries, which is currently done with iTunes but I haven’t seen anything, for any OS, that has me excited. So at this point what I want is flexibility.
So to to sum up my requirements:
- Lot’s of file storage. I currently have 5TB worth of data and expect dramatic growth in my video, music and photo libraries. My new hardware can hold 10TB before data protection under WHS. (I turn on duplication for everything)
- Good data redundancy. I doesn’t count as a backup, but hard drive failures will occur at the worst possible time so I want the files fully accessible should a hard drive fail. The new hardware has 12 drives, the odds are against me.
- The files need to be accessible from both Windows and Macs. Might as well throw Linux in there too.
- No new hardware needed.
I looked at Amahi Home Server and it seems interesting. But I decided not to test it out. It is on my list to look at if I get a chance, but I’m not willing to commit to a full blown managed server. It has a lot of features, many I won’t use. It seems to have a level of complexity I don’t want.
I decided to go with a plain old Linus server running Samba for file sharing. Since my web server is Ubuntu I’m most familiar with it and decided to stick with it. My main concern was how to do RAID, or RAID like data protection. Only 4 of my 12 SATA ports are on a card that can do real hardware RAID. The rest are on the motherboard which does fake RAID. (Fake RAID is when the PC’s cpu provides the RAID processing, and not hardware on the controller.) I’ve never really trusted Motherboard based RAID but I had been using it to mirror the Vail OS in testing. As it is, most Linux distro’s are flaky (at best) with fake RAID.
So RAID through the motherboard BIOS was out which meant the best I could do via hardware was a 4 drive RAID 5 array using my 3ware card. But my research found good things said about software RAID in Linux, using mdadm. This was a flexible solution that seemed reliable, so I moved forward with it.
I spent some time over the long weekend installing Ubuntu Server using different RAID array configurations and breaking the arrays to make sure they would rebuild without a problem. Everything seemed fine. The only minor hitch was when I broke the OS mirror I needed to reboot before I could add the drive back in. Removing or adding the drive resulted in a not found error. That is until I rebooted which seemed to cleanly remove the drive and I could re-add it.
So as it stands now I installed Ubuntu Server 10.04.1 into what I think I want as my configuration. I picked 10.04 rather than the newer 10.10 because Ubuntu 10.04 is the long term support version and I won’t be forced into an upgrade 18 months down the road. I have until April 2015 before it end of life’s.
I used software RAID (mdadm) all around. The root and swap partitions are mirrored using the WD 320GB. I ended up putting all ten of the 2TB drives in a RAID 6 array. RAID 6 can survive two drive failures as there are two parity bits. In what may be overkill I included one hot spare.
Considering I had planned to lose half my space to duplication under Windows Home Server this is an improvement. Currently 30% of my space is for protection but the percentage will decrease as I add drives. My testing showed that resyncing the array takes a long time. The initial sync for my 13TB array took over a day (with the server under pretty heavy use). So the hot spare will get the rebuild going without me needing to do anything (at least in theory) and being able to lose two drives simultaneously makes me feel more secure.
I also installed LVM and created on logical volume for the data array. The theory is I can easily add drives to increase the space, although my testing hasn’t gone far enough to prove this.
As I write this tonight all my non-video data is on the Ubuntu Home Server and the RAID array finished it’s initial syncing a little while ago. I start copying the video files tonight but that’s going to take about a day to copy. All the data is still on the Windows Home Server in case I need to go back, but I’ve blocked access so I don’t save data there by accident. I have two more days off so can spend some additional time testing things out. But so far things look good and I plan to continue down the Ubuntu Home Server path. Next on the agenda is a PC backup solution that will be similar to Windows Home Server.