Site search

Blogroll

Categories

Tags

September 2009
S M T W T F S
« Aug   Oct »
 12345
6789101112
13141516171819
20212223242526
27282930  

ZFS in Apple’s OSX 10.6 Snow Leopard

Storagemojo’s blog has some interesting comments about Apple’s decision to leave the next generation ZFS volume-manager/filesystem out of OSX 10.6 Snow Leopard. I have no idea why they did this. Command line read-only ZFS existed in OSX 10.5 Leopard and an opensource plug-in gave it read write capability. ZFS has proven itself both in saving Apache.org time and headaches after a recent security breech. This is from Apache.org’s incident report:

aurora.apache.org runs Solaris 10, and we were able to restore the box to a known-good configuration by cloning and promoting a ZFS snapshot from a day before the CGI scripts were synced over. Doing so enabled us to bring the EU server back online, and to rapidly restore our main websites. Thereafter, we continued to analyze the cause of the breach, the method of access, and which, if any, other machines had been compromised.

What worked?
* The use of ZFS snapshots enabled us to restore the EU production web server to a known-good state.

The consensus seems to be that Sun’s CDDL license wasn’t a factor in Apple’s removing this feature. Sun’s dtrace is already in OSX under CDDL. GPL won’t help here because the OSX kernel is under a BSD license and much of the software and hardware drivers which are able to link to BSD licensed kernel would not be able to live with GPL code. I doubt it is a stability issue, as I’ve mentioned, read-only ZFS has been in OSX for quite some time and many Linux and Windows servers have gone into production based on less reliable and far less scalable filesystems.

Some have claimed that ZFS is only appropriate for large servers. Nothing could be further from the truth. I regularly use it on a tiny Solaris laptop with 2G of RAM. The snapshot, rollback and related boot environment management features are enormous timesavers. Time machine is a typically beautiful Apple GUI built on top of a slow (rsync?) kludge. Merge this GUI with ZFS, and it’s a marriage made in heaven. Snapshots take almost no time or redundant space (Copy on Write), rollbacks are nearly instantaneous. Why wouldn’t artists, writers, musicians and other creative people in Apple’s prime market want instantaneous automatic versioned snapshots of their work?

I don’t know why Apple made this decision. Maybe they want to make their money on a ZFS based storage appliance. In any case, I’m glad BSD and Solaris 10 and OpenSolaris already have ZFS. Even if my Mac or Windows desktop has to rely on archaic HFS+ or NTFS filesystems for another year or two, at least we can push storage out to a more reliable and scalable filesystem running on a modern server-class OS.