|NFS |nfs |file |yes |no |yes
|GlusterFS |glusterfs |file |yes |no |yes
|LVM |lvm |block |no |no |yes
-|LVM-thin |lvmthin |block |no |yes |beta
+|LVM-thin |lvmthin |block |no |yes |yes
|iSCSI/kernel |iscsi |block |yes |no |yes
|iSCSI/libiscsi |iscsidirect |block |yes |no |yes
|Ceph/RBD |rbd |block |yes |yes |yes
TIP: It is possible to use LVM on top of an iSCSI storage. That way
you get a 'shared' LVM storage.
+Thin provisioning
+~~~~~~~~~~~~~~~~~
+
+A number of storages, and the Qemu image format `qcow2`, support _thin
+provisioning_. With thin provisioning activated, only the blocks that
+the guest system actually use will be written to the storage.
+
+Say for instance you create a VM with a 32GB hard disk, and after
+installing the guest system OS, the root filesystem of the VM contains
+3 GB of data. In that case only 3GB are written to the storage, even
+if the guest VM sees a 32GB hard drive. In this way thin provisioning
+allows you to create disk images which are larger than the currently
+available storage blocks. You can create large disk images for your
+VMs, and when the need arises, add more disks to your storage without
+resizing the VMs filesystems.
+
+All storage types which have the 'Snapshots' feature also support thin
+provisioning.
+
+CAUTION: If a storage runs full, all guests using volumes on that
+storage receives IO error. This can cause file system inconsistencies
+and may corrupt your data. So it is advisable to avoid
+over-provisioning of your storage resources, or carefully observe
+free space to avoid such conditions.
+
Storage Configuration
---------------------
...
----
-NOTE: There is one special local storage pool named `local`. It refers to
-the directory '/var/lib/vz' and is automatically generated at installation
-time.
-
The `<type>: <STORAGE_ID>` line starts the pool definition, which is then
followed by a list of properties. Most properties have values, but some of
them come with reasonable default. In that case you can omit the value.
+To be more specific, take a look at the default storage configuration
+after installation. It contains one special local storage pool named
+`local`, which refers to the directory '/var/lib/vz' and is always
+available. The {pve} installer creates additional storage entries
+depending on the storage type chosen at installation time.
+
.Default storage configuration ('/etc/pve/storage.cfg')
-====
- dir: local
+----
+dir: local
path /var/lib/vz
- content backup,iso,vztmpl,images,rootdir
- maxfiles 3
-====
+ content iso,vztmpl,backup
+
+# default image store on LVM based installation
+lvmthin: local-lvm
+ thinpool data
+ vgname pve
+ content rootdir,images
+
+# default image store on ZFS based installation
+zfspool: local-zfs
+ pool rpool/data
+ sparse
+ content images,rootdir
+----
Common Storage Properties
~~~~~~~~~~~~~~~~~~~~~~~~~
pvesm path <VOLUME_ID>
+ifdef::wiki[]
+
+See Also
+--------
+
+* link:/wiki/Storage:_Directory[Storage: Directory]
+
+* link:/wiki/Storage:_GlusterFS[Storage: GlusterFS]
+
+* link:/wiki/Storage:_User_Mode_iSCSI[Storage: User Mode iSCSI]
+
+* link:/wiki/Storage:_iSCSI[Storage: iSCSI]
+
+* link:/wiki/Storage:_LVM[Storage: LVM]
+
+* link:/wiki/Storage:_LVM_Thin[Storage: LVM Thin]
+
+* link:/wiki/Storage:_NFS[Storage: NFS]
+
+* link:/wiki/Storage:_RBD[Storage: RBD]
+
+* link:/wiki/Storage:_ZFS[Storage: ZFS]
+
+
+endif::wiki[]
+
+ifndef::wiki[]
+
// backend documentation
include::pve-storage-dir.adoc[]
include::pve-storage-lvm.adoc[]
+include::pve-storage-lvmthin.adoc[]
+
include::pve-storage-iscsi.adoc[]
include::pve-storage-iscsidirect.adoc[]
include::pve-storage-rbd.adoc[]
+
ifdef::manvolnum[]
include::pve-copyright.adoc[]
endif::manvolnum[]
+endif::wiki[]
+