2011
06.24

Hooking Up a NAS

So I’ve decided to make a short. A short-short to be precise. Under 30 seconds.

Mainly because it’s all great to be boning up on Linux and Houdini but it doesn’t mean much unless it’s put into action. Here, I intend to “discuss” the experience. May it serve as a warning to future generations.

Yesterday, I realized I needed a portable NAS. Now, I have a couple of Netgear “ReadyNAS” units (and a Drobo, but I’ve been trying to block that purchase out) that are stuffed full. Besides I wanted, keeping with the theme, a linux based box. Building my own out of an old machine was an option but, really, a super low power unit I can keep running 24/7 appealed to me. So I picked up a Synology ds2011j. It’s not the fastest but it reviews well. You can even connect via SSH if you want. And combined with a couple of 2TB drives, it’s got enough space for what I plan. Well under $400.00 all told. Setting it up was a breeze and I left the box to build it’s raid set overnight.

Today was more of a challenge. After setting up the basics of the unit (through it’s excellent GUI), I did a speed test using CIFS. OK, good enough anyway. But then I thought I should probably try it with NFS, just to see. Well, not so simple. First of all it’s not nicely auto-discovered as with the first method. No, you need to create a mount string and either enter it into a shell or run it at startup. Not a big deal, that’s what the internet is for. But I was still stumped after a time. Turns out the unit will not allow the connection by hostname, but only by IP address. Once that was out of the way I could finish benchmarking. CIFS ran about 30 MB/s in either direction. NFS, about 25 MB/s write, but 85 MB/s read. Much better.

Of couse the big downer is that Microsoft, from what I can tell, has seen fit to leave out NFS drivers from their Windows 7 64 Pro OS. No big deal at work, but at home I have my CG apps on such a box. I wonder whether there is a way around this without coughing up for Windows “Ultimate” (which apparently includes the driver). Some research for the weekend.

And so I don’t forget:

mount -t nfs 192.168.1.42:/volume1/Projects /media/Projects
Bash Shell Command to Find or Get IP address
NFS Client Configuration
FSTAB with UUID
Optimizing NFS Performance

Static IP’s here I come!

1 comment so far

Add Your Comment
  1. If it’s a single user NAS why don’t you run your NAS as an iSCSI target, both linux and windows have very capable iSCSI initiators.
    This will allow you to max out your (gb) nics without a problem ( 112 GBs IO / nic ) without the overhead of SMB / NFS / CODA / OCFS2, being a very mature technology better performance then ATAoE and routable ( www ) as it’s using the TCP/IP stack. ( don’t worry about TCP offloading as modern nics support that)

    Be aware that iSCSI is NOT a file system but a block device driver > The remote HD will show up as a HD, formatting is done by the initiator ( the target isn’t aware of any filesystem ).
    Whether you configure a RAID on the target or the initiator is up to you > I suggest configuring it at the target and export that as a block device.
    For example, this allows you to configure your HD’s as a raid5/6 mdadm array on the target, and export the whole volume to the initiator.
    Because of the really low overhead you might use a low power Atom CPU…
    If you want even more speed you can simply bond a couple of ( PCI-e not PCI ) adapters..
    ( I use quad bonded nics and get over 400GBs out of my storage array :-) .

    A little warning is in place… iSCSI is not meant to be used with multiple clients ( initiators ), quite the opposite actually > multiple servers / single client. It’s purpose is to concatenate storage over a network / fiber to a central ( HA is possible ) fileserver… in your case this will be the endpoint …

    my 5 cents and gratitude for serving the LW community….

    Djamu