Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Why do I get "NovaException: Unexpected vif_type=binding_failed" when setting up devstack Kilo with networking-ovs-dpdk and vxlan?

I managed to load it on latest devstack (Mitaka). But when try the same thing on Kilo, whenever I instantiate a VM, I keep getting stuck on the error: NovaException: Unexpected vif_type=binding_failed. I've tried all answers online, and wasn't able to make this work.

This is the error on the controller:

2016-02-10 04:54:48.898 ERROR neutron.plugins.ml2.managers [req-78165d6e-1a3d-4083-a7c4-e55611b9597e neutron service] Failed to bind port 6533524a-2dac-42cc-ab7b-fd6932bf79e4 on host devsta
ck1-2
2016-02-10 04:54:48.899 ERROR neutron.plugins.ml2.managers [req-78165d6e-1a3d-4083-a7c4-e55611b9597e neutron service] Failed to bind port 6533524a-2dac-42cc-ab7b-fd6932bf79e4 on host devstack1-2

This is the error on the compute:

2016-02-10 04:54:52.486 ERROR nova.compute.manager [req-0df362c2-e3a1-4636-83df-ee31baef840d admin demo] [instance: 503365c6-7c07-4a83-bad0-f45c3f3e5dbd] Instance failed to spawn
2016-02-10 04:54:52.486 27939 TRACE nova.compute.manager [instance: 503365c6-7c07-4a83-bad0-f45c3f3e5dbd] Traceback (most recent call last):
2016-02-10 04:54:52.486 27939 TRACE nova.compute.manager [instance: 503365c6-7c07-4a83-bad0-f45c3f3e5dbd]   File "/opt/stack/nova/nova/compute/manager.py", line 2473, in _build_resources
2016-02-10 04:54:52.486 27939 TRACE nova.compute.manager [instance: 503365c6-7c07-4a83-bad0-f45c3f3e5dbd]     yield resources
2016-02-10 04:54:52.486 27939 TRACE nova.compute.manager [instance: 503365c6-7c07-4a83-bad0-f45c3f3e5dbd]   File "/opt/stack/nova/nova/compute/manager.py", line 2345, in _build_and_run_inae
2016-02-10 04:54:52.486 27939 TRACE nova.compute.manager [instance: 503365c6-7c07-4a83-bad0-f45c3f3e5dbd]     block_device_info=block_device_info)
2016-02-10 04:54:52.486 27939 TRACE nova.compute.manager [instance: 503365c6-7c07-4a83-bad0-f45c3f3e5dbd]   File "/opt/stack/nova/nova/virt/libvirt/driver.py", line 2404, in spawn
2016-02-10 04:54:52.486 27939 TRACE nova.compute.manager [instance: 503365c6-7c07-4a83-bad0-f45c3f3e5dbd]     write_to_disk=True)
2016-02-10 04:54:52.486 27939 TRACE nova.compute.manager [instance: 503365c6-7c07-4a83-bad0-f45c3f3e5dbd]   File "/opt/stack/nova/nova/virt/libvirt/driver.py", line 4205, in _get_guest_xml
2016-02-10 04:54:52.486 27939 TRACE nova.compute.manager [instance: 503365c6-7c07-4a83-bad0-f45c3f3e5dbd]     context)
2016-02-10 04:54:52.486 27939 TRACE nova.compute.manager [instance: 503365c6-7c07-4a83-bad0-f45c3f3e5dbd]   File "/opt/stack/nova/nova/virt/libvirt/driver.py", line 4076, in _get_guest_coig
2016-02-10 04:54:52.486 27939 TRACE nova.compute.manager [instance: 503365c6-7c07-4a83-bad0-f45c3f3e5dbd]     flavor, virt_type)
2016-02-10 04:54:52.486 27939 TRACE nova.compute.manager [instance: 503365c6-7c07-4a83-bad0-f45c3f3e5dbd]   File "/opt/stack/nova/nova/virt/libvirt/vif.py", line 374, in get_config
2016-02-10 04:54:52.486 27939 TRACE nova.compute.manager [instance: 503365c6-7c07-4a83-bad0-f45c3f3e5dbd]     _("Unexpected vif_type=%s") % vif_type)
2016-02-10 04:54:52.486 27939 TRACE nova.compute.manager [instance: 503365c6-7c07-4a83-bad0-f45c3f3e5dbd] NovaException: Unexpected vif_type=binding_failed

