Public bug reported: Migration operations between multiple cells is not supported in Pike, but the LiveMigrateTask in conductor does not restrict the RequestSpec.requested_destination.cell to the original cell that the instance is in when calling the scheduler's select_destination method.
https://github.com/openstack/nova/blob/16.0.0.0rc1/nova/conductor/tasks/live_migrate.py#L153 And when forcing a host during live migration, it completely bypasses the scheduler altogether: https://github.com/openstack/nova/blob/16.0.0.0rc1/nova/conductor/tasks/live_migrate.py#L91 We could fix the former by adding the cell mapping to the requested_destination like for a cold migration: https://github.com/openstack/nova/blob/16.0.0.0rc1/nova/conductor/tasks/migrate.py#L51-L65 As for the latter (forced host, bypass the scheduler), we could just leave it and let it fail - you'd likely get some kind of unhelpful RPC error since the computes can't talk to each other. Or we could get the cell mapping for the source node and destination node and verify they are the same and fail in a clear way if they are not. ** Affects: nova Importance: Medium Assignee: Chris Friesen (cbf123) Status: Triaged ** Tags: cells live-migration pike-rc-potential ** Changed in: nova Status: New => Triaged ** Changed in: nova Assignee: (unassigned) => Chris Friesen (cbf123) ** Tags added: pike-rc-potential -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to OpenStack Compute (nova). https://bugs.launchpad.net/bugs/1712210 Title: Live migration does not restrict to the original cell Status in OpenStack Compute (nova): Triaged Bug description: Migration operations between multiple cells is not supported in Pike, but the LiveMigrateTask in conductor does not restrict the RequestSpec.requested_destination.cell to the original cell that the instance is in when calling the scheduler's select_destination method. https://github.com/openstack/nova/blob/16.0.0.0rc1/nova/conductor/tasks/live_migrate.py#L153 And when forcing a host during live migration, it completely bypasses the scheduler altogether: https://github.com/openstack/nova/blob/16.0.0.0rc1/nova/conductor/tasks/live_migrate.py#L91 We could fix the former by adding the cell mapping to the requested_destination like for a cold migration: https://github.com/openstack/nova/blob/16.0.0.0rc1/nova/conductor/tasks/migrate.py#L51-L65 As for the latter (forced host, bypass the scheduler), we could just leave it and let it fail - you'd likely get some kind of unhelpful RPC error since the computes can't talk to each other. Or we could get the cell mapping for the source node and destination node and verify they are the same and fail in a clear way if they are not. To manage notifications about this bug go to: https://bugs.launchpad.net/nova/+bug/1712210/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : [email protected] Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp

