Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
cluster.go: Disable Southbound DB conditional monitoring.
ovn-controller enables conditional monitoring by default for tables in the Southbound Database it is interested in (e.g., Logical_Flow). This effectively performs row level filtering for the SB DB tables such that an ovn-controller would receive only updates about records that refer to logical datapaths that are local to the chassis. However, in an ovn-kubernetes cluster, all node logical switches are connected to the ovn-cluster-router which forces all ovn-controllers to register for updates about all logical switches. The conditional monitoring implementation in OVSDB turns out to not scale so well in such scenarios. OVN 20.03 supports a new configuration knob (ovn-monitor-all=true) which instructs ovn-controllers to not use row level filtering of records. This was introduced by: ovn-org/ovn@3c355e3 ovn-kubernetes per node gateway routers are bound to individual chassis and should not generate openflow entries on other chassis. This is also handled in OVN 20.03 by follow up commits: ovn-org/ovn@166a33c ovn-org/ovn@eebef50 Note regarding backwards compatibility: When ovn-kubernetes is used with older OVN versions (i.e., <20.03) setting "ovn-monitor-all=true" has no effect as the knob will just be ignored by ovn-controller. Reported-by: Girish Moodalbail <[email protected]> Reported-at: https://groups.google.com/d/msg/ovn-kubernetes/OalZ5-2ljnA/FOGlAyK5DQAJ Signed-off-by: Dumitru Ceara <[email protected]>
- Loading branch information