LVM (Logical Volume Manager) is a subsystem that allows using different areas of one or several hard drives as a single logical volume. The size of logical volume file systems is not limited to a single disk, as a volume can be located on different disks and partitions.
LVM basic designations:
- physical volumes (PV, Physical Volume) — disk partitions or entire disks;
- volume groups (VG, Volume Group) — physical volumes grouped into a single disk;
- logical volumes (LV, Logical Volume) — partitions created on physical space of the volumes group.
An LVM storage supports one format of virtual disk format — RAW. Learn more in the official documentation.
Peculiarities of LVM in VMmanager
- VMmanager does not configure LVM on the cluster node. The volume group name must be specified manually before adding a node into the cluster.
- After the storage is added, the VG name is displayed on the Disk space tab of the cluster node card.
- Only VM disks are stored in LVM each of them in a separate LV with the name "<vm_id>_<vm_name>". VM and OS images are stored outside the LVM.
When adding a cluster node with LVM, VMmanager calculates the number of VG on the node and searches for the VG with the specified name:
- if it finds one or several VG with the appropriate name, the node will be added;
- if no VGs are found, the error message will be shown and the node won't be added.
Example of LVM storage connection
- Connect to the cluster node via SSH.
-
Initialize physical volumes (PVs) to operate with LVM:
pvcreate /dev/sda6 /dev/sda7 /dev/sda8Comments to the command -
Create the volume group (VG):
vgcreate vg_vmmanager /dev/sda6 /dev/sda7 /dev/sda8Comments to the command - Specify the VG name when creating a cluster or connecting storage to a created cluster. For more information, see Creating a cluster, Managing cluster storages.
Adding disks to storage
If you are using platform version 2025.10.1 or higher, after adding block devices to storage, specify information about them in the configuration file /etc/lvm/lvm.conf. To do this, add the device to the filter parameter in the devices {...} block:
filter = ["a|/dev/disk/by-id/wwn-.*|", "a|/dev/vdb|", "r|.*|"]Comments:
a|/dev/disk/by-id/wwn-.*|— allow usingdev/disk/by-id/wwn-.*devices;a|/dev/vdb|— allow using the/dev/vdbblock device;r|.*|— denies all other devices.
En
Es