codehaus


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[ops][nova][neutron] Proper way to migrate instances between nodes with different ML2 agents types


On 11/8/2019 3:53 AM, Antoine Millet wrote:
> How can I do those migration the proper way?

[1] was implemented in Rocky to support live migration between different 
networking backends (vif types).

A couple of things to check:

1. Is Neutron fully upgraded to Rocky and exposing the "Port Bindings 
Extended" (binding-extended) extension? Nova uses that to determine if 
neutron is new enough to create an inactive port binding for the target 
host prior to starting the live migration.

2. Are your nova-compute services all upgraded to at least Rocky and 
reporting version >=35 in the services table in the cell1 DB? [2]

3. Do you have [compute]/upgrade_levels RPC pinned to anything below 
Rocky? Or is that configured to "auto"?

These are things to check just to make sure the basic upgrade 
requirements are satisfied before the code will even attempt to do the 
new style binding flow for live migration.

If that's all working properly, you should see this DEBUG log message on 
the source host during live migration [4].

[1] 
https://specs.openstack.org/openstack/nova-specs/specs/rocky/implemented/neutron-new-port-binding-api.html
[2] 
https://github.com/openstack/nova/blob/a90fe1951200ebd27fe74788c0a96c01104ac2cf/nova/conductor/tasks/live_migrate.py#L41
[3] 
https://docs.openstack.org/nova/rocky/configuration/config.html#upgrade_levels.compute
[4] 
https://github.com/openstack/nova/blob/a90fe1951200ebd27fe74788c0a96c01104ac2cf/nova/virt/libvirt/migration.py#L317

-- 

Thanks,

Matt