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