After the NLUUG presentation on FreeNAS, I bit the bullet and bought the HP MicroServer N40L for experimentation. A small and quiet server, with 4 HDD slots that make for a nice NAS setup. Of course, the system has limited CPU power but it should be enough for basic file serving.
Hardware
I decided to install a low-profile Intel NIC and upgrade the RAM memory to run ZFS comfortably.
HP have published some videos on (dis-)assembling the server, making the job a lot easier. There was only one issue: the mini-SAS connector is a pain to remove. Some Googling later, I found this post:
To unplug a Mini-SAS x4 cable, squeeze the clip on the plug, then push the plug in before pulling it out. (Source: Oracle)
ZFS is very RAM-hungry, so I installed 2x 4GB Unregistered ECC DIMMs, giving me the maximum supported 8GB configuration:
Crucial 4GB 240-pin DIMM 512Mx72 DDR3 PC3-10600 ECC (CT51272BA1339)
The Crucial DIMMs were detected without problems. It is possible to use standard non-ECC memory, but I wanted the extra reliability offered by having RAM with Error Correction.
Software
There are two ways to run FreeNAS: bare metal, or in a virtual machine. If you want to go the virtual route, HP has made a customized version of VMware ESXi 5 available for ProLiant servers. To minimize complexity, I run FreeNAS on bare metal. This avoids having to deal with raw device passthrough in VMware and ensures maximum performance.
FreeNAS installation
Installation was a breeze. I created a bootable USB stick (4GB, but 2GB should be fine) using VMware Fusion on my Mac; create a new VMware guest (FreeBSD 8, 64-bit) and set it to boot from the ISO image. Connect the USB stick to the VM; the FreeNAS installer will detect it and ask if you want to install to the USB drive. After installation, shut down the VM and plug the USB stick into the internal USB-port in the MicroServer. Done.
Next, you’ll want to add your harddisks and create a ZFS Volume. I enabled the “4k sectors” option for my 2TB Western Digital drives.
You can simply share this entire volume, or create ZFS Datasets within the ZFS Volume. This gives you more fine-grained control over permissions and sharing.
I mainly use NFS and SMB (CIFS) shares at the moment. They can be used from Mac OSX without problems. Having a central LDAP directory (or perhaps even NIS) helps when setting the correct ownership and permission.
Practical experience
So far, I’m quite happy with FreeNAS performance and ease of use.
FreeNAS 8.2.0-BETA3 appears quite stable; I haven’t found any major bugs yet.