Unable to boot from volume when flavor disk too small
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Fix Released
|
Undecided
|
Matthew Booth | ||
Kilo |
Fix Released
|
Undecided
|
Unassigned | ||
nova (Ubuntu) |
Fix Released
|
High
|
Liang Chen | ||
Vivid |
Fix Released
|
High
|
Unassigned |
Bug Description
[Impact]
* Without the backport, booting from volume requires flavor disk size larger than volume size, which is wrong. This patch skips flavor disk size checking when booting from volume.
[Test Case]
* 1. create a bootable volume
2. boot from this bootable volume with a flavor that has disk size smaller than the volume size
3. error should be reported complaining disk size too small
4. apply this patch
5. boot from that bootable volume with a flavor that has disk size smaller than the volume size again
6. boot should succeed
[Regression Potential]
* none
Version: 1:2015.
I attempt to boot an instance from a volume:
nova boot --nic net-id=[NET ID] --flavor v.512mb --block-device source=
This results in nova-api raising a FlavorDiskTooSmall exception in the "_check_
[1] http://
Log (first line is debug output I added showing that it's looking at the image that the volume was created from):
2015-05-21 10:28:00.586 25835 INFO nova.compute.api [req-1fb882c7-
2015-05-21 10:28:00.587 25835 INFO nova.api.
Temporary solution: I have special flavor for volume-backed instances so I just set the root disk on those to 0, but this doesn't work if volume are used on other flavors.
Reproduce: create flavor with 1 GB root disk size, then try to boot an instance from a volume created from an image that is larger than 1 GB.
Related branches
- Billy Olsen (community): Needs Fixing
- Ubuntu Server Developers: Pending requested
-
Diff: 3090 lines (+1634/-650) (has conflicts)77 files modifieddebian/changelog (+237/-0)
debian/compat (+1/-1)
debian/control (+150/-141)
debian/nova-api-ec2.init.in (+20/-0)
debian/nova-api-ec2.logrotate (+0/-7)
debian/nova-api-ec2.upstart (+0/-18)
debian/nova-api-metadata.init.in (+20/-0)
debian/nova-api-metadata.logrotate (+0/-7)
debian/nova-api-metadata.upstart (+0/-18)
debian/nova-api-os-compute.init.in (+20/-0)
debian/nova-api-os-compute.logrotate (+0/-7)
debian/nova-api-os-compute.upstart (+0/-18)
debian/nova-api.init.in (+20/-0)
debian/nova-api.logrotate (+0/-7)
debian/nova-api.upstart (+0/-18)
debian/nova-baremetal.init.in (+20/-0)
debian/nova-baremetal.install (+0/-2)
debian/nova-baremetal.logrotate (+0/-7)
debian/nova-baremetal.upstart (+0/-18)
debian/nova-cells.init.in (+20/-0)
debian/nova-cells.logrotate (+0/-7)
debian/nova-cells.upstart (+0/-17)
debian/nova-cert.init.in (+20/-0)
debian/nova-cert.logrotate (+0/-7)
debian/nova-cert.upstart (+0/-18)
debian/nova-common.logrotate (+7/-0)
debian/nova-common.nova-manage.logrotate (+0/-7)
debian/nova-compute.init.in (+26/-0)
debian/nova-compute.install (+0/-1)
debian/nova-compute.logrotate (+0/-7)
debian/nova-conductor.init.in (+20/-0)
debian/nova-conductor.logrotate (+0/-7)
debian/nova-conductor.upstart (+0/-18)
debian/nova-console.init.in (+18/-0)
debian/nova-console.logrotate (+0/-8)
debian/nova-console.upstart (+0/-19)
debian/nova-consoleauth.init.in (+18/-0)
debian/nova-consoleauth.logrotate (+0/-8)
debian/nova-consoleauth.upstart (+0/-19)
debian/nova-network.init.in (+18/-0)
debian/nova-network.logrotate (+0/-7)
debian/nova-network.nova-dhcpbridge.logrotate (+0/-7)
debian/nova-network.upstart (+0/-17)
debian/nova-novncproxy.init.in (+20/-0)
debian/nova-novncproxy.logrotate (+0/-7)
debian/nova-novncproxy.upstart (+0/-17)
debian/nova-objectstore.init.in (+18/-0)
debian/nova-objectstore.logrotate (+0/-10)
debian/nova-objectstore.upstart (+0/-17)
debian/nova-scheduler.init.in (+18/-0)
debian/nova-scheduler.logrotate (+0/-7)
debian/nova-scheduler.upstart (+0/-18)
debian/nova-serialproxy.init.in (+20/-0)
debian/nova-serialproxy.install (+1/-0)
debian/nova-serialproxy.manpages (+1/-0)
debian/nova-spiceproxy.init.in (+21/-0)
debian/nova-spiceproxy.logrotate (+0/-7)
debian/nova-spiceproxy.manpages (+1/-0)
debian/nova-spiceproxy.upstart (+0/-17)
debian/nova-xvpvncproxy.init.in (+16/-0)
debian/nova-xvpvncproxy.logrotate (+0/-7)
debian/nova-xvpvncproxy.upstart (+0/-17)
debian/patches/arm-console-patch.patch (+13/-13)
debian/patches/disable-websockify-tests.patch (+92/-0)
debian/patches/neutron-floating-ip-list.patch (+1/-6)
debian/patches/not-check-disk-size.patch (+486/-0)
debian/patches/rate-limit-power-syncs.patch (+179/-0)
debian/patches/series (+8/-1)
debian/patches/skip-cinder-tests.patch (+61/-0)
debian/patches/skip-proxy-test.patch (+15/-0)
debian/patches/skip-ubuntu-tests.patch (+0/-39)
debian/patches/update-run-tests.patch (+1/-1)
debian/pydist-overrides (+14/-0)
debian/rules (+10/-20)
debian/tests/control (+1/-1)
debian/tests/nova-daemons (+1/-1)
debian/watch (+1/-1)
- Ubuntu Server Developers: Pending requested
-
Diff: 524 lines (+500/-0)3 files modifieddebian/changelog (+5/-0)
debian/patches/not-check-disk-size.patch (+494/-0)
debian/patches/series (+1/-0)
description: | updated |
description: | updated |
description: | updated |
Changed in nova: | |
assignee: | nobody → wangxiyuan (wangxiyuan) |
Changed in nova: | |
status: | New → In Progress |
tags: | added: launch volumes |
Changed in nova: | |
assignee: | nobody → Feodor Tersin (ftersin) |
status: | New → In Progress |
Changed in nova: | |
assignee: | Matthew Booth (mbooth-9) → Daniel Berrange (berrange) |
Changed in nova: | |
assignee: | Daniel Berrange (berrange) → Matthew Booth (mbooth-9) |
tags: | added: sts |
description: | updated |
Changed in nova (Ubuntu): | |
assignee: | nobody → Liang Chen (cbjchen) |
Changed in nova: | |
milestone: | none → liberty-3 |
status: | Fix Committed → Fix Released |
Changed in nova (Ubuntu): | |
milestone: | none → vivid-updates |
milestone: | vivid-updates → none |
Changed in nova: | |
milestone: | liberty-3 → 12.0.0 |
it's confirmed.But I think we have to discuss whether it's a bug.
For example:
create a 2G bootable volume and the image is large than 1G(maybe 1.5G)
then the error "flavor disk too small" is ok.