Comment 0 for bug 1752104

Revision history for this message
Pawel Suder (pasuder) wrote : Neutron port consistency on compute host reboot

When compute host reboots then ports in Neutron DB and Nova network cache info stays in state 'ACTIVE'. But neutron agent still hasn't reconfigure all ports yet.
This Neutron DB information is source of data for Nova events how to handle VM boot process. When port state is 'ACTIVE' it's an information
for Nova that there is no need for waiting for port configuration so VM can boots without properly configured port.

(mriedem): The _heal_instance_info_cache will rebuild the instance network info_cache: https://github.com/openstack/nova/blob/ef4000a0d326deb004843ee51d18030224c5630f/nova/compute/manager.py#L6525 - eventually calls this code to rebuild the info cache based on latest neutron info for the VM: https://github.com/openstack/nova/blob/ef4000a0d326deb004843ee51d18030224c5630f/nova/network/neutronv2/api.py#L2356

As for the hard reboot VM issue, I wonder if https://review.openstack.org/#/c/400384/ and https://review.openstack.org/#/c/400384/ help?

(mjozefcz): I think the problem still exists - when 'cron' action is being executed it uses local-cache while reading ports to build_info_cache. Please look on this:
_heal_instance_info_cache -> _build_network_info_model (port_ids=None, networks=None) -> _gather_port_ids_and_networks() https://github.com/openstack/nova/blob/ef4000a0d326deb004843ee51d18030224c5630f/nova/network/neutronv2/api.py#L1392

I'll create a bug describing the whole problem with how-to reproduce it on devstack.

(mjozefcz): This bug still exists, description: https://bugs.launchpad.net/nova/+bug/1751923