Bug 1805630
| Summary: | [OVN SCALE][ovn-controller] Add incremental processing for Port_Binding, OVS interface ovsdb table changes in runtime data and flow output engine nodes | |||
|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux Fast Datapath | Reporter: | Dumitru Ceara <dceara> | |
| Component: | OVN | Assignee: | Numan Siddique <nusiddiq> | |
| Status: | CLOSED ERRATA | QA Contact: | Jianlin Shi <jishi> | |
| Severity: | high | Docs Contact: | ||
| Priority: | high | |||
| Version: | RHEL 8.0 | CC: | ctrautma, dcbw, dceara, mmichels, nusiddiq, rkhan | |
| Target Milestone: | --- | |||
| Target Release: | --- | |||
| Hardware: | Unspecified | |||
| OS: | Unspecified | |||
| Whiteboard: | ||||
| Fixed In Version: | Doc Type: | If docs needed, set a value | ||
| Doc Text: | Story Points: | --- | ||
| Clone Of: | ||||
| : | 1855235 (view as bug list) | Environment: | ||
| Last Closed: | 2020-08-18 11:23:51 UTC | Type: | Bug | |
| Regression: | --- | Mount Type: | --- | |
| Documentation: | --- | CRM: | ||
| Verified Versions: | Category: | --- | ||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | ||
| Cloudforms Team: | --- | Target Upstream Version: | ||
| Embargoed: | ||||
|
Comment 1
Numan Siddique
2020-05-03 07:38:12 UTC
calculate the time to generate openflow when add mass of logical switches with following script:
systemctl start openvswitch
systemctl start ovn-northd
ovn-nbctl set-connection ptcp:6641
ovn-sbctl set-connection ptcp:6642
ovs-vsctl set open . external_ids:system-id=hv1 external_ids:ovn-remote=tcp:20.0.31.25:6642 external_ids:ovn-encap-type=geneve external_ids:ovn-encap-ip=20.0.31.25
systemctl restart ovn-controller
date
for i in {1..2000}
do
ovn-nbctl ls-add ls$i
ovn-nbctl lsp-add ls$i lsp${i}_1
ovs-vsctl add-port br-int p${i}_1 -- set interface p${i}_1 type=internal
ovs-vsctl set interface p${i}_1 external_ids:iface-id=lsp${i}_1
done
date
set -x
flow_num_before=0
while :
do
flow_num=$(ovs-ofctl dump-flows br-int | wc -l)
[ $flow_num -eq $flow_num_before ] && break
flow_num_before=$flow_num
sleep 1
done
date
on ovn2.13.0-39:
Sun Jul 19 23:33:57 EDT 2020
Sun Jul 19 23:45:00 EDT 2020
+ flow_num_before=0
+ :
++ ovs-ofctl dump-flows br-int
++ wc -l
+ flow_num=133685
+ '[' 133685 -eq 0 ']'
+ flow_num_before=133685
+ sleep 1
+ :
++ ovs-ofctl dump-flows br-int
++ wc -l
+ flow_num=133890
+ '[' 133890 -eq 133685 ']'
+ flow_num_before=133890
+ sleep 1
+ :
++ ovs-ofctl dump-flows br-int
++ wc -l
+ flow_num=134211
+ '[' 134211 -eq 133890 ']'
+ flow_num_before=134211
+ sleep 1
+ :
++ ovs-ofctl dump-flows br-int
++ wc -l
+ flow_num=134211
+ '[' 134211 -eq 134211 ']'
+ break
+ date
Sun Jul 19 23:45:07 EDT 2020
<=== it takes about 2 seconds to generate full openflow after create all switches
[root@dell-per740-12 bz1805640]# rpm -qa | grep -E "openvswitch|ovn"
openvswitch-selinux-extra-policy-1.0-23.el8fdp.noarch
ovn2.13-host-2.13.0-39.el8fdp.x86_64
openvswitch2.13-2.13.0-48.el8fdp.x86_64
ovn2.13-central-2.13.0-39.el8fdp.x86_64
ovn2.13-2.13.0-39.el8fdp.x86_64
on ovn2.13-20.06.1-4:
Sun Jul 19 23:46:58 EDT 2020
Sun Jul 19 23:58:36 EDT 2020
+ flow_num_before=0
+ :
++ ovs-ofctl dump-flows br-int
++ wc -l
+ flow_num=134082
+ '[' 134082 -eq 0 ']'
+ flow_num_before=134082
+ sleep 1
+ :
++ ovs-ofctl dump-flows br-int
++ wc -l
+ flow_num=134211
+ '[' 134211 -eq 134082 ']'
+ flow_num_before=134211
+ sleep 1
+ :
++ ovs-ofctl dump-flows br-int
++ wc -l
+ flow_num=134211
+ '[' 134211 -eq 134211 ']'
+ break
+ date
Sun Jul 19 23:58:41 EDT 2020
<=== it takes about 1 seconds to generate full openflow after create all switches
[root@dell-per740-12 bz1805640]# rpm -qa | grep -E "openvswitch|ovn"
openvswitch-selinux-extra-policy-1.0-23.el8fdp.noarch
openvswitch2.13-2.13.0-48.el8fdp.x86_64
ovn2.13-20.06.1-4.el8fdp.x86_64
ovn2.13-host-20.06.1-4.el8fdp.x86_64
ovn2.13-central-20.06.1-4.el8fdp.x86_64
Dumitru , does the result show the improvement?
(In reply to Jianlin Shi from comment #7) > > <=== it takes about 2 seconds to generate full openflow after create all > switches > <SNIP> > > <=== it takes about 1 seconds to generate full openflow after create all > switches > <SNIP> > > Dumitru , does the result show the improvement? Looks good to me, thanks! Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory (ovn2.13 bug fix and enhancement update), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2020:3488 |