Merge lp://qastaging/~vishvananda/nova/cow into lp://qastaging/~hudson-openstack/nova/trunk
Status: | Merged |
---|---|
Approved by: | Soren Hansen |
Approved revision: | 523 |
Merged at revision: | 562 |
Proposed branch: | lp://qastaging/~vishvananda/nova/cow |
Merge into: | lp://qastaging/~hudson-openstack/nova/trunk |
Diff against target: |
542 lines (+195/-154) 4 files modified
contrib/nova.sh (+3/-2) nova/virt/disk.py (+84/-103) nova/virt/libvirt.xml.template (+13/-3) nova/virt/libvirt_conn.py (+95/-46) |
To merge this branch: | bzr merge lp://qastaging/~vishvananda/nova/cow |
Related bugs: | |
Related blueprints: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Soren Hansen (community) | Approve | ||
Devin Carlen (community) | Approve | ||
Review via email: mp+45293@code.qastaging.launchpad.net |
Description of the change
This modifies libvirt to use CoW images instead of raw images. This is much more efficient and allows us to use the snapshotting capabilities available for qcow2 images. It also changes local storage to be a separate drive instead of a separate partition.
I'm proposing this branch for review to get feedback. I may have inadvertently broken a few things. Comments and possible issues:
1. I haven't tested the other hypervisors. I may have broken libvirt xen support and uml support with this patch.
2. Is it useful to have a use_cow_images param, or should it just be automatic for qemu/kvm and turned off for everything else.
3. create_image is a large annoying method. I tried to clean it up a bit, but it could probably use a bit more refactoring.
4. disk.py seems to be only used by the hypervisors, so perhaps it should move into virt dir.
5. disk.py/partition() is unused now. Should we leave it in or throw it away?
Comments welcome
Looks like this won't make it by FeatureFreeze, and given the regression risks it looks like a good target for early Cactus rather than late Bexar...