kube-ovn
kube-ovn copied to clipboard
(feature) Add Support for Multiple External Gateways
Per the https://mail.openvswitch.org/pipermail/ovs-dev/2021-January/379446.html patch, OVN soon will support multiple l3dgw ports per logical router. Given this, it would be extremely useful to support multiple external gateways.
The end goal of this feature request is to support multiple ovn-external-gw
configMaps (or a single configMap for the multiple external gatways) in order to leverage multiple underlay network subnets (see example below).
Example: Underlay Subnet 0 (192.168.0.0/24) is accessible via eth1 interface on worker00
apiVersion: v1
kind: ConfigMap
metadata:
name: ovn-external-gw-config0
namespace: kube-system
data:
enable-external-gw: "true"
type: "centralized"
external-gw-nodes: "worker00"
external-gw-nic: "eth1"
nic-ip: "192.168.0.1/24"
nic-mac: "16:52:f3:13:6a:25"
Underlay Subnet 1 (192.168.1.0/24) accessible via eth1 interface on worker01
apiVersion: v1
kind: ConfigMap
metadata:
name: ovn-external-gw-config1
namespace: kube-system
data:
enable-external-gw: "true"
type: "centralized"
external-gw-nodes: "worker01"
external-gw-nic: "eth1"
nic-ip: "192.168.1.1/24"
nic-mac: "16:52:f3:13:6a:26"
Underlay Subnet 2 (192.168.2.0/24) accessible via eth1 interface on worker02
apiVersion: v1
kind: ConfigMap
metadata:
name: ovn-external-gw-config2
namespace: kube-system
data:
enable-external-gw: "true"
type: "centralized"
external-gw-nodes: "worker02"
external-gw-nic: "eth1"
nic-ip: "192.168.2.1/24"
nic-mac: "16:52:f3:13:6a:27"
Thank you for all the great work you do in maintaining this project!