A North American Indian prophecy which foretells a time when human greed will make the Earth sick, and a mythical band of warriors will descend from a rainbow to save it. Also the famous Greenpeace ship.

Thursday, November 05, 2009

MSI Wind PC based NAS

This project was long overdue. I wanted the NAS to be unobtrusive and to have low power consumption and noise and I was not really dying for RAID-5. While I do get hugely added performance (check NAS benchmarks) I was not willing to pay the price for it - my uses were mainly for backup and for streaming audio. So it was going to be RAID-1 for me. I also did not see myself needing more than 1 TB if I left video out of the picture. If audio grows at an order of magnitude faster than text / mail etc., video is two orders of magnitude larger.

There were two alternatives - to find a Linux friendly NAS device or to build one. Among the Linux friendly devices (either running Linux or *BSD). Products such as the Synology DS 409 or QNAP TS-419P were examples of products that were feature rich (hot swappability, RAID-5, 6 support, Online RAID Migration etc.) and would have been reasonable products to base the NAS on - but these were in the $ 400 - 500 range. Given my requirements, they were overkill. I wasn't too impressed with the 2-bay NAS products considering that they were more than $ 200 and were not offering much by way of features either.

So, that's when I started considering building my own. Initially, I walked down the path of building a Micro-ATX case, Atom based system with a Mobo / Processor combo like this one - http://www.newegg.com/Product/Product.aspx?Item=N82E16813131396. Soon, came upon the MSI Wind PC and the price and size were very attractive indeed.

One aborted attempt with a motherboard with a BIOS problem that was annoying but then, putting this together was really easy. Got a 16 GB (wondering why I didn't just buy an 8 GB card!) Compact Flash card for the OS, 2GB (yes, it would have been nice to have had two DIMM slots and 4 GB) memory and two 1 TB low power Seagate disks. Used a 3.5" to 5.25" conversion rails to use the other bay for the second drive. Installed Ubuntu 9.04 from a USB disk to the Compact Flash drive and rebooted. Wanted to reduce the willingness of the OS to swap and reduced vm.swappiness to 5 in /etc/sysctl.conf which is set to 60 by default.

Installed mdadm and set up a RAID-1 array with the two disks, LVM on /dev/md0 and the logical volumes on a volume group called logos and presto - I had my entire NAS setup up and running. Rsync'ed my existing non-RAID LVM on the desktop to the NAS and measured 12.8 MB/s - not bad when you compare with the benchmarks.

What can be better?
1. More memory would be nice - could get a performance boost from caching
2. RAID monitoring - need to set up mdadm --monitor to at least get e-mail alers
3. Slightly smaller form factor - considering how far MSI went to design this one, they could have gone a little further and reduced some more white space. As it is, it is better than my original plan of building it in a Micro-ATX tower.
4. Hot swap - which I plan to accomplish later using an external eSATA enclosure. Could even do RAID-5 that way.

As always, Sundar provided me great advice. His NAS is a 100 MB /s + RAID-5 setup with a hardware RAID controller from Areca!

Revival

Coming back to this blog with renewed resolve to journal my life (at least the more interesting aspects of it) more regularly.