Instance Unreachable on Separate Hypervisor – Stale Flow (OVS/VLAN)
Problem
An instance provisioned on a VLAN, provider network is unable to reach another instance residing on a separate hypervisor.
The OVS
ovs-appctlutility shows that there is a "Nonexistent output port" for the flow matching the SRC MAC trying to reach the DST MAC via the port corresponding to the VETH PAIR connecting the Linux bridge which is used to facilitate traffic in and out of the VM and via OVS.
Example:
$ sudo ovs-appctl ofproto/trace br-int in_port=406,dl_src=fa:16:3e:38:bb:86,dl_dst=fa:16:3e:7b:ee:62
Flow: in_port=406,vlan_tci=0x0000,dl_src=fa:16:3e:38:bb:86,dl_dst=fa:16:3e:7b:ee:62,dl_type=0x0000
bridge("br-int")
----------------
0. priority 0, cookie 0x9b52dfee970c9aa7
goto_table:60
60. in_port=406,dl_src=fa:16:3e:38:bb:86, priority 9, cookie 0x9b52dfee970c9aa7
set_field:0x3->reg6
resubmit(,61)
61. reg6=0x3,dl_dst=fa:16:3e:7b:ee:62, priority 12, cookie 0x9b52dfee970c9aa7
output:775
>> Nonexistent output port
Final flow: reg6=0x3,in_port=406,vlan_tci=0x0000,dl_src=fa:16:3e:38:bb:86,dl_dst=fa:16:3e:7b:ee:62,dl_type=0x0000
Megaflow: recirc_id=0,eth,in_port=406,dl_src=fa:16:3e:38:bb:86,dl_dst=fa:16:3e:7b:ee:62,dl_type=0x0000
Datapath actions: dropExample
Environment
Platform9 Managed OpenStack - All Versions
Neutron
OpenVSwitch
Cause
A stale flow exists in OVS – specifically, within the "integration bridge" or "br-int" – pertaining to the the destination's IP MAC address (determined via ARP).
Resolution
(Optional) Dump flows from the OVS integration bridge ("br-int").
Delete the flow.
Additional Information
PreviousHow to Authenticate Ceph Using Libvirtd Secrets
NextForcefully Delete Cinder Volume of Non-existing Cinder Hosts.
Last updated
