sec.01 // product
ZFS-Live.
Native ZFS storage driver for XAPI. Raw zvols, native snapshots, shared-SR live VM migration, changed block tracking. Zero coalesce. Zero VHD chains.
sec.02 // architecture
Raw zvols.
Each VDI is a ZFS volume. Snapshots are instant (COW), compression is native, replication is zfs send. One layer — ZFS manages the blocks directly. Lightning fast.
sec.03 // version matrix
Universal compatibility.
One binary. Dump it on any supported platform. It detects what it's running on — which XAPI version, which OpenZFS version — and adapts. Dispatch gaps get shimmed. Missing features degrade gracefully. Newer ZFS means more capabilities, not a new driver version.
| Platform | XAPI | OpenZFS | Status |
|---|---|---|---|
| XCP-ng 8.3 | 25.6.0 | 2.1.x | Verified |
| XenServer 8.4 | — | — | Not supported (API incompatible) * |
* Experimental XenServer support incoming.
sec.04 // install
Get started.
Install on any supported XAPI host. The driver detects your environment and configures itself. See the README for full instructions.
Quick install
$ curl -fsSL https://get.bulkhead.dk/zfs-live.sh | sh
Manual install
$ git clone https://github.com/bulkhead-dk/zfs-live-xapi.git$ cd zfs-live-xapi$ ./installer.sh
sec.05 // features
What ships in v1.0.
- Raw zvol-backed VDIs with native ZFS snapshots and clones
- Thick and thin provisioning via refreservation
- Per-VDI tuning — compression, copies, sync, primarycache, logbias, volblocksize
- Live VM migration across hosts (shared SR)
- Native VDI copy via zfs send/receive (same-pool clone, cross-pool stream)
- Changed Block Tracking via QEMU dirty bitmaps over NBD
- Native ZFS compression (lz4, zstd where available)
- Crash recovery — interrupted resize operations repaired automatically
- Universal version matrix — auto-detects XAPI and OpenZFS capabilities
- One-command deployment via Ansible with atomic install rollback
Pending upstream: Cross-SR storage migration (SXM) via zfs send/receive is fully implemented in the driver. It will work automatically once the upstream xenopsd patch lands — no driver update needed.