The cinder.brick.local_dev.lvm Module¶
LVM class for performing LVM operations.
- 
class LVM(vg_name, root_helper, create_vg=False, physical_volumes=None, lvm_type='default', executor=<function execute>, lvm_conf=None, suppress_fd_warn=False)¶
- Bases: - os_brick.executor.Executor- LVM object to enable various LVM related operations. - 
LVM_CMD_PREFIX= ['env', 'LC_ALL=C']¶
 - 
activate_lv(name, is_snapshot=False, permanent=False)¶
- Ensure that logical volume/snapshot logical volume is activated. - Parameters: - name – Name of LV to activate
- is_snapshot – whether LV is a snapshot
- permanent – whether we should drop skipactivation flag
 - Raises: - putils.ProcessExecutionError 
 - 
create_lv_snapshot(*args, **kwargs)¶
- Creates a snapshot of a logical volume. - Parameters: - name – Name to assign to new snapshot
- source_lv_name – Name of Logical Volume to snapshot
- lv_type – Type of LV (default or thin)
 
 - 
create_thin_pool(name=None, size_str=None)¶
- Creates a thin provisioning pool for this VG. - The syntax here is slightly different than the default lvcreate -T, so we’ll just write a custom cmd here and do it. - Parameters: - name – Name to use for pool, default is “<vg-name>-pool”
- size_str – Size to allocate for pool, default is entire VG
 - Returns: - The size string passed to the lvcreate command 
 - 
create_volume(name, size_str, lv_type='default', mirror_count=0)¶
- Creates a logical volume on the object’s VG. - Parameters: - name – Name to use when creating Logical Volume
- size_str – Size to use when creating Logical Volume
- lv_type – Type of Volume (default or thin)
- mirror_count – Use LVM mirroring with specified count
 
 - 
deactivate_lv(name)¶
 - 
delete(*args, **kwargs)¶
- Delete logical volume or snapshot. - Parameters: - name – Name of LV to delete 
 - 
extend_volume(lv_name, new_size)¶
- Extend the size of an existing volume. 
 - 
static get_all_physical_volumes(root_helper, vg_name=None)¶
- Static method to get all PVs on a system. - Parameters: - root_helper – root_helper to use for execute
- vg_name – optional, gathers info for only the specified VG
 - Returns: - List of Dictionaries with PV info 
 - 
static get_all_volume_groups(root_helper, vg_name=None)¶
- Static method to get all VGs on a system. - Parameters: - root_helper – root_helper to use for execute
- vg_name – optional, gathers info for only the specified VG
 - Returns: - List of Dictionaries with VG info 
 - 
static get_lv_info(root_helper, vg_name=None, lv_name=None)¶
- Retrieve info about LVs (all, in a VG, or a single LV). - Parameters: - root_helper – root_helper to use for execute
- vg_name – optional, gathers info for only the specified VG
- lv_name – optional, gathers info for only the specified LV
 - Returns: - List of Dictionaries with LV info 
 - 
static get_lvm_version(root_helper)¶
- Static method to get LVM version from system. - Parameters: - root_helper – root_helper to use for execute - Returns: - version 3-tuple 
 - 
get_volume(name)¶
- Get reference object of volume specified by name. - Returns: - dict representation of Logical Volume if exists 
 - 
get_volumes(lv_name=None)¶
- Get all LV’s associated with this instantiation (VG). - Returns: - List of Dictionaries with LV info 
 - 
lv_get_origin(name)¶
- Return the origin of an LV that is a snapshot, None otherwise. 
 - 
lv_has_snapshot(name)¶
 - 
lv_is_open(name)¶
- Return True if LV is currently open, False otherwise. 
 - 
lv_is_snapshot(name)¶
- Return True if LV is a snapshot, False otherwise. 
 - 
rename_volume(lv_name, new_name)¶
- Change the name of an existing volume. 
 - 
revert(snapshot_name)¶
- Revert an LV from snapshot. - Parameters: - snapshot_name – Name of snapshot to revert 
 - 
supports_lvchange_ignoreskipactivation¶
- Property indicating whether lvchange can ignore skip activation. - Check for LVM version >= 2.02.99. (LVM2 git: ab789c1bc add –ignoreactivationskip to lvchange) 
 - 
static supports_pvs_ignoreskippedcluster(root_helper)¶
- Property indicating whether pvs supports –ignoreskippedcluster - Check for LVM version >= 2.02.103. (LVM2 git: baf95bbff cmdline: Add –ignoreskippedcluster. 
 - 
supports_snapshot_lv_activation¶
- Property indicating whether snap activation changes are supported. - Check for LVM version >= 2.02.91. (LVM2 git: e8a40f6 Allow to activate snapshot) - Returns: - True/False indicating support 
 - 
static supports_thin_provisioning(root_helper)¶
- Static method to check for thin LVM support on a system. - Parameters: - root_helper – root_helper to use for execute - Returns: - True if supported, False otherwise 
 - 
update_volume_group_info()¶
- Update VG info for this instantiation. - Used to update member fields of object and provide a dict of info for caller. - Returns: - Dictionaries of VG info 
 - 
vg_mirror_free_space(mirror_count)¶
 - 
vg_mirror_size(mirror_count)¶
 
-