Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SDN 2316: Add GatewayConfig to OVNKubernetesConfig #1033

Merged
merged 1 commit into from
Dec 3, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 17 additions & 2 deletions operator/v1/0000_70_cluster-network-operator_01.crd.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -290,9 +290,24 @@ spec:
type: integer
type: object
ovnKubernetesConfig:
description: oVNKubernetesConfig configures the ovn-kubernetes
plugin. This is currently not implemented.
description: ovnKubernetesConfig configures the ovn-kubernetes
plugin.
properties:
gatewayConfig:
description: gatewayConfig holds the configuration for node
gateway options.
properties:
routingViaHost:
default: false
description: RoutingViaHost allows pod egress traffic
to exit via the ovn-k8s-mp0 management port into the
host before sending it out. If this is not set, traffic
will always egress directly from OVN to outside without
touching the host stack. Setting this to true means
hardware offload will not be supported. Default is false
if GatewayConfig is specified.
type: boolean
type: object
genevePort:
description: geneve port is the UDP port to be used by geneve
encapulation. Default is 6081
Expand Down
17 changes: 15 additions & 2 deletions operator/v1/types_network.go
Original file line number Diff line number Diff line change
Expand Up @@ -139,8 +139,7 @@ type DefaultNetworkDefinition struct {
// +optional
OpenShiftSDNConfig *OpenShiftSDNConfig `json:"openshiftSDNConfig,omitempty"`

// oVNKubernetesConfig configures the ovn-kubernetes plugin. This is currently
// not implemented.
// ovnKubernetesConfig configures the ovn-kubernetes plugin.
// +optional
OVNKubernetesConfig *OVNKubernetesConfig `json:"ovnKubernetesConfig,omitempty"`

Expand Down Expand Up @@ -374,6 +373,9 @@ type OVNKubernetesConfig struct {
// reported defaults are used.
// +optional
PolicyAuditConfig *PolicyAuditConfig `json:"policyAuditConfig,omitempty"`
// gatewayConfig holds the configuration for node gateway options.
// +optional
GatewayConfig *GatewayConfig `json:"gatewayConfig,omitempty"`
}

type HybridOverlayConfig struct {
Expand All @@ -388,6 +390,17 @@ type HybridOverlayConfig struct {
type IPsecConfig struct {
}

// GatewayConfig holds node gateway-related parsed config file parameters and command-line overrides
type GatewayConfig struct {
tssurya marked this conversation as resolved.
Show resolved Hide resolved
// RoutingViaHost allows pod egress traffic to exit via the ovn-k8s-mp0 management port
// into the host before sending it out. If this is not set, traffic will always egress directly
// from OVN to outside without touching the host stack. Setting this to true means hardware
// offload will not be supported. Default is false if GatewayConfig is specified.
// +kubebuilder:default:=false
// +optional
RoutingViaHost bool `json:"routingViaHost,omitempty"`
}

type ExportNetworkFlows struct {
// netFlow defines the NetFlow configuration.
// +optional
Expand Down
21 changes: 21 additions & 0 deletions operator/v1/zz_generated.deepcopy.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

12 changes: 11 additions & 1 deletion operator/v1/zz_generated.swagger_doc_generated.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.