35
Virtual Block Devices (VBDs)
Virtual Block Devices are connector objects (similar to the PBD described above) that allows mappings between
VDIs and VMs. In addition to providing a mechanism for attaching (also called plugging) a VDI into a VM, VBDs
allow for the fine-tuning of parameters regarding QoS (quality of service), statistics, and the bootability of a given
VDI. CLI operations relating to VBDs are described in the section called “VBD Commands”.
Summary of Storage objects
The following image is a summary of how the storage objects presented so far are related:
Graphical overview of storage repositories and related objects
Virtual Disk Data Formats
In general, there are three types of mapping of physical storage to a VDI:
File-based VHD on a filesystem; VM images are stored as thin-provisioned VHD format files on either a local
non-shared filesystem (EXT type SR) or a shared NFS target (NFS type SR)
Logical Volume-based VHD on a LUN; The default XenServer blockdevice-based storage inserts a Logical Volume
manager on a disk, either a locally attached device (LVM type SR) or a SAN attached LUN over either Fibre
Channel (LVMoHBA type SR), iSCSI (LVMoISCSI type SR) or SAS (LVMoHBA type Sr). VDIs are represented as
volumes within the Volume manager and stored in VHD format to allow thin provisioning of reference nodes
on snapshot and clone.
LUN per VDI; LUNs are directly mapped to VMs as VDIs by SR types that provide an array-specific plug in
(NetApp, EqualLogic or StorageLink type SRs). The array storage abstraction therefore matches the VDI storage
abstraction for environments that manage storage provisioning at an array level.

VHD-based VDIs

VHD files may be chained, allowing two VDIs to share common data. In cases where a VHD-backed VM is cloned,
the resulting VMs share the common on-disk data at the time of cloning. Each proceeds to make its own changes
in an isolated copy-on-write (CoW) version of the VDI. This feature allows VHD-based VMs to be quickly cloned
from templates, facilitating very fast provisioning and deployment of new VMs.
The VHD format used by LVM-based and File-based SR types in XenServer uses sparse provisioning. The image
file is automatically extended in 2MB chunks as the VM writes data into the disk. For File-based VHD, this has the
considerable benefit that VM image files take up only as much space on the physical storage as required. With
LVM-based VHD the underlying logical volume container must be sized to the virtual size of the VDI, however