LVM Sparse Volumes broken

Bug #1740025 reported by Henry Spanka
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Won't Fix
Undecided
Unassigned

Bug Description

Description
===========
Instance creation with LVM Sparse volumes as root disk is broken.

Steps to reproduce
==================
Configure nova-compute to use LVM with sparse volumes:
Add to /etc/nova/nova.conf and restart nova-compute:
[libvirt]
images_type=lvm
images_volume_group=<volume-group>
sparse_logical_volumes=true

Schedule an instance with an image that is bigger than 64 MB.

Expected result
===============
Instance is created successfully.

Actual result
=============
Error while writing the image to the logical volume because the Image is bigger than the preallocated 64 MB volume.

Please see attached log file.

Environment
===========
OpenStack Release: Pike
Nova Version: 16.0.3 (CentOS 7 RPM)

Hypervisor Type: Libvirt + KVM

Storage Type: LVM (Sparse)

Networking Type (not applicable): Neutron with LinuxBridge

References
==========

This bug was already reported to Mirantis OpenStack: https://bugs.launchpad.net/mos/+bug/1591084

Revision history for this message
Henry Spanka (henryspanka) wrote :

Attached nova-compute log.

description: updated
description: updated
tags: added: libvirt openstack-version.pike volumes
Revision history for this message
Matt Riedemann (mriedem) wrote :

Have Chris Friesen take a look at this, he's pretty familiar with the LVM stuff in nova I think.

Revision history for this message
Sylvain Bauza (sylvain-bauza) wrote :

Honestly, I wonder if LVM sparse LVs worked. Looks like we don't have any functiona tests for that (just the unittests) and we merged the blueprint by 5 years ago.

If you also see that comment in https://github.com/openstack/nova/blob/c1eb6f0/nova/virt/libvirt/imagebackend.py#L688-L689 looks like the sparse LVs should be deprecated.

FWIW, that deprecation comment was also merged 5 years ago, which means we don't really support that now.

Given also now we have Cinder volumes, it's possible to ask Cinder to have thin provisioning instead of using LVM sparse LVs by using that document https://docs.openstack.org/cinder/latest/admin/blockstorage-over-subscription.html

So, given the above, setting that bug as Wontfix and we will be trying to really deprecate sparse LVs by the next release.

Changed in nova:
status: New → Won't Fix
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.