Skip to content

Commit c0c49ac

Browse files
authored
Merge pull request #97561 from openshift-cherrypick-robot/cherry-pick-97387-to-enterprise-4.18
[enterprise-4.18] OCPBUGS-36674-re: Adding DAY 2 limitations for configuring the primary interface by using the OVNK plug-in
2 parents eb8b188 + 2094e9b commit c0c49ac

File tree

3 files changed

+37
-8
lines changed

3 files changed

+37
-8
lines changed

modules/nw-ovn-kuberentes-limitations.adoc

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,22 +3,23 @@
33
// * networking/ovn_kubernetes_network_provider/about-ovn-kubernetes.adoc
44
// * microshift_networking/microshift-nw-ipv6-config.adoc
55

6+
:_mod-docs-content-type: REFERENCE
67
[id="nw-ovn-kubernetes-limitations_{context}"]
78
= OVN-Kubernetes IPv6 and dual-stack limitations
89

910
The OVN-Kubernetes network plugin has the following limitations:
1011

11-
* If you set the `ipv6.disable` parameter to `1` in the `kernelArgument` section of the `MachineConfig` custom resource (CR) for your cluster, OVN-Kubernetes pods enter a `CrashLoopBackOff` state. Additionally, updating your cluster to a later version of {product-title} fails because the Network Operator is stuck on a `Degraded` state. Red{nbsp}Hat does not support disabling IPv6 adddresses for your cluster so do not set the `ipv6.disable` parameter to `1`.
12-
1312
// The foll limitation is also recorded in the installation section.
1413
ifndef::microshift[]
1514
* For clusters configured for dual-stack networking, both IPv4 and IPv6 traffic must use the same network interface as the default gateway.
1615
endif::microshift[]
1716
ifdef::microshift[]
1817
* For a cluster configured for dual-stack networking, both IPv4 and IPv6 traffic must use the same network interface as the default gateway.
1918
endif::microshift[]
19+
+
2020
If this requirement is not met, pods on the host in the `ovnkube-node` daemon set enter the `CrashLoopBackOff` state.
21-
If you display a pod with a command such as `oc get pod -n openshift-ovn-kubernetes -l app=ovnkube-node -o yaml`, the `status` field contains more than one message about the default gateway, as shown in the following output:
21+
+
22+
If you display a pod with a command such as `oc get pod -n openshift-ovn-kubernetes -l app=ovnkube-node -o yaml`, the `status` field has more than one message about the default gateway, as shown in the following output:
2223
+
2324
[source,terminal]
2425
----
@@ -34,8 +35,10 @@ endif::microshift[]
3435
ifdef::microshift[]
3536
* For a cluster configured for dual-stack networking, both the IPv4 and IPv6 routing tables must contain the default gateway.
3637
endif::microshift[]
38+
+
3739
If this requirement is not met, pods on the host in the `ovnkube-node` daemon set enter the `CrashLoopBackOff` state.
38-
If you display a pod with a command such as `oc get pod -n openshift-ovn-kubernetes -l app=ovnkube-node -o yaml`, the `status` field contains more than one message about the default gateway, as shown in the following output:
40+
+
41+
If you display a pod with a command such as `oc get pod -n openshift-ovn-kubernetes -l app=ovnkube-node -o yaml`, the `status` field has more than one message about the default gateway, as shown in the following output:
3942
+
4043
[source,terminal]
4144
----
@@ -44,3 +47,5 @@ F0512 19:07:17.589141 108432 ovnkube.go:133] failed to get default gateway inte
4447
----
4548
+
4649
The only resolution is to reconfigure the host networking so that both IP families contain the default gateway.
50+
51+
* If you set the `ipv6.disable` parameter to `1` in the `kernelArgument` section of the `MachineConfig` custom resource (CR) for your cluster, OVN-Kubernetes pods enter a `CrashLoopBackOff` state. Additionally, updating your cluster to a later version of {product-title} fails because the Network Operator remains on a `Degraded` state. Red{nbsp}Hat does not support disabling IPv6 adddresses for your cluster so do not set the `ipv6.disable` parameter to `1`.

modules/nw-ovn-kubernetes-features.adoc

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
//
33
// * networking/ovn_kubernetes_network_provider/about-ovn-kubernetes.adoc
44

5+
:_mod-docs-content-type: CONCEPT
56
[id="nw-ovn-kubernetes-purpose_{context}"]
67
= OVN-Kubernetes purpose
78

