Block live migrations are broken when nova calculates live migration type by itself
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Fix Released
|
Critical
|
Pawel Koniszewski |
Bug Description
All block live migrations are broken when I want nova to calculate live migration type by specifying {'block_migration': 'auto'} in request body. This happens because block_migration and migrate_
In conductor live migrate task we call checks on destination and source that builds up migrate_data in driver and sends them back to conductor:
https:/
Here we calculate block migration, this is fine:
https:/
Then it goes back to conductor and we call compute manager sending both flags - block_migration and migrate_
https:/
Because down in compute manager (and in drivers) we use both flags that have different values (here block_migration
https:/
We break all block live migrations with:
Traceback (most recent call last):
File "/usr/local/
timer()
File "/usr/local/
cb(*args, **kw)
File "/usr/local/
waiter.
File "/usr/local/
result = function(*args, **kwargs)
File "/opt/stack/
return func(*args, **kwargs)
File "/opt/stack/
instance=
File "/usr/local/
self.
File "/usr/local/
six.
File "/opt/stack/
CONF.
File "/usr/local/
result = proxy_call(
File "/usr/local/
rv = execute(f, *args, **kwargs)
File "/usr/local/
six.reraise(c, e, tb)
File "/usr/local/
rv = meth(*args, **kwargs)
File "/usr/local/
if ret == -1: raise libvirtError ('virDomainMigr
libvirtError: Cannot access storage file '/opt/stack/
Fast workaround is making sure at compute manager level that block_migration == migrate_
description: | updated |
Changed in nova: | |
importance: | Undecided → Critical |
status: | New → In Progress |
assignee: | nobody → Pawel Koniszewski (pawel-koniszewski) |
tags: | added: mitaka-rc-potential |
Changed in nova: | |
milestone: | none → mitaka-rc1 |
Changed in nova: | |
assignee: | Pawel Koniszewski (pawel-koniszewski) → John Garbutt (johngarbutt) |
Changed in nova: | |
assignee: | John Garbutt (johngarbutt) → Pawel Koniszewski (pawel-koniszewski) |
tags: | removed: mitaka-rc-potential |
I agree that we should fix it properly and It would be nice to have a tempest test for the case reported in this bug.