Bug 1041144

Summary: [RFE][nova]: Libvirt driver - enable images as disks on the hypervisor local storage
Product: Red Hat OpenStack Reporter: RHOS Integration <rhos-integ>
Component: openstack-novaAssignee: RHOS Maint <rhos-maint>
Status: CLOSED UPSTREAM QA Contact:
Severity: unspecified Docs Contact:
Priority: medium    
Version: unspecifiedCC: markmc, ndipanov, sgordon, yeylon
Target Milestone: ---Keywords: FutureFeature, Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
URL: https://blueprints.launchpad.net/nova/+spec/libvirt-image-to-local-bdm
Whiteboard: upstream_milestone_none upstream_status_unknown upstream_definition_review
Fixed In Version: Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-04-15 14:54:40 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description RHOS Integration 2013-12-12 13:47:08 UTC
Cloned from launchpad blueprint https://blueprints.launchpad.net/nova/+spec/libvirt-image-to-local-bdm.

Description:

As part of the havana blueprint improve-block-device-handling we added the possibility to have glance images specified as block devices, and wa also added the field to specify the target of the block device.

The idea behind this is that we would be able to specify weather the image would be created on the hypervisor (dest=local) or will be downloaded onto a volume similar to a Cinder snapshot (dest=volume).

Implementing the 'dest: local' images will require some work:

* Since the way these block devices will be handled is different than what we currently have (for block devices) - we will need to generilize the code that does base image download in creation to be able to accept data passed as image block devices.

* We will likely want to take advantage of using base images and caching them on hypervisor nodes - so this blueprint will cover extending and generalizing the code in nova/virt/libvirt/imagecache.py to be aware of the block devices and handle them according to the system configuration.

* We will need to make sure that drivers can advertise to the manager code that they will accept these new block devices. Most of the groundwork for this is laid out in https://review.openstack.org/#/c/39086/ and it will be mostly a matter of implementing a new DriverBlockDevice subtype.

* We will likely want to add horizon support for this as well.

Specification URL (additional information):

None

Comment 2 Stephen Gordon 2014-01-24 16:34:59 UTC
Updating based on BP milesone.