Allow Nova to download Glance images directly via RBD

Registered by Curt Moore

Use the nova.image.download.modules extension point to add a handler for images with a direct_url type of 'rbd'. Adding this extension will enable an image to be cached into the compute node's local libvirt image cache using a direct RBD export instead of the Glance HTTP API. In certain situations, image downloads can be substantially faster using RBD instead of the Glance HTTP API.

Blueprint information

Status:
Complete
Approver:
None
Priority:
Low
Drafter:
Curt Moore
Direction:
Approved
Assignee:
Curt Moore
Definition:
Approved
Series goal:
Accepted for victoria
Implementation:
Implemented
Milestone target:
milestone icon victoria-3
Started by
Eric Fried
Completed by
Balazs Gibizer

Related branches

Sprints

Whiteboard

Gerrit topic: https://review.openstack.org/#q,topic:bp/nova-image-download-via-rbd,n,z

Addressed by: https://review.openstack.org/572805
    Add spec for downloading images via RBD

Addressed by: https://review.openstack.org/574301
    Add ability to download Glance images into the libvirt image cache via RBD

I'm deferring this out of Rocky since we're past the spec freeze deadline. We need more operator input on the spec itself, but I think we at least know that we can hold off on removing the image download extension point until we figure out what we're going to do with this proposal. -- mriedem 20180619

Gerrit topic: https://review.opendev.org/#/q/topic:bp/nova-image-download-via-rbd

Addressed by: https://review.opendev.org/572805
    Add spec for downloading images via RBD

Addressed by: https://review.opendev.org/574301
    Add ability to download Glance images into the libvirt image cache via RBD

[efried 20200213] Deferring out of Ussuri per Tobias

Addressed by: https://review.opendev.org/725338
    Remove deprecated nova.image.download hook

Addressed by: https://review.opendev.org/727228
    [DNM] ceph direct download testing

Addressed by: https://review.opendev.org/728095
    Bring back allowed_direct_url_schemes in support of RBD image download

Addressed by: https://review.opendev.org/728411
    Adapt the admin guide to describe the direct RBD export

[gibi 20200526] approved as spec approved

Addressed by: https://review.opendev.org/743220
    WIP zuul: Enable [glance]/allowed_direct_url_schemes within nova-ceph-multistore

Addressed by: https://review.opendev.org/746904
    rbd: Move rbd_utils out of libvirt driver under nova.storage

Addressed by: https://review.opendev.org/748411
    Introduce '[glance] enable_rbd_download'

[2020-09-10 gibi]: The nova part of the feature is implemented in Victoria. There is an ongoing effort to add a separate CI job to test this

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.