During a conversion process cinder can overfill a controller root file system

Bug #1653225 reported by Ivan Kolodyazhny
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Cinder
Fix Released
Undecided
Ivan Kolodyazhny

Bug Description

When I create a new volume from a very large QCOW image (virtual size) the root file system of a controller might be overfilled because the cinder downloads the full size image to the /var/lib/cinder/conversion/ directory

Steps to reproduce:
Install one controller and two ceph/compute nodes. The controller has to have the minimal possible size of a root filesystem (20GB). Ceph size should be enough to keep about 30GB. Create a QCOW2 image with large virtual size and upload it to Glance:

root@node-2:/var/lib/nova/tmp# qemu-img info ubuntu_qcow_20GB.qcow2
image: ubuntu_qcow_20GB.qcow2
file format: qcow2
virtual size: 20G (21474836480 bytes)
disk size: 835M
cluster_size: 65536
Format specific information:
    compat: 1.1
    lazy refcounts: false
    refcount bits: 16
    corrupt: false

Then try to create a new volume from this image:
root@node-1:~# cinder create --image-id 4a5c016b-dff0-4e52-b640-bd63528911a6 --name volume_from_image_20GB 20

During the conversion Cinder will download the whole image to the /var/lib/cinder/conversion/ directory and it might overfill the root directory of a controller node

Expected results:
Root filesystem should not be overfilled

Workaround:
1. To keep images in Raw format in Ceph so that Cinder does not download them but perform snapshots in Ceph storage
2. To forcefully separate /var from the root file system

This bug also affect other cinder backends

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to cinder (master)

Fix proposed to branch: master
Review: https://review.openstack.org/415868

Changed in cinder:
assignee: nobody → Ivan Kolodyazhny (e0ne)
status: New → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to cinder (master)

Reviewed: https://review.openstack.org/415868
Committed: https://git.openstack.org/cgit/openstack/cinder/commit/?id=494264e797107a36804f8d25d0e6af246e0a140b
Submitter: Jenkins
Branch: master

commit 494264e797107a36804f8d25d0e6af246e0a140b
Author: Ivan Kolodyazhny <email address hidden>
Date: Fri Dec 30 13:46:26 2016 +0200

    Check if volume node has enough space for image operations

    Add check if free space is more than image size before downloading and
    convertion.

    Change-Id: I66f9e50cc8b7135d58822e13f62dea91ccb37c23
    Closes-Bug: #1653225

Changed in cinder:
status: In Progress → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/cinder 10.0.0.0rc1

This issue was fixed in the openstack/cinder 10.0.0.0rc1 release candidate.

Revision history for this message
Alexander Bozhenko (alexbozhenko) wrote :
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.