Reviewed: https://review.openstack.org/556584 Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=bb5138cff4e6c383d4d9e902423072a1493832b9 Submitter: Zuul Branch: master
commit bb5138cff4e6c383d4d9e902423072a1493832b9 Author: Miguel Lavalle <[email protected]> Date: Mon Mar 26 11:20:18 2018 -0500 Fix DHCP isolated subnets with routed networks After the merge of [1], the DHCP agent will fail to configure a routed network when attempting to generate host routes for a non-local subnet that is also isolated from the point of view of the metadata service. This patch adds a check to make sure that the host route is not added for non-local subnets. [1] https://review.openstack.org/#/c/468744 Change-Id: Ia03f538a7d2d10d600d9359da5b3a74532709d1f Closes-Bug: #1758952 ** Changed in: neutron Status: In Progress => Fix Released -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to neutron. https://bugs.launchpad.net/bugs/1758952 Title: DHCP agent fails to configure routed networks due to failure generating subnet options Status in neutron: Fix Released Bug description: In a routed networks environment, after the merge of https://review.openstack.org/#/c/468744, the dhcp agent attempts to generate subnet options for both local and non local subnets. If one of the non-local subnets is classified as isolated from the point of view of the metadata service, the following traceback occurs: Mar 26 15:21:41 compute2 neutron-dhcp-agent[31181]: ERROR neutron.agent.dhcp.agent [-] Unable to enable dhcp for 40dcd8c6-e4a1-4510-ac62-f37c11e65a5a.: KeyError: u'2cbde018-1c03-40f8-9d67-90a03c7ebd37' Mar 26 15:21:41 compute2 neutron-dhcp-agent[31181]: ERROR neutron.agent.dhcp.agent Traceback (most recent call last): Mar 26 15:21:41 compute2 neutron-dhcp-agent[31181]: ERROR neutron.agent.dhcp.agent File "/opt/stack/neutron/neutron/agent/dhcp/agent.py", line 144, in call_driver Mar 26 15:21:41 compute2 neutron-dhcp-agent[31181]: ERROR neutron.agent.dhcp.agent getattr(driver, action)(**action_kwargs) Mar 26 15:21:41 compute2 neutron-dhcp-agent[31181]: ERROR neutron.agent.dhcp.agent File "/opt/stack/neutron/neutron/agent/linux/dhcp.py", line 219, in enable Mar 26 15:21:41 compute2 neutron-dhcp-agent[31181]: ERROR neutron.agent.dhcp.agent self.spawn_process() Mar 26 15:21:41 compute2 neutron-dhcp-agent[31181]: ERROR neutron.agent.dhcp.agent File "/opt/stack/neutron/neutron/agent/linux/dhcp.py", line 446, in spawn_process Mar 26 15:21:41 compute2 neutron-dhcp-agent[31181]: ERROR neutron.agent.dhcp.agent self._spawn_or_reload_process(reload_with_HUP=False) Mar 26 15:21:41 compute2 neutron-dhcp-agent[31181]: ERROR neutron.agent.dhcp.agent File "/opt/stack/neutron/neutron/agent/linux/dhcp.py", line 455, in _spawn_or_reload_process Mar 26 15:21:41 compute2 neutron-dhcp-agent[31181]: ERROR neutron.agent.dhcp.agent self._output_config_files() Mar 26 15:21:41 compute2 neutron-dhcp-agent[31181]: ERROR neutron.agent.dhcp.agent File "/opt/stack/neutron/neutron/agent/linux/dhcp.py", line 499, in _output_config_files Mar 26 15:21:41 compute2 neutron-dhcp-agent[31181]: ERROR neutron.agent.dhcp.agent self._output_opts_file() Mar 26 15:21:41 compute2 neutron-dhcp-agent[31181]: ERROR neutron.agent.dhcp.agent File "/opt/stack/neutron/neutron/agent/linux/dhcp.py", line 872, in _output_opts_file Mar 26 15:21:41 compute2 neutron-dhcp-agent[31181]: ERROR neutron.agent.dhcp.agent options, subnet_index_map = self._generate_opts_per_subnet() Mar 26 15:21:41 compute2 neutron-dhcp-agent[31181]: ERROR neutron.agent.dhcp.agent File "/opt/stack/neutron/neutron/agent/linux/dhcp.py", line 933, in _generate_opts_per_subnet Mar 26 15:21:41 compute2 neutron-dhcp-agent[31181]: ERROR neutron.agent.dhcp.agent subnet_dhcp_ip and subnet.ip_version == 4): Mar 26 15:21:41 compute2 neutron-dhcp-agent[31181]: ERROR neutron.agent.dhcp.agent KeyError: u'2cbde018-1c03-40f8-9d67-90a03c7ebd37' Mar 26 15:21:41 compute2 neutron-dhcp-agent[31181]: ERROR neutron.agent.dhcp.agent This traceback is due to the fact that the non-local subnet in question has no interface in the DHCP agent namespace, so it is not found when: subnet_dhcp_ip = subnet_to_interface_ip[subnet.id] is executed To manage notifications about this bug go to: https://bugs.launchpad.net/neutron/+bug/1758952/+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

