Reviewed: https://review.openstack.org/481785 Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=13eea520b5c03010dc4b42a9dcf41b004fe40ed7 Submitter: Jenkins Branch: master
commit 13eea520b5c03010dc4b42a9dcf41b004fe40ed7 Author: Liping Mao (limao) <[email protected]> Date: Sat Jul 8 10:22:28 2017 +0800 dhcp agent start md-proxy with vrouter id only when has metadata subnet When user create network with isolated subnet, dhcp agent will create md-proxy with vrouter id. This will conflict with then md-proxy created by l3 agent. This patch updated dhcp agent start md-proxy with vrouter id only when the network has metadata subnet. Change-Id: I3288327bf9d0cdf759a6fdf365d1289e8b7442db Closes-Bug: #1703059 ** 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/1703059 Title: DHCP agent should not start metadata ns proxy with vrouter id Status in neutron: Fix Released Bug description: When user create network with isolated subnet, dhcp may create metadata ns proxy with router id. How to reproduce: 1. create a router: R1 2. create a network: Net1 3. create two subnetworks: Sub1, Sub2 4. attach Sub1 to R1. (do not attach Sub2) if you deploy dhcp-agent and l3-agent on seperate node, you will see: a) dhcp-agent will start metadata ns proxy with router-uuid with port 80 (This metadata ns proxy will not work in data path) Here is a sample, you can see the metadata_port is 80 with router_id: neutron 237535 0.0 0.2 295864 46284 ? S Jul07 0:00 /usr/bin/python2 /bin/neutron-ns-metadata-proxy --pid_file=/var/lib/neutron/external/pids/160f2356-3bf5-4a1c-80e6-b9ef8b971047.pid --metadata_proxy_socket=/var/lib/neutron/metadata_proxy --router_id=160f2356-3bf5-4a1c-80e6-b9ef8b971047 --state_path=/var/lib/neutron --metadata_port=80 --metadata_proxy_user=995 --metadata_proxy_group=992 --debug --log-file=neutron-ns-metadata-proxy-160f2356-3bf5-4a1c-80e6-b9ef8b971047.log --log-dir=/var/log/neutron b) l3-agent will start metadata ns proxy with router-uuid with port 9697 (This metadata ns proxy works in data path) if you deploy deploy dhcp-agent and l3-agent on same node, metadata ns proxy may start by dhcp or l3 agent, both process manager in dhcp agent and l3 agent will monitor this metadata ns proxy. This means if you kill this metadata ns proxy, it may be start up by dhcp agent or l3 agent, this is relay on which agent start it first. you will see the port of metadata ns proxy may be 80 or 9697. The action is unpredictable. The problem is DHCP agent should not manage metadata ns proxy with router_id, this kind of metadata ns proxy should be managed by l3 agent. When dhcp agent find isolated subnet, it should start metadata ns proxy with network_id, not router_id, the following code should be removed: https://github.com/openstack/neutron/blob/master/neutron/agent/dhcp/agent.py#L508 To manage notifications about this bug go to: https://bugs.launchpad.net/neutron/+bug/1703059/+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

