3 include::attributes.txt[]
5 Storage pool type: `zfspool`
7 This backend allows you to access local ZFS pools (or ZFS file systems
14 The backend supports the common storage properties `content`, `nodes`,
15 `disable`, and the following ZFS specific properties:
19 Select the ZFS pool/filesystem. All allocations are done within that
24 Set ZFS blocksize parameter.
28 Use ZFS thin-provisioning. A sparse volume is a volume whose
29 reservation is not equal to the volume size.
31 .Configuration Example (`/etc/pve/storage.cfg`)
35 content rootdir,images
40 File naming conventions
41 ~~~~~~~~~~~~~~~~~~~~~~~
43 The backend uses the following naming scheme for VM images:
45 vm-<VMID>-<NAME> // normal VM images
46 base-<VMID>-<NAME> // template VM image (read-only)
47 subvol-<VMID>-<NAME> // subvolumes (ZFS filesystem for containers)
51 This specifies the owner VM.
55 This can be an arbitrary name (`ascii`) without white space. The
56 backend uses `disk[N]` as default, where `[N]` is replaced by an
57 integer to make the name unique.
63 ZFS is probably the most advanced storage type regarding snapshot and
64 cloning. The backend uses ZFS datasets for both VM images (format
65 `raw`) and container data (format `subvol`). ZFS properties are
66 inherited from the parent dataset, so you can simply set defaults
67 on the parent dataset.
69 .Storage features for backend `zfs`
70 [width="100%",cols="m,m,3*d",options="header"]
71 |==============================================================================
72 |Content types |Image formats |Shared |Snapshots |Clones
73 |images rootdir |raw subvol |no |yes |yes
74 |==============================================================================
80 It is recommended to create an extra ZFS file system to store your VM images:
82 # zfs create tank/vmdata
84 To enable compression on that newly allocated file system:
86 # zfs set compression=on tank/vmdata
88 You can get a list of available ZFS filesystems with:
97 * link:/wiki/Storage[Storage]