No other error in any other log.

My setup is:

1 controller+network node, Centos 7, devstack Kilo. No networking-ovs-dpdk.
2 compute nodes, Ubunto 14.04, devstack Kilo, networking-ovs-dpdk Kilo.
private network is vxlan.

Here is the relevant local.conf from the compute host:

disable_all_services

# Disable Nova-Network
disable_service n-net

enable_service n-cpu
enable_service rabbit
enable_service q-agt
enable_service n-novnc

Q_PLUGIN=ml2
Q_ML2_PLUGIN_MECHANISM_DRIVERS=ovsdpdk
Q_ML2_PLUGIN_TYPE_DRIVERS=flat,vlan,vxlan
Q_USE_SECGROUP=True
Q_L3_ENABLED=False
Q_USE_PROVIDER_NETWORKING=False
Q_ML2_TENANT_NETWORK_TYPE=vxlan
ENABLE_TENANT_VLANS=False
ENABLE_TENANT_TUNNELS=True
OVS_ENABLE_SG_FIREWALL_MULTICAST=False
OVS_PHYSICAL_BRIDGE=br-p1p1

enable_plugin networking-ovs-dpdk http://git.openstack.org/openstack/networking-ovs-dpdk stable/kilo

OVS_DPDK_INSTALL=True
SKIP_OVS_INSTALL=True
OVS_DATAPATH_TYPE=netdev
OVS_DPDK_RTE_LIBRTE_VHOST=y
OVS_DPDK_PORT_MAPPINGS=p1p1:br-p1p1
DPDK_PHYSICAL_NETWORK=dpdk-physical-net
OVS_BRIDGE_MAPPINGS+=,dpdk-physical-net:br-p1p1
OVS_NUM_HUGEPAGES=4096
OVS_SOCKET_MEM=1024,0
OVS_TUNNEL_CIDR_MAPPING=br-p1p1:192.168.50.3/24
TUNNEL_ENDPOINT_IP=192.168.50.3

note that OVS_TUNNEL_CIDR_MAPPING is not supported in Kilo, I manually patched it and verified it works:

stack@devstack1-2:~/devstack-kilo$ ifconfig br-p1p1
br-p1p1   Link encap:Ethernet  HWaddr 00:1b:21:43:4c:74
          inet addr:192.168.50.3  Bcast:0.0.0.0  Mask:255.255.255.0
          inet6 addr: fe80::21b:21ff:fe43:4c74/64 Scope:Link
          UP BROADCAST RUNNING PROMISC  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:500
          RX bytes:0 (0.0 B)  TX bytes:648 (648.0 B)

agent list:

stack@devstack1-2:~/devstack-kilo$ neutron agent-list
+--------------------------------------+--------------------+-------------+-------+----------------+---------------------------+
| id                                   | agent_type         | host        | alive | admin_state_up | binary                    |
+--------------------------------------+--------------------+-------------+-------+----------------+---------------------------+
| 6a46455a-7a49-4b05-a9ba-b8301baec10a | Open vSwitch agent | devstack1-1 | :-)   | True           | neutron-openvswitch-agent |
| 6e95d386-8dd4-401f-b628-45a509e8f35b | DHCP agent         | devstack1-1 | :-)   | True           | neutron-dhcp-agent        |
| 7dbf526f-1386-4985-b27c-0e91fd9e3f13 | DPDK OVS Agent     | devstack1-2 | :-)   | True           | neutron-openvswitch-agent |
| cbe1530d-1e18-4788-a772-ce721aed762c | L3 agent           | devstack1-1 | :-)   | True           | neutron-l3-agent          |
| daf9f01e-05e1-4e62-bff0-80e223c4c5cf | Metadata agent     | devstack1-1 | :-)   | True           | neutron-metadata-agent    |
+--------------------------------------+--------------------+-------------+-------+----------------+---------------------------+