Xen 4.1+ with local ZFS storage

xenzfs

I'm speccing out sandbox VM servers for developers at my company. The requirements for the dom0 hosts are: local, deduplicated ZFS storage (no separate storage servers), and Xen 4.1+ (4.2 is ideal).

I checked out Oracle VM, but it only has Xen 4.0. I also looked at the Xen official list of supported dom0s, but none of the ZFS-supporting ones (openindiana/illumos and opensolaris) seem to be current enough to run Xen 4.1+.

Question:

What operating systems out there have robust (read: stable and decent performance) support for ZFS/dedup, and can smoothly (read: good hardware compatibility) work as dom0 hosts for Xen 4.1+?

If possible, I'd like to avoid compiling Xen and have a stable package, but if that's the way it has to be, I can deal with it. I'd similarly prefer ZFS support to be integrated, rather than run through one of the hack-on kernel extensions/FUSE modules available for non-Oracle Linuxes. Again, if that's not possible, I can deal.

If you care about the why:
The devs need Xen 4.1 or better to do something weird I'm not clear on with CAD and passthrough, and management likes ZFS, so that's a "must have" as well. I know that dedup'd ZFS uses a load of hardware resources, but the powers that be are fine with dumping money into hardware.

Best Answer

It sounds like a bad spec. These are disparate technologies... Something like SmartOS may be more fitting, except for the Xen requirement.

If you want ZFS, that's fine. But to do ZFS storage properly and support deduplication without a risk of performance problems, you will need to engineer for it. That means lots of RAM, possibly augmented with an approved L2ARC SSD cache device. Is this really a use-case for deduplication, or will compression be sufficient? If compression is good enough, then you have more options.

A separate storage device will be the most supportable and scalable solution. That way, you can avoid using immature (at this time) Linux ports and direct the resources into single-purpose hardware. It also gives you flexibility to use the virtualization technology of your choice impacting the entire environment or having to navigate strange dependencies.

I recommend NexentaStor as a ZFS storage solution, but you can certainly roll-your-own with OpenIndiana

What type of hardware will you be using? The ability to pass raw disks to ZFS is going to be crucial, too.