libvirt resize down prevention is invalid when using rbd as backend
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Fix Released
|
Medium
|
Feodor Tersin |
Bug Description
when using ceph as backend, instance can resize to a smaller flavor successfully without any exception, ResizeError failed to raise.
when using ceph as backend, xml file looks like this:
<disk type='network' device='disk'>
<driver name='qemu' type='raw' cache='writeback'/>
<auth username='cinder'>
<secret type='ceph' uuid='457eb676-
</auth>
<source protocol='rbd' name='vms/
<host name='172.16.40.18' port='6789'/>
</source>
<target dev='vda' bus='virtio'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
</disk>
As the disk type is network, so get_instance_
nova/virt/
def _get_instance_
......
for cnt, path_node in enumerate(
path = path_node.
target = target_
if not path:
if disk_type not in ['file', 'block']:
if target in volume_devices:
......
nova/virt/
@staticmethod
def _is_booted_
Determines whether the disk mapping indicates that the VM
is booting from a volume.
"""
return ((not bool(instance.
or 'disk' not in disk_mapping)
In the end when migrate_
Changed in nova: | |
assignee: | nobody → Yang Shengming (yang-shengming) |
Changed in nova: | |
assignee: | Yang Shengming (yang-shengming) → Feodor Tersin (ftersin) |
Changed in nova: | |
assignee: | Feodor Tersin (ftersin) → Yang Shengming (yang-shengming) |
Changed in nova: | |
importance: | Undecided → Medium |
description: | updated |
Changed in nova: | |
assignee: | Yang Shengming (yang-shengming) → Feodor Tersin (ftersin) |
Which version of nova are you hitting this on? Does it exist in the latest release (mitaka)?