OpenStack Compute (Nova)

add ability to create VMs with disks stored in LVM

Registered by Boris Filippov on 2012-01-16

Rationale
---------

`QEmu` allows several types of storages. For local storage it is possible to use regular block device, `raw` image file
or special format called `qcow2`. OpenStack offers only `raw` or `qcow2` disks. Historically our (Grid Dynamics)
infrastructure was based on `qemu-kvm` with `LVM` as disk storage. When we started moving it to OpenStack based
infrastructure we measured performance of `qcow2` disks.

In brief, our tests show performance degradation on `qcow2` disks comparing to `LVM` is 5-50% depending on operation.
The biggest difference (50%) was archived in sequential IO of very big data.

Proposal
--------

Add ability for administrator to choose, which type of local storage he wants to use: `raw`, `LVM` or `qcow2`.

We propose to introduce a new flag `libvirt_images_type` with possible values: `raw`, `lvm`, `qcow2`, `default`.

Boolean flag `use_cow_images` should be ignored, if `libvirt_images_type` is set to one of possible values,
but keep working, if `libvirt_images_type` flag is not set by user.
New flag `libvirt_images_volume_group` should be introduced for specifying volume group name for disks storage.
Boolean option `libvirt_sparse_logical_volumes` should select which type
of logical volumes will be created (sparsed with virtualsize or usual logical volumes with full space allocation). Default value for this option is `False`.

Blueprint information

Status:
Complete
Approver:
Vish Ishaya
Priority:
Low
Drafter:
Boris Filippov
Direction:
Approved
Assignee:
Boris Filippov
Definition:
Approved
Series goal:
Accepted for folsom
Implementation:
Implemented
Milestone target:
milestone icon 2012.2
Started by
Boris Filippov on 2012-01-16
Completed by
Thierry Carrez on 2012-06-19

Related branches

Sprints

Whiteboard

Gerrit topic: https://review.openstack.org/#q,topic:bp/lvm-disk-images,n,z

Addressed by: https://review.openstack.org/8032
    blueprint lvm-disk-images

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.