In previous posts I've alluded to my ongoing search for a workable network storage solution for a Mac family. I don't think it's asking too much to sit down at Mac in the house to get at your 200GB of home folder goodness. Apparently, it's harder than I thought.
Right now, it's about an 80% solution with a mashup of a Mac Mini running Lion Server for Directory Services and a Freenas server in the basement serving up the home folders using the Apple Filing Protocol (AFP) using netatalk. My last post had a workaround for one particular application not playing well with AFP, but I still have other lingering problems:
- Neither iMovie nor Final Cut Pro really work with an AFP home folder. Ouch.
- Lion's Auto-Save and Versions feature doesn't work with AFP. Come on, Apple!
- Spotlight insists on re-indexing from scratch every time one of us logs in, slowing things down to a crawl.
- iTunes sometimes says it can't properly save things...maybe it's AFP, maybe it's not, but I'm suspicious at this point.
- Some apps are just plain slow, even though I'm getting 60+MBps throughput to my storage. See my prior blog about iBank was behaving before I switched my iBank data file a sparse HFS disk image.
Finally, only my two kids and I are rolling with an AFP home folder: No way I can switch my wife over to this setup at this point, so she's "stuck" with a traditional account only accessible from the 27" iMac (could be worse, I know). Can you imagine living in a house with 3 Macs and only being able to access your home folder from one of them. What kind of world is that!
So, what to try now? Freenas with the Zetabyte File System (ZFS) gives me highly reliable storage for all our stuff. I believe the problem lies with how that storage is made available: AFP doesn't play nice (even with Apple's own apps). The two other traditional network-based file systems, NFS and CIFS, aren't any better I suspect. The common theme with all of these is that they are file-based network storage and they simply don't "smell right" to the applications. Applications want to see a nice standard HFS+ file system, but that's not what they get. How can we give 'em what they want?
iSCSI is a network storage protocol that, instead of serving up files, serves up raw blocks of storage that the client side (the Mac) can partition using HFS+ just like a physical disk. OK so far. The applications should see a nice HFS+ file system that they're expecting, but the data is actually stored on my robust Freenas ZFS-based storage. Other than the fact that the complexity has just gone through the roof and we're now moving into enterprise-level storage technologies, what could possibly go wrong?