nova portbinding information for live migration

Registered by Armando Migliaccio

The goal of this spec is to provide nova the required portbinding information for live migration. This spec proposes to allow a port to have a second inactive binding. During migration, the host that runs the instance has the active binding, while the binding
belonging to the other host is inactive. A new API is required to externalize this new inactive binding.

Blueprint information

Status:
Complete
Approver:
Ihar Hrachyshka
Priority:
High
Drafter:
Andreas Scheuring
Direction:
Approved
Assignee:
Miguel Lavalle
Definition:
Approved
Series goal:
Accepted for rocky
Implementation:
Implemented
Milestone target:
milestone icon rocky-3
Started by
Armando Migliaccio
Completed by
Miguel Lavalle

Related branches

Sprints

Whiteboard

Jan-19-2017(armax): spec approved, model change about to land (https://review.openstack.org/#/c/404293/)
Oct-13-2017(mlavalle): API definition merged in neutron-lib: https://review.openstack.org/#/c/484389/
Oct-13-2017 (mlavalle): Miguel Lavalle will continue work on the service plugin implementing API: https://review.openstack.org/#/c/414251/

Gerrit topic: https://review.openstack.org/#/q/topic:bp/live-migration-portbinding,n,z

Addressed by: https://review.openstack.org/512124
    Add new resource for port bindings

Addressed by: https://review.openstack.org/414251
    Multiple port binding extension and service plugin

Addressed by: https://review.openstack.org/512129
    [WIP] Handle multiple port bindings in ML2

Gerrit topic: https://review.openstack.org/#q,topic:bp/live-migration-portbinding,n,z

Addressed by: https://review.openstack.org/558990
    Update get_port_binding_host for multiple bindings

Addressed by: https://review.openstack.org/563803
    Add binding_deactivate method to Linux bridge agent

Addressed by: https://review.openstack.org/585559
    use get_port_binding_by_status_and_host from lib

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.