Reviewed:  https://review.opendev.org/364793
Committed: 
https://git.openstack.org/cgit/openstack/neutron/commit/?id=8f057fb49ac637bd0dbf60ca07b89f0e4a59c7b7
Submitter: Zuul
Branch:    master

commit 8f057fb49ac637bd0dbf60ca07b89f0e4a59c7b7
Author: LIU Yulong <[email protected]>
Date:   Fri Aug 19 10:16:44 2016 +0800

    DVR: Ignore DHCP port during DVR host query
    
    For large scale deployment, the dvr router will be installed to
    the scheduled DHCP host. This will definitely increase the l3
    agent service pressure, especially in large number of concurrent
    updates, creation, or agent restart.
    
    This patch adds a config ``host_dvr_for_dhcp`` for the DHCP port
    device_owner filter during DVR host query. Then if we set
    ``host_dvr_for_dhcp = False``, L3-agent will not host the DVR router
    namespace in its connected networks' DHCP agent hosts.
    
    Closes-Bug: #1609217
    Change-Id: I53e20be9b306bf9d3b34ec6a31e3afabd5a0fd6f


** 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/1609217

Title:
  DVR: dvr router ns should not exist in scheduled DHCP agent nodes

Status in neutron:
  Fix Released

Bug description:
  ENV:
  stable/mitaka
  hosts:
  compute1 (nova-compute, l3-agent (dvr), metedate-agent)
  compute2 (nova-compute, l3-agent (dvr), metedate-agent)
  network1 (l3-agent (dvr_snat), metedata-agent, dhcp-agent)
  network2 (l3-agent(dvr_snat), metedata-agent, dhcp-agent)

  How to reproduce? (scenario 1)
  set: dhcp_agents_per_network = 2

  1. create a DVR router:
  neutron router-create --ha False --distributed True test1

  2. Create a network & subnet with dhcp enabled.
  neutron net-create test1
  neutron subnet-create --enable-dhcp test1 --name test1 192.168.190.0/24

  3. Attach the router and subnet
  neutron router-interface-add test1 subnet=test1

  Then the router test1 will exist in both network1 and network2. But in
  the DB routerl3agentbindings, there is only one record for DVR router
  to one l3 agent.

  http://paste.openstack.org/show/547695/

  And for another scenario 2:
  change the network2 node deployment to only run metedata-agent, dhcp-agent.
  Both in the qdhcp-namespace and the VM could ping each other.
  So qrouter-namespace in the not-binded network node is not used, and should 
not exist.

  Code:
  The essential code issue may be DHCP port should not be considered in DVR 
host query.
  https://github.com/openstack/neutron/blob/master/neutron/common/utils.py#L258

To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1609217/+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

Reply via email to