“A commercial ZFS solution is (still) coming to Mac OS X, thanks to former Apple filesystem and OS engineer Don Brady (who previously worked on the abandoned internal Apple project to port ZFS). Brady and his company, Ten’s Complement, just launched a limited private beta in hopes to have the software polished and ready for a summer launch this year. Ars spoke with Brady, who has a long history engineering filesystems for Mac OS and Mac OS X, to find out a little about his previous work with ZFS at Apple, and what Mac users can expect to gain from Ten’s Complement’s port of ZFS.”
This is something I will definitely buy for my Mac.
He is right not to target this at enterprise customers as Apple is clearly leaning away from that market right now.
Hopefully Apple will ease up and allow some sort of licensing arrangement for OS X Server to run on non Apple servers (seeing as they now have none).
OS X server is part of Mac OS X Lion (there won’t be a server version)
http://www.apple.com/macosx/lion/ (At the end of the page)
I am aware of that but its is still a separate install option. Apple could change the license to state that when using the server option it is permissible to run OS X in a VM on non Apple HW.
And pigs fly. Get it through your head. Apple isn’t supporting 3rd party systems, period.
We don’t know that. Although I sure hope so, it could be just for the developer previews.
Why would they need to? Since OS X Server is basically all of the F/OSS software with a pretty front end…
Designing easy-to-use user interfaces is Apple’s specialty.
ps. I am sure someone will follow my comment with Apple’s UI design error from past and present
Will not, but I will point out that someone running a server is not looking for simplified uis. Apple isn’t any better than others when it comes to highly complex interfaces.
Either he is using windows and expects the interface to be loaded with all functions so he isn’t forced to go into the command line. Or, he is a unix admin that has to be very comfortable using the command line. Apples usual interface choices don’t fit either profile…
I am pretty sure Apple’s recent moves in their server product line signifies a shift towards SOHO and home users. The creation of the Mac Mini server, the sacking of the XServe, and the integration of OS X server into Lion all point to this focus shift. They are interested in helping people with very little technical expertise to set up a limited number of server functions as quickly and securely as possible.
Sadly, this is not *completely* true. OSX doesn’t update their F/OSS very often. Its really outdated ( full of security holes and other nastys), and there really is a lot of F/OSS software not available outside of darwin ports or fink ( which means all of the pretty front end stuff doesn’t work with it). It might be a good replacement for an internal small business server that doesn’t need exchange, sharepoint, active directory, or anything else MS specific. As long as it only needs the F/OSS that Macs come with.
Well my only thoughts about this is,
– How would I apply MCX settings to Mac clients?
– How would I set up NetInstall for Mac clients?
– How would I save bandwidth for all Mac clients for software updates.
It might be F/OSS setting up, ftp, email, web server, etc. But Apple did do some specific things for their software platform.
To the person, you quoted. It would be great if they allowed it and specifically virtualised OSX server. Currently you are allowed to Virtualise OSX server, but as long as the VM is running on Apple hardware. Well that server hardware is going away. After all Apple is soft..hardwa..gadgets.. company.
MCX is already done on Linux, by utilizing the Apple schema with OpenLDAP installations.
You can quite easily use Apple’s Workgroup Manager tool to maintain a Linux-based OpenLDAP installation with the Apple schema applied, so there’s even a GUI managing the clients.
NetInstall/NetBoot is basically a PXE boot method for Macs based on nfs + bsdp + dns + tftp.
This can be setup on Linux as well.
Softwareupdates might be impossible to implement directly, although it’s basically an Apache 1.3 with a cgi script querying Apple’s servers for software updates, caching these locally and allowing clients to browse its catalogs via http.
A clever proxy setup might be able to cache files on a separate server so that every update only needs to be downloaded once; the next client asking for this file at Apple’s swupd.apple.com would get the local cached version instead.
MCX can be applied via AD if needed. Of course this means adding to the AD schema and lots of corporate AD teams love that. You also need workgroup manager (or whatever the tool is called) to set the options, unless your happy to work without a GUI.
NetInstall is a bit difficult as it uses a cut down version of OS X to do the install. The protocol is not too complex and you can hack something together with bootp and afp but you need the proprietary bits to make it work. This is only really useful once you get to the scale that you realise that OS X server doesn’t scale well in very large network environments.
Finally #3 is really really easy…. Squid works wonders as a transparent proxy. Not only do you get the advantage of caching the updates, but you don’t actually have to configure the machine to use it. Leaving it with vanilla settings really works well for mobile users as they can update at home, etc.
We used to use a transparent proxy at an apple shop I worked for, even though we had an OS X server. Since we had a lot of new machines in for servicing this would allow them to update from the proxy instead of the net. Not to mention MUCH MUCH MUCH faster.
Because Mac shops will be able to leverage their existing Mac experienced admins rather than going out and getting a Windows, Unix or Linux admin.
In any case, I am not convinced that ZFS would be the perfect fit for a client OS that is increasingly focused on mobility. However, it would be nice if HFS+ could be further revamped with the addition of COW, checksums, snapshot, encryption (It appears the latter two are coming to Lion. Although Versions may not be implemented at the file system level) and other features useful to a mobile user, while avoiding the overhead of ZFS.
What do you mean by mobile? Like, more notebooks are using it?
Surely, you know that the Ipad and the iphone do not run the full osX. Adding launchpad to Lion, and adding the app store doesn’t make it a worse fit for ZFS.
Notebooks make up the largest part of Apple’s Mac business (according to Apple’s quarterly reports), and why would you need multivolume management for a notebook?
As for the iOS devices, Apple would do best to introduce a new, lightweight filesystem that is designed for NAND memory. These devices certainly cannot handle the overhead of ZFS
Edited 2011-03-19 15:48 UTC
Obviously not a good idea to have zfs on the ipad/iphone due to the overhead.
ZFS on OSX makes sense for time machine
. I would trust apple to integrate ZFS into OSX more than I would trust them to add equivalent features to HFS, or create their own. Not sure why they needed a license from Sun for ZFS
For this I’m mainly a interested bystander. I have a mac notebook, but do not plan on buying another Apple device due to their poor F/OSS support.
What’s the point? If you’re going to add all the features from ZFS why not just use ZFS in the first place?
ZFS is designed for server use, and very little thought is given to memory footprint, processor use etc.
Of course processor use was taken into account. Why do you think taking little processor time is somehow not important on a server where you might have to be serving hundreds of thousands of requests a second?
And memory footprint.. well, it only depends on the implementation. There is nothing in the spec itself that says you absolutely must use X amount of memory. For example the Linux ZFS-Fuse allows you to specify the amount of memory you wish to dedicate to it. Ergo, Apple could equally well just reserve a very small amount of memory for it for desktop use and add a configuration variable for power users who wish to adjust memory use for heavier cases.
There is nothing inherent to ZFS that would make it impractical for use on a desktop.
The myth that ZFS has hug overhead is incorrect. ZFS is very configurable and can be configured to run on ARM platforms. Although never released their was some work to do this inside of Sun.
ARM is also being targeted for power-efficient servers, but an ARM server is a very different beast from a portable device (that uses NAND exclusively for storage) like the iPad
Edited 2011-03-20 02:04 UTC
ZFS is a phenomenal server file system with some amazing capabilities.
Problem is these capabilities come with significant cost: increased complexity, increased memory usage, processor usage…
Many of the features of ZFS are not needed on *most* desktops, and certainly not needed on laptops — features like multi-volume management and so forth.
OSX’s current file system HFS+ certainly does suck and is in severe need of replacement.
I think a file system like XFS (originally from SGI, designed for “graphics workstations”) would be a perfect fit for OSX. Similarly with BFS from BeOS which has pretty neat features. I think both of these are available under a compatible license (BSD I think), so someone certainly could port these.
Another possibility is DragonFly BSD’s HAMMER file system. It has some of the same features as ZFS but without the licensing issue. Apple has a lot of BSDL code in their tree.
I’ve got a port of the first ZFS release for FreeBSD in MidnightBSD and it’s interesting but a lot of work to maintain. The only reason I bothered to import it was sharing data between Macs and MidnightBSD machines. (fat32 sucks)
BTRFS is feature-wise more-or-less on par with ZFS and thus could also make a suitable candidate. The current Linux version of it is however written in GPL and couldn’t be used by Apple, and I doubt Apple will want to write a whole new implementation of it from scratch. :/
The ONLY reason to use ZFS is because it gives Data Integrity – your data is safe. No other filesystem does that: XFS, NTFS, ReiserFS, JFS, etc – they all fail. Also, hardware raid fails. Read the research papers about it here, and you see they fail, and also hw raid fail:
http://en.wikipedia.org/wiki/ZFS#Data_Integrity
But this heavy focus on data safety comes with a cost: ZFS uses lots of cpu to checksums and it is slower. That is the reason the other unsafe filesystems are faster: they dont do as much checksums as ZFS does.
Read the link above, and you will see the research on this data safety.
What do you prefer on your desktop? Fast filesystem that might corrupt your data, or safe and slow filesystem?
(But if speed is an issue, just add more and more disks, and see that ZFS scales excellent because it is targeted for large servers. 45 SATA disks gives you 2-3GB/sec read and write. Seven disks gives you 400MB/sec.)
XFS is interesting, but it has a problem in that it is meant for very high quality workstations and servers connected to battery backups. It really doesn’t take flickering power levels well at all, which would be a real problem on notebooks. While this issue has been largely worked out in the Linux implementation, I somewhat doubt that is the implementation Apple would use.
Another problem XFS has, it that your data is not safe. Your data might get corrupted, without XFS noticing it. Just read the research papers on this, which I linked to.
…Are you calling a Wikipedia article on ZFS a research paper?
LOL
No, but in that ZFS wikipedia article, there are several research papers links. Just read those links. You can find those papers on the wikipedia article.