Hi list, I'm working under Havana. openstack-neutron.noarch 2013.2-1.el6 @openstack-havana openstack-neutron-linuxbridge.noarch 2013.2-1.el6 @openstack-havana openstack-neutron-openvswitch.noarch 2013.2-1.el6 @openstack-havana python-neutron.noarch 2013.2-1.el6 @openstack-havana python-neutronclient.noarch 2.3.1-2.el6 @openstack-havana
I met an issue here: 1. We have a network "vlan-1" working under VLAN mode. 2. For instance booted from network "vlan-1", on compute node, easy to observed the vlan tag on the virtual port is "1": ovs-vsctl show b3ac6cf1-a2c1-4e64-9bf4-ac8e84814332 Bridge br-int ...... Port "qvod36113be-0f" tag: 1 Interface "qvod36113be-0f" ...... 3. Issue : the dhcp agent on network node, its virtual port's vlan id is not "1": ovs-vsctl show 34e0c8b4-315c-42c5-9d7d-183d3a6fbd83 ...... Bridge br-int Port "tapc14349df-c0" tag: 4095 Interface "tapc14349df-c0" ...... I have learned that VLAN tag 4095 has special meaning that the port is "dead". By searching bugs, I found this one: https://bugs.launchpad.net/neutron/+bug/1269795 But, the biggest difference between my issue and this bug is: even I removed everything from openvswitch, and restart neutron-openvswitch-agent & neutron-dhcp-agent, the port is still not work. While the bug reporter said if restart neutron-openvswitch-agent, things would back to work. I did some tests like this: 1. The init status on network node: a. ip netns => empty b. ovs-vsctl show => only br-int & br-eth4(phynet) exit 34e0c8b4-315c-42c5-9d7d-183d3a6fbd83 Bridge br-int Port br-int Interface br-int type: internal Bridge "br-eth4" Port "br-eth4" Interface "br-eth4" type: internal Port "eth4" Interface "eth4" ovs_version: "1.11.0" 2. Start neutron-openvswitch-agent 3. Start neutron-dhcp-agent Then I noticed the log in openvswitch-agent.log: 2014-06-04 14:17:56.627 41763 DEBUG neutron.agent.linux.utils [-] Command: ['sudo', 'neutron-rootwrap', '/etc/neutron/rootwrap.conf', 'ovs-vsctl', '--timeout=2', '--', '--columns=external_ids,name,ofport', 'find', 'Interface', 'external_ids:iface-id="c14349df-c064-4731-ae50-de50dc0fef37"'] Exit code: 0 Stdout: 'external_ids : {attached-mac="fa:18:3e:9b:46:4d", iface-id="c14349df-c064-4731-ae50-de50dc0fef37", iface-status=active}\nname : "tapc14349df-c0"\nofport : 8\n' Stderr: '' execute /usr/lib/python2.6/site-packages/neutron/agent/linux/utils.py:60 2014-06-04 14:17:56.628 41763 DEBUG neutron.plugins.openvswitch.agent.ovs_neutron_agent [-] Device c14349df-c064-4731-ae50-de50dc0fef37 not defined on plugin treat_devices_added /usr/lib/python2.6/site-packages/neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:931 2014-06-04 14:17:56.628 41763 DEBUG neutron.agent.linux.utils [-] Running command: ['sudo', 'neutron-rootwrap', '/etc/neutron/rootwrap.conf', 'ovs-vsctl', '--timeout=2', 'set', 'Port', 'tapc14349df-c0', 'tag=4095'] execute /usr/lib/python2.6/site-packages/neutron/agent/linux/utils.py:43 2014-06-04 14:17:56.726 41763 DEBUG neutron.agent.linux.utils [-] Command: ['sudo', 'neutron-rootwrap', '/etc/neutron/rootwrap.conf', 'ovs-vsctl', '--timeout=2', 'set', 'Port', 'tapc14349df-c0', 'tag=4095'] Exit code: 0 Stdout: '' ....... In function treat_devices_added , openvswitch-agent try to get details for this port from RPC, so I checked neutron-server's log, and I get: 2014-06-04 06:35:56.603 78765 WARNING neutron.plugins.ml2.plugin [-] In _notify_port_updated(), no bound segment for port c14349df-c064-4731-ae50-de50dc0fef37 on network c7e26ebc-078b-4375-b313-795a89a9d8bd 2014-06-04 06:35:57.695 78765 WARNING neutron.plugins.ml2.rpc [-] Device c14349df-c064-4731-ae50-de50dc0fef37 requested by agent ovs36f40340c540 on network c7e26ebc-078b-4375-b313-795a89a9d8bd not bound, vif_type: unbound This log happens when I start neutron-dhcp-agent. Obviously, currently, when dhcp-agent start, it try to use the already exist port c1...37 (because the port used to work for dhcp). Would/Should DHCP agent change the port status ? But, why the port is still in "down" status ?? Looks like openvswitch-agent take this port as a dead port due to the wrong status in database: neutron port-show c14349df-c064-4731-ae50-de50dc0fef37 +-----------------------+------------------------------------------------------------------------------------+ | Field | Value | +-----------------------+------------------------------------------------------------------------------------+ | admin_state_up | True | | allowed_address_pairs | | | binding:capabilities | {"port_filter": false} | | binding:host_id | | | binding:vif_type | unbound | | device_id | dhcpb5e69c7b-a9a1-5cb7-9d79-465144102f2a-c7e26ebc-078b-4375-b313-795a89a9d8bd | | device_owner | network:dhcp | | extra_dhcp_opts | | | fixed_ips | {"subnet_id": "22789dfc-e41e-412c-a325-10a210f176c5", "ip_address": "30.1.100.19"} | | id | c14349df-c064-4731-ae50-de50dc0fef37 | | mac_address | fa:18:3e:9b:46:4d | | name | | | network_id | c7e26ebc-078b-4375-b313-795a89a9d8bd | | security_groups | | | status | DOWN | | tenant_id | 45c69667e2a64c889719ef8d8e0dd098 | +-----------------------+------------------------------------------------------------------------------------+ Thanks, -chen
_______________________________________________ OpenStack-dev mailing list OpenStack-dev@lists.openstack.org http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev