Hi,

Just as a quick update - I've updated our ovn version to 20.12.0 snapshot 
(d8bc0377c) and so far the problem hasn't yet reoccurred after over 24 hours of 
tempest testing.

Best Regards,
-Chris


On Tue, Dec 15, 2020, at 11:13, Daniel Alvarez Sanchez wrote:
> Hey Krzysztof,
> 
> On Fri, Nov 20, 2020 at 1:17 PM Krzysztof Klimonda 
> <kklimo...@syntaxhighlighted.com> wrote:
>> Hi,
>> 
>> Doing some tempest runs on our pre-prod environment (stable/ussuri with ovn 
>> 20.06.2 release) I've noticed that some network connectivity tests were 
>> failing randomly. I've reproduced that by conitnously rescuing and 
>> unrescuing instance - network connectivity from and to VM works in general 
>> (dhcp is fine, access from outside is fine), however VM has no access to its 
>> metadata server (via 169.254.169.254 ip address). Tracing packet from VM to 
>> metadata via:
>> 
>> ----8<----8<----8<----
>> ovs-appctl ofproto/trace br-int 
>> in_port=tapa489d406-91,dl_src=fa:16:3e:2c:b0:fd,dl_dst=fa:16:3e:8b:b5:39
>> ----8<----8<----8<----
>> 
>> ends with
>> 
>> ----8<----8<----8<----
>> 65. reg15=0x1,metadata=0x97e, priority 100, cookie 0x15ec4875
>>     output:1187
>>      >> Nonexistent output port
>> ----8<----8<----8<----
>> 
>> And I can verify that there is no flow for the actual ovnmeta tap interface 
>> (tap67731b0a-c0):
>> 
>> ----8<----8<----8<----
>> # docker exec -it openvswitch_vswitchd ovs-ofctl dump-flows br-int |grep -E 
>> output:'("tap67731b0a-c0"|1187)'
>>  cookie=0x15ec4875, duration=1868.378s, table=65, n_packets=524, 
>> n_bytes=40856, priority=100,reg15=0x1,metadata=0x97e actions=output:1187
>> #
>> ----8<----8<----8<----
>> 
>> From ovs-vswitchd.log it seems the interface tap67731b0a-c0 was added with 
>> index 1187, then deleted, and re-added with index 1189 - that's probably due 
>> to the fact that that is the only VM in that network and I'm constantly hard 
>> rebooting it via rescue/unrescue:
>> 
>> ----8<----8<----8<----
>> 2020-11-20T11:41:18.347Z|08043|bridge|INFO|bridge br-int: added interface 
>> tap67731b0a-c0 on port 1187
>> 2020-11-20T11:41:30.813Z|08044|bridge|INFO|bridge br-int: deleted interface 
>> tapa489d406-91 on port 1186
>> 2020-11-20T11:41:30.816Z|08045|bridge|WARN|could not open network device 
>> tapa489d406-91 (No such device)
>> 2020-11-20T11:41:31.040Z|08046|bridge|INFO|bridge br-int: deleted interface 
>> tap67731b0a-c0 on port 1187
>> 2020-11-20T11:41:31.044Z|08047|bridge|WARN|could not open network device 
>> tapa489d406-91 (No such device)
>> 2020-11-20T11:41:31.050Z|08048|bridge|WARN|could not open network device 
>> tapa489d406-91 (No such device)
>> 2020-11-20T11:41:31.235Z|08049|connmgr|INFO|br-int<->unix#31: 2069 flow_mods 
>> in the last 43 s (858 adds, 814 deletes, 397 modifications)
>> 2020-11-20T11:41:33.057Z|08050|bridge|INFO|bridge br-int: added interface 
>> tapa489d406-91 on port 1188
>> 2020-11-20T11:41:33.582Z|08051|bridge|INFO|bridge br-int: added interface 
>> tap67731b0a-c0 on port 1189
>> 2020-11-20T11:42:31.235Z|08052|connmgr|INFO|br-int<->unix#31: 168 flow_mods 
>> in the 2 s starting 59 s ago (114 adds, 10 deletes, 44 modifications) 
>> ----8<----8<----8<----
>> 
>> Once I restart ovn-controller it recalculates local ovs flows and the 
>> problem is fixed so I'm assuming it's a local problem and not related to NB 
>> and SB databases.
>> 
> 
> I have seen exactly the same which with 20.09, for the same port input and 
> output ofports do not match:
> 
> bash-4.4# ovs-ofctl dump-flows br-int table=0 | grep 745
>  cookie=0x38937d8e, duration=40387.372s, table=0, n_packets=1863, 
> n_bytes=111678, idle_age=1, priority=100,in_port=745 
> actions=load:0x4b->NXM_NX_REG13[],load:0x6a->NXM_NX_REG11[],load:0x69->NXM_NX_REG12[],load:0x18d->OXM_OF_METADATA[],load:0x1->NXM_NX_REG14[],resubmit(,8)
> 
> 
> bash-4.4# ovs-ofctl dump-flows br-int table=65 | grep 8937d8e
>  cookie=0x38937d8e, duration=40593.699s, table=65, n_packets=1848, 
> n_bytes=98960, idle_age=2599, priority=100,reg15=0x1,metadata=0x18d 
> actions=output:737
> 
> 
> In table=0, the ofport is fine (745) but in the output stage it is using a 
> different one (737).
> 
> By checking the OVS database transaction history, that port, at some point, 
> had the id 737:
> 
> record 6516: 2020-12-14 22:22:54.184
> 
>   table Interface row "tap71a5dfc1-10" (073801e2):
>     ofport=737
>   table Open_vSwitch row 1d9566c8 (1d9566c8):
>     cur_cfg=2023
> 
> So it looks like ovn-controller is not updating the ofport in the physical 
> flows for the output stage.
> 
> We'll try to figure out if this happens also in master.
> 
> Thanks,
> daniel
>  
>> -- 
>>   Krzysztof Klimonda
>>   kklimo...@syntaxhighlighted.com
>> _______________________________________________
>> discuss mailing list
>> disc...@openvswitch.org
>> https://mail.openvswitch.org/mailman/listinfo/ovs-discuss
>> 
_______________________________________________
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss

Reply via email to