instance's host isn't updated if nova-compute stops operating during live-migration
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Confirmed
|
Low
|
Unassigned |
Bug Description
I do a live-migration from host1 to host2. If during live migration nova-compute service stops operating it will leave things in messy state. Even when live migration ends successfully from hypervisor perspective, nova does not update VM's host to new one. It also leaves VIFs and volume connections on source host.
nova list show that the instance is still active (actually it is because live migration has completed. However, nova loses track of a VM)
taget@liyong:
+------
| ID | Name | Status | Task State | Power State | Networks |
+------
| 1d114104-
'nova show test1' shows that this instance is still on host1 (because service nova-compute on host1 crashed and it had no chance to update it).
After that any nova operation on this instance fails because nova tries to execute every operation on old host (after such fail nova changes instance state to error).
Changed in nova: | |
assignee: | nobody → Eli Qiao (taget-9) |
Changed in nova: | |
importance: | Undecided → Low |
status: | New → Confirmed |
tags: | added: live-migrate |
Changed in nova: | |
status: | Confirmed → Opinion |
Changed in nova: | |
status: | Incomplete → Confirmed |
description: | updated |
description: | updated |
summary: |
- instance 's host was not updated after live-migration if source compute - host crash + instance's host isnnot updated if nova-compute stops operating during + live-migration |
summary: |
- instance's host isnnot updated if nova-compute stops operating during + instance's host isn't updated if nova-compute stops operating during live-migration |
tags: |
added: live-migration removed: live-migrate |
Changed in nova: | |
assignee: | Eli Qiao (taget-9) → nobody |
I think for this issue, currently there isn't any good solution sto fix this issue since the status is mainly controled by the source host,
if source host is crashed/or be killed by mistake /or lose power.
so, I am thinking if we can add some logic in periodic task to correct instance's state per compute's real state??