Skip to content

Commit

Permalink
Update Submariner OVN Documentation
Browse files Browse the repository at this point in the history
This commit updates the documents involving the
submariner + OVN-K integration, and also re-does
the architecture diagram.

Signed-off-by: Andrew Stoycos <astoycos@redhat.com>
  • Loading branch information
astoycos committed Jun 21, 2022
1 parent 335c968 commit f572960
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 12 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -8,28 +8,36 @@ A specific handler component is deployed for the
[OVN](https://www.ovn.org/en/architecture/) is a project that builds on top
of Open vSwitch providing a rich high level API for describing virtual
network components like Logical Routers, Logical Switches, Load balancers,
Logical Ports. OVN Kubernetes is a Cloud Management System Plugin (CMS plugin)
in terms of the OVN project.
Logical Ports. [OVN Kubernetes](https://github.com/ovn-org/ovn-kubernetes) is a Cloud Management System Plugin (CMS plugin)
which manages OVN resources to setup networking for Kubernetes clusters.

The OVN Kubernetes handler watches for Submariner `Endpoints` and Kubernetes
`Nodes` and interfaces with the OVN databases (OVN NorthDB and SouthDB) to store and
maintain information necessary for Submariner, including:
create OVN resources necessary for Submariner, including:

* A logical router named `submariner_router` that handles the communication
to remote clusters and has a leg on the network which can talk to the
`ovn-k8s-gw0` interface on the Gateway node. This router is pinned to
`ovn-k8s-sub0` interface on the Gateway node. This router is pinned to
the active Gateway chassis.

* Routing policies added to the existing `ovn_cluster_router` which redirect
* The Ovn-Kubernetes Specific OVN Load Balancer Group (which contains all of the
cluster's service VIPs) is added to the `submariner_router`in order to ensure
total service connectivity.

* OVN Logical Router Static Routes added to the `submariner_router` to ensure
local traffic destined for remote clusters and remote traffic destined for local
resources is routed correctly.

* OVN Logical Router Policies added to the existing `ovn_cluster_router` which redirect
traffic targeted for remote routers through the `submariner_router`.

* A `submariner_join` logical switch that connects the `submariner_router`
with the `ovn_cluster_router`.

## The handler architecture

The following diagram illustrates the OVN Kubernetes handler architecture where the
blue elements represent the OVN Kubernetes native network elements and the yellow
elements are introduced by Submariner.
The following diagram illustrates the required Submariner OVN architecture transposed
on the native OVN-Kubernetes managed OVN architecture and components. The specific
`networkpluginsyncer` managed OVN components are boxed in green.

![Submariner with OVNKubernetes architecture](/images/ovn-kubernetes/submariner-on-ovn-v2.svg)
![Submariner with OVNKubernetes architecture](/images/ovn-kubernetes/ovn-submariner-architecture.svg)
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 0 additions & 3 deletions src/static/images/ovn-kubernetes/submariner-on-ovn-v2.svg

This file was deleted.

0 comments on commit f572960

Please sign in to comment.