Dieser Inhalt ist in der von Ihnen ausgewählten Sprache nicht verfügbar.
Chapter 5. Cluster Network Operator in OpenShift Container Platform
You can use the Cluster Network Operator (CNO) to deploy and manage cluster network components on an OpenShift Container Platform cluster, including the Container Network Interface (CNI) network plugin selected for the cluster during installation.
5.1. Cluster Network Operator Link kopierenLink in die Zwischenablage kopiert!
The Cluster Network Operator implements the
network
operator.openshift.io
Procedure
The Cluster Network Operator is deployed during installation as a Kubernetes
Deployment
Run the following command to view the Deployment status:
$ oc get -n openshift-network-operator deployment/network-operatorExample output
NAME READY UP-TO-DATE AVAILABLE AGE network-operator 1/1 1 1 56mRun the following command to view the state of the Cluster Network Operator:
$ oc get clusteroperator/networkExample output
NAME VERSION AVAILABLE PROGRESSING DEGRADED SINCE network 4.5.4 True False False 50mThe following fields provide information about the status of the operator:
,AVAILABLE, andPROGRESSING. TheDEGRADEDfield isAVAILABLEwhen the Cluster Network Operator reports an available status condition.True
5.2. Viewing the cluster network configuration Link kopierenLink in die Zwischenablage kopiert!
Every new OpenShift Container Platform installation has a
network.config
cluster
Procedure
Use the
command to view the cluster network configuration:oc describe$ oc describe network.config/clusterExample output
Name: cluster Namespace: Labels: <none> Annotations: <none> API Version: config.openshift.io/v1 Kind: Network Metadata: Self Link: /apis/config.openshift.io/v1/networks/cluster Spec:1 Cluster Network: Cidr: 10.128.0.0/14 Host Prefix: 23 Network Type: OVNKubernetes Service Network: 172.30.0.0/16 Status:2 Cluster Network: Cidr: 10.128.0.0/14 Host Prefix: 23 Cluster Network MTU: 8951 Network Type: OVNKubernetes Service Network: 172.30.0.0/16 Events: <none>
5.3. Viewing Cluster Network Operator status Link kopierenLink in die Zwischenablage kopiert!
You can inspect the status and view the details of the Cluster Network Operator using the
oc describe
Procedure
Run the following command to view the status of the Cluster Network Operator:
$ oc describe clusteroperators/network
5.4. Enabling IP forwarding globally Link kopierenLink in die Zwischenablage kopiert!
From OpenShift Container Platform 4.14 onward, global IP address forwarding is disabled on OVN-Kubernetes based cluster deployments to prevent undesirable effects for cluster administrators with nodes acting as routers. However, in some cases where an administrator expects traffic to be forwarded a new configuration parameter
ipForwarding
To re-enable IP forwarding for all traffic on OVN-Kubernetes managed interfaces set the
gatewayConfig.ipForwarding
Global
Procedure
Backup the existing network configuration by running the following command:
$ oc get network.operator cluster -o yaml > network-config-backup.yamlRun the following command to modify the existing network configuration:
$ oc edit network.operator clusterAdd or update the following block under
as illustrated in the following example:specspec: clusterNetwork: - cidr: 10.128.0.0/14 hostPrefix: 23 serviceNetwork: - 172.30.0.0/16 networkType: OVNKubernetes clusterNetworkMTU: 8900 defaultNetwork: ovnKubernetesConfig: gatewayConfig: ipForwarding: Global- Save and close the file.
After applying the changes, the OpenShift Cluster Network Operator (CNO) applies the update across the cluster. You can monitor the progress by using the following command:
$ oc get clusteroperators networkThe status should eventually report as
,Available, andProgressing=False.Degraded=FalseAlternatively, you can enable IP forwarding globally by running the following command:
$ oc patch network.operator cluster -p '{"spec":{"defaultNetwork":{"ovnKubernetesConfig":{"gatewayConfig":{"ipForwarding": "Global"}}}}}NoteThe other valid option for this parameter is
in case you want to revert this change.Restrictedis the default and with that setting global IP address forwarding is disabled.Restricted
5.5. Viewing Cluster Network Operator logs Link kopierenLink in die Zwischenablage kopiert!
You can view Cluster Network Operator logs by using the
oc logs
Procedure
Run the following command to view the logs of the Cluster Network Operator:
$ oc logs --namespace=openshift-network-operator deployment/network-operator
5.6. Cluster Network Operator configuration Link kopierenLink in die Zwischenablage kopiert!
The configuration for the cluster network is specified as part of the Cluster Network Operator (CNO) configuration and stored in a custom resource (CR) object that is named
cluster
Network
operator.openshift.io
The CNO configuration inherits the following fields during cluster installation from the
Network
Network.config.openshift.io
clusterNetwork- IP address pools from which pod IP addresses are allocated.
serviceNetwork- IP address pool for services.
defaultNetwork.type- Cluster network plugin, such as OpenShift SDN or OVN-Kubernetes.
After cluster installation, you can only modify the
clusterNetwork
You can specify the cluster network plugin configuration for your cluster by setting the fields for the
defaultNetwork
cluster
5.6.1. Cluster Network Operator configuration object Link kopierenLink in die Zwischenablage kopiert!
The fields for the Cluster Network Operator (CNO) are described in the following table:
| Field | Type | Description |
|---|---|---|
|
|
| The name of the CNO object. This name is always
|
|
|
| A list specifying the blocks of IP addresses from which pod IP addresses are allocated and the subnet prefix length assigned to each individual node in the cluster. For example:
|
|
|
| A block of IP addresses for services. The OpenShift SDN and OVN-Kubernetes network plugins support only a single IP address block for the service network. For example:
This value is ready-only and inherited from the
|
|
|
| Configures the network plugin for the cluster network. |
|
|
| The fields for this object specify the kube-proxy configuration. If you are using the OVN-Kubernetes cluster network plugin, the kube-proxy configuration has no effect. |
For a cluster that needs to deploy objects across multiple networks, ensure that you specify the same value for the
clusterNetwork.hostPrefix
install-config.yaml
clusterNetwork.hostPrefix
5.6.1.1. defaultNetwork object configuration Link kopierenLink in die Zwischenablage kopiert!
The values for the
defaultNetwork
| Field | Type | Description |
|---|---|---|
|
|
| Either
Note OpenShift Container Platform uses the OVN-Kubernetes network plugin by default. |
|
|
| This object is only valid for the OpenShift SDN network plugin. |
|
|
| This object is only valid for the OVN-Kubernetes network plugin. |
5.6.1.1.1. Configuration for the OpenShift SDN network plugin Link kopierenLink in die Zwischenablage kopiert!
The following table describes the configuration fields for the OpenShift SDN network plugin:
| Field | Type | Description |
|---|---|---|
|
|
| The network isolation mode for OpenShift SDN. |
|
|
| The maximum transmission unit (MTU) for the VXLAN overlay network. This value is normally configured automatically. |
|
|
| The port to use for all VXLAN packets. The default value is
|
Example OpenShift SDN configuration
defaultNetwork:
type: OpenShiftSDN
openshiftSDNConfig:
mode: NetworkPolicy
mtu: 1450
vxlanPort: 4789
5.6.1.1.2. Configuration for the OVN-Kubernetes network plugin Link kopierenLink in die Zwischenablage kopiert!
The following table describes the configuration fields for the OVN-Kubernetes network plugin:
| Field | Type | Description |
|---|---|---|
|
|
| The maximum transmission unit (MTU) for the Geneve (Generic Network Virtualization Encapsulation) overlay network. This value is normally configured automatically. |
|
|
| The UDP port for the Geneve overlay network. |
|
|
| If the field is present, IPsec is enabled for the cluster. |
|
|
| Specifies a configuration object for IPv4 settings. |
|
|
| Specifies a configuration object for IPv6 settings. |
|
|
| Specify a configuration object for customizing network policy audit logging. If unset, the defaults audit log settings are used. |
|
|
| Optional: Specify a configuration object for customizing how egress traffic is sent to the node gateway. Note While migrating egress traffic, you can expect some disruption to workloads and service traffic until the Cluster Network Operator (CNO) successfully rolls out the changes. |
| Field | Type | Description |
|---|---|---|
|
| string | If your existing network infrastructure overlaps with the
The default value is
|
|
| string | If your existing network infrastructure overlaps with the
The default value is
|
| Field | Type | Description |
|---|---|---|
|
| string | If your existing network infrastructure overlaps with the
This field cannot be changed after installation. The default value is
|
|
| string | If your existing network infrastructure overlaps with the
The default value is
|
| Field | Type | Description |
|---|---|---|
|
| integer | The maximum number of messages to generate every second per node. The default value is
|
|
| integer | The maximum size for the audit log in bytes. The default value is
|
|
| integer | The maximum number of log files that are retained. |
|
| string | One of the following additional audit log targets:
|
|
| string | The syslog facility, such as
|
| Field | Type | Description |
|---|---|---|
|
|
| Set this field to
This field has an interaction with the Open vSwitch hardware offloading feature. If you set this field to
|
|
|
| You can control IP forwarding for all traffic on OVN-Kubernetes managed interfaces by using the
|
|
|
| Optional: Specify an object to configure the internal OVN-Kubernetes masquerade address for host to service traffic for IPv4 addresses. |
|
|
| Optional: Specify an object to configure the internal OVN-Kubernetes masquerade address for host to service traffic for IPv6 addresses. |
| Field | Type | Description |
|---|---|---|
|
|
| The masquerade IPv4 addresses that are used internally to enable host to service traffic. The host is configured with these IP addresses as well as the shared gateway bridge interface. The default value is
|
| Field | Type | Description |
|---|---|---|
|
|
| The masquerade IPv6 addresses that are used internally to enable host to service traffic. The host is configured with these IP addresses as well as the shared gateway bridge interface. The default value is
|
You can only change the configuration for your cluster network plugin during cluster installation, except for the
gatewayConfig
Example OVN-Kubernetes configuration with IPSec enabled
defaultNetwork:
type: OVNKubernetes
ovnKubernetesConfig:
mtu: 1400
genevePort: 6081
ipsecConfig: {}
5.6.1.2. kubeProxyConfig object configuration (OpenShiftSDN container network interface only) Link kopierenLink in die Zwischenablage kopiert!
The values for the
kubeProxyConfig
| Field | Type | Description |
|---|---|---|
|
|
| The refresh period for
time package documentation.
Note Because of performance improvements introduced in OpenShift Container Platform 4.3 and greater, adjusting the
|
|
|
| The minimum duration before refreshing
time package. The default value is:
|
5.6.2. Cluster Network Operator example configuration Link kopierenLink in die Zwischenablage kopiert!
A complete CNO configuration is specified in the following example:
Example Cluster Network Operator object
apiVersion: operator.openshift.io/v1
kind: Network
metadata:
name: cluster
spec:
clusterNetwork:
- cidr: 10.128.0.0/14
hostPrefix: 23
serviceNetwork:
- 172.30.0.0/16
networkType: OVNKubernetes
clusterNetworkMTU: 8900