@@ -21,3 +22,16 @@ The OVN-Kubernetes network plugin supports the following capabilities:
2122
* Egress firewall devices and egress IP addresses.
2223
* Egress router devices that operate in redirect mode.
2324
* IPsec encryption of intracluster communications.
25+
26+
Red{nbsp}Hat does not support the following postinstallation configurations that use the OVN-Kubernetes network plugin:
27+
28+
* Configuring the primary network interface, including using the NMState Operator to configure bonding for the interface.
29+
* Configuring a sub-interface or additional network interface on a network device that uses the Open vSwitch (OVS) or an OVN-Kubernetes `br-ex` bridge network.
30+
* Creating additional virtual local area networks (VLANs) on the primary network interface.
31+
* Using the primary network interface, such as `eth0` or `bond0`, that you created for a node during cluster installation to create additional secondary networks.
32+
33+
Red{nbsp}Hat does support the following postinstallation configurations that use the OVN-Kubernetes network plugin:
34+
35+
* Creating additional VLANs from the base physical interface, such as `eth0.100`, where you configured the primary network interface as a VLAN for a node during cluster installation. This works because the Open vSwitch (OVS) bridge attaches to the initial VLAN sub-interface, such as `eth0.100`, leaving the base physical interface available for new configurations.
36+
* Creating an additional OVN secondary network with a `localnet` topology network requires that you define the secondary network in a `NodeNetworkConfigurationPolicy` (NNCP) object. After you create the network, pods or virtual machines (VMs) can then attach to the network. These secondary networks give a dedicated connection to the physical network, which might or might not use VLAN tagging. You cannot access these networks from the host network of a node where the host does not have the required setup, such as the required network settings.
37+

networking/ovn_kubernetes_network_provider/about-ovn-kubernetes.adoc

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,23 @@ Part of {openshift-networking}, the OVN-Kubernetes network plugin is the default
1515
OVN-Kubernetes is the default networking solution for {product-title} and {sno} deployments.
1616
====
1717

18-
OVN-Kubernetes, which arose from the OVS project, uses many of the same constructs, such as open flow rules, to determine how packets travel through the network. For more information, see the link:https://www.ovn.org/en/[Open Virtual Network website].
18+
OVN-Kubernetes, which arose from the OVS project, uses many of the same constructs, such as open flow rules, to decide how packets travel through the network. For more information, see the link:https://www.ovn.org/en/[Open Virtual Network website].
1919

20-
OVN-Kubernetes is a series of daemons for OVS that translate virtual network configurations into `OpenFlow` rules. `OpenFlow` is a protocol for communicating with network switches and routers, providing a means for remotely controlling the flow of network traffic on a network device so that network administrators can configure, manage, and monitor the flow of network traffic.
20+
OVN-Kubernetes is a series of daemons for OVS that transform virtual network configurations into `OpenFlow` rules. `OpenFlow` is a protocol for communicating with network switches and routers, providing a means for remotely controlling the flow of network traffic on a network device. This means that network administrators can configure, manage, and watch the flow of network traffic.
2121

22-
OVN-Kubernetes provides more of the advanced functionality not available with `OpenFlow`. OVN supports distributed virtual routing, distributed logical switches, access control, Dynamic Host Configuration Protocol (DHCP), and DNS. OVN implements distributed virtual routing within logic flows that equate to open flows. For example, if you have a pod that sends out a DHCP request to the DHCP server on the network, a logic flow rule in the request helps the OVN-Kubernetes handle the packet so that the server can respond with gateway, DNS server, IP address, and other information.
22+
OVN-Kubernetes provides more of the advanced functionality not available with `OpenFlow`. OVN supports distributed virtual routing, distributed logical switches, access control, Dynamic Host Configuration Protocol (DHCP), and DNS. OVN implements distributed virtual routing within logic flows that equate to open flows. For example, if you have a pod that sends out a DHCP request to the DHCP server on the network, a logic flow rule in the request helps the OVN-Kubernetes handle the packet. This means that the server can respond with gateway, DNS server, IP address, and other information.
2323

24-
OVN-Kubernetes runs a daemon on each node. There are daemon sets for the databases and for the OVN controller that run on every node. The OVN controller programs the Open vSwitch daemon on the nodes to support the network provider features: egress IPs, firewalls, routers, hybrid networking, IPSEC encryption, IPv6, network policy, network policy logs, hardware offloading, and multicast.
24+
OVN-Kubernetes runs a daemon on each node. There are daemon sets for the databases and for the OVN controller that run on every node. The OVN controller programs the Open vSwitch daemon on the nodes to support the following network provider features:
25+
26+
* Egress IPs
27+
* Firewalls
28+
* Hardware offloading
29+
* Hybrid networking
30+
* Internet Protocol Security (IPsec) encryption
31+
* IPv6
32+
* Multicast.
33+
* Network policy and network policy logs
34+
* Routers
2535
2636
// OVN-Kubernetes purpose
2737
include::modules/nw-ovn-kubernetes-features.adoc[leveloffset=+1]

0 commit comments

Comments
 (0)