veth pairs qvb qvo is not creating while using openvwitch for neutron

asked 2016-11-29 09:07:41 -0500

vathanlal gravatar image

updated 2016-11-29 13:11:23 -0500

Hi.. I created an Openstack newton HA cluster with controller node, compute node and separate neutron node.. I want to create vxlan network in this cluster.. I created the network using openvswitch agent but whenever I tried to launch an instance Iam getting error "PORT BINDING FAILED..". I found that the qbr bridge entries between instance and br-int in compute node is not creating or always missing in my ovs-vsctl show. I strongly feel that it is causing by the nova compute node because Iam getting error in my nova-compute.log as below.. I found that driver mentioned as in this question https://ask.openstack.org/en/question/7868/missing-qbr-qvb-and-qvo-devices-on-compute-node-with-ovs-agent/ (https://ask.openstack.org/en/question...) is also missing in my nova.conf.. I dont know whether that is creating the problem.. Any help is really appreciated.. I spent near to 1 week with this issue..

in /var/log/neutron/neutron-openvswitch-agent.log

2016-11-29 14:05:02.402 35420 INFO neutron.agent.common.ovs_lib [req-ff5ac8a8-9903-472b-80ed-e28fbf074814 - - - - -] Port 9c44d437-5fe9-48a0-b377-4a72bcd89675 not present in bridge br-int
2016-11-29 14:05:02.404 35420 INFO neutron.plugins.ml2.drivers.openvswitch.agent.ovs_neutron_agent [req-ff5ac8a8-9903-472b-80ed-e28fbf074814 - - - - -] port_unbound(): net_uuid None not in local_vlan_map
2016-11-29 14:05:02.405 35420 INFO neutron.agent.securitygroups_rpc [req-ff5ac8a8-9903-472b-80ed-e28fbf074814 - - - - -] Remove device filter for [u'9c44d437-5fe9-48a0-b377-4a72bcd89675']

in nova-compute.log

2016-11-29 14:30:41.178 25177 ERROR nova.compute.manager [req-e89b1833-a5f5-48f1-b753-0bc05cf5347e 2cfe6360fd8d494c80ee2740b901e1e1 20d65370e91d428d8d83abb84b5c2c21 - - -] Instance failed network setup after 1 attempt(s)
2016-11-29 14:30:41.178 25177 ERROR nova.compute.manager Traceback (most recent call last):
2016-11-29 14:30:41.178 25177 ERROR nova.compute.manager   File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 1570, in _allocate_network_async
2016-11-29 14:30:41.178 25177 ERROR nova.compute.manager     bind_host_id=bind_host_id)
2016-11-29 14:30:41.178 25177 ERROR nova.compute.manager   File "/usr/lib/python2.7/dist-packages/nova/network/neutronv2/api.py", line 685, in allocate_for_instance
2016-11-29 14:30:41.178 25177 ERROR nova.compute.manager     self._delete_ports(neutron, instance, created_port_ids)
2016-11-29 14:30:41.178 25177 ERROR nova.compute.manager   File "/usr/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in __exit__
2016-11-29 14:30:41.178 25177 ERROR nova.compute.manager     self.force_reraise()
2016-11-29 14:30:41.178 25177 ERROR nova.compute.manager   File "/usr/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in force_reraise
2016-11-29 14:30:41.178 25177 ERROR nova.compute.manager     six.reraise(self.type_, self.value, self.tb)
2016-11-29 14:30:41.178 25177 ERROR nova.compute.manager   File "/usr/lib/python2.7/dist-packages/nova/network/neutronv2/api.py", line 674, in allocate_for_instance
2016-11-29 14:30:41.178 25177 ERROR nova.compute.manager     security_group_ids, available_macs, dhcp_opts)
2016-11-29 14:30:41.178 25177 ERROR nova.compute.manager   File "/usr/lib/python2.7/dist-packages/nova/network/neutronv2/api.py", line 261, in _create_port
2016-11-29 14:30:41.178 25177 ERROR nova.compute.manager     raise exception.PortBindingFailed(port_id=port_id)
2016-11-29 14:30:41.178 25177 ERROR nova.compute.manager PortBindingFailed: Binding failed for port d7a81350-5049-426d-9e5a-531b0de45768, please check neutron logs for more ...
(more)
edit retag flag offensive close merge delete

Comments

so, what happens if you add that driver? It contains the code that sets up the Linuxbridge and connects it to br-int via the veth pair. If the driver is missing, it's not surprising that the network structures on the compute node are missing as well.

Bernd Bausch gravatar imageBernd Bausch ( 2016-11-29 17:29:49 -0500 )edit

I added libvirt_vif_driver=nova.virt.libvirt.vif.LibvirtHybirdOVSBridgeDriver into my nova.conf.. But iam getting the same error "Port eecfb059-e5dd-4749-8034-4a39561ca1d9 not present in bridge br-int" in neutron-openvswitch-agent.log. But in my nova-compute.log I dont have errors regarding port..

vathanlal gravatar imagevathanlal ( 2016-11-30 07:50:30 -0500 )edit

While instance creation the linux bridge will be created automatically right?? We dont need to create any linux bridge right??

vathanlal gravatar imagevathanlal ( 2016-11-30 14:43:39 -0500 )edit

that's correct. The libvirt driver (if you use libvirt) in nova-compute sets up the Linuxbridge and the veth pair and connects the bridge to br-int. Each instance, or rather each instance port gets its own Linuxbridge and veth pair.

Bernd Bausch gravatar imageBernd Bausch ( 2016-12-01 17:52:31 -0500 )edit

The error says PortBindingFailed: Binding failed for port d7a81350-5049-426d-9e5a-531b0de45768, please check neutron logs for more information. This happens when Nova asks Neutron to create a new port on the instance's network.

Do you see anything in the Neutron logs about this port?

Bernd Bausch gravatar imageBernd Bausch ( 2016-12-01 18:45:42 -0500 )edit