Project

General

Profile

Actions

Feature #17178

open

[OpenStack Glance] update store driver to sparsify rbd-backed images

Added by Jason Dillaman over 7 years ago. Updated almost 7 years ago.

Status:
In Progress
Priority:
Normal
Assignee:
-
Target version:
-
% Done:

0%

Source:
other
Tags:
Backport:
Reviewed:
Affected Versions:
Pull request ID:

Description

If a task flow isn't being utilized to automatically convert qcow2 images to raw images on the glance backend, the user must upload raw images to RBD-back glance pools. It would be nice if the RBD glance store would support skipping fully zeroed blocks when importing the image to the RBD pool.

Actions #1

Updated by Anonymous over 7 years ago

Is the python rbd binding support skipping fully zeroed blocks? I found use cli, it will, but python binding is not, which tested 1 years ago.

Actions #2

Updated by Jason Dillaman over 7 years ago

@Tianqing Li: there is logic within the rbd CLI's import tool to skip fully zeroed blocks. We could optionally put some logic deep within the librbd IO path to convert a write of all zeroes to a discard operation. However, not only would this take a little more CPU to scan the buffer for each write request, if the writes are small enough (i.e. not block size), librbd would still just end up writing zeroes to the OSDs and by default the OSDs don't punch holes (filestore_punch_hole = false) -- so you'd just end up with a potentially fully allocated file again. That is why it's best to fix this upstream.

Actions #3

Updated by Anonymous over 7 years ago

I know,we should implement the similar logic of rbd CLI's import tool in glance store. I can help on it.

Actions #4

Updated by Jason Dillaman almost 7 years ago

  • Status changed from New to In Progress
Actions

Also available in: Atom PDF