Public bug reported: SYMPTOM: 1.neutron dhcp-agent-network-remove [dhcp agent of network Node1] [network] 2.neutron dhcp-agent-network-add [dhcp agent of network Node2] [network] 3.neutron port-show [dhcp-port] Then the status of dhcp port change to BUILD, and this will cause the dhcp server and the metadata server can't work normally.
CAUSE: First I find the binding:host_id of dhcp port doesn't change to the new host_id after dhcp-agent-network-add. Then I check the code, I find it the status of port change to BUILD in the devices_details_list = self.plugin_rpc.get_devices_details_list in ovs_neutron_agent.py. And it should change the status of port to ACTIVE in update_device_up,but in the update_device_up we can see: if (host and not plugin.port_bound_to_host(rpc_context, port_id, host)): LOG.debug(_("Device %(device)s not bound to the" " agent host %(host)s"), {'device': device, 'host': host}) return We can see this,it return directly because the port didn't bind to the new host, so cause the problem. FIX: I think we should update the binding:host_id of dhcp port to the new host. ** Affects: neutron Importance: Undecided Status: Invalid ** Changed in: neutron Status: New => Invalid -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to neutron. https://bugs.launchpad.net/bugs/1410066 Title: Add network to new dhcp agent cause the dhcp port status to be BUILD Status in OpenStack Neutron (virtual network service): Invalid Bug description: SYMPTOM: 1.neutron dhcp-agent-network-remove [dhcp agent of network Node1] [network] 2.neutron dhcp-agent-network-add [dhcp agent of network Node2] [network] 3.neutron port-show [dhcp-port] Then the status of dhcp port change to BUILD, and this will cause the dhcp server and the metadata server can't work normally. CAUSE: First I find the binding:host_id of dhcp port doesn't change to the new host_id after dhcp-agent-network-add. Then I check the code, I find it the status of port change to BUILD in the devices_details_list = self.plugin_rpc.get_devices_details_list in ovs_neutron_agent.py. And it should change the status of port to ACTIVE in update_device_up,but in the update_device_up we can see: if (host and not plugin.port_bound_to_host(rpc_context, port_id, host)): LOG.debug(_("Device %(device)s not bound to the" " agent host %(host)s"), {'device': device, 'host': host}) return We can see this,it return directly because the port didn't bind to the new host, so cause the problem. FIX: I think we should update the binding:host_id of dhcp port to the new host. To manage notifications about this bug go to: https://bugs.launchpad.net/neutron/+bug/1410066/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : yahoo-eng-team@lists.launchpad.net Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp