Skip to content

Commit 4c9f3f6

Browse files
authored
Merge pull request #460 from e0ne/release-v23.1.0-rc.1
Release Network Operator v23.1.0-rc.1
2 parents 0a615e5 + 41dfa25 commit 4c9f3f6

10 files changed

+67
-39
lines changed

README.md

Lines changed: 57 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](http://www.apache.org/licenses/LICENSE-2.0)
22
[![Go Report Card](https://goreportcard.com/badge/github.com/Mellanox/network-operator)](https://goreportcard.com/report/github.com/Mellanox/network-operator)
3-
[![Build Status](https://travis-ci.com/Mellanox/network-operator.svg?branch=master)](https://travis-ci.com/Mellanox/network-operator)
43

54
- [Nvidia Network Operator](#nvidia-network-operator)
65
* [Documentation](#documentation)
@@ -18,6 +17,9 @@
1817
+ [HostDeviceNetwork CRD](#hostdevicenetwork-crd)
1918
- [HostDeviceNetwork spec:](#hostdevicenetwork-spec-)
2019
* [Example for HostDeviceNetwork resource:](#example-for-hostdevicenetwork-resource-)
20+
+ [IPoIBNetwork CRD](#ipoibnetwork-crd)
21+
- [IPoIBNetwork spec:](#ipoibnetwork-spec-)
22+
* [Example for IPoIBNetwork resource:](#example-for-ipoibnetwork-resource-)
2123
* [Pod Security Policy](#pod-security-policy)
2224
* [System Requirements](#system-requirements)
2325
* [Tested Network Adapters](#tested-network-adapters)
@@ -47,7 +49,7 @@ For more information please visit the official [documentation](https://docs.nvid
4749
## Prerequisites
4850
### Kubernetes Node Feature Discovery (NFD)
4951
Nvidia Network operator relies on Node labeling to get the cluster to the desired state.
50-
[Node Feature Discovery](https://github.com/kubernetes-sigs/node-feature-discovery) `v0.6.0-233-g3e00bfb` or newer is expected to be deployed to provide the appropriate labeling:
52+
[Node Feature Discovery](https://github.com/kubernetes-sigs/node-feature-discovery) `v0.10.1` or newer is expected to be deployed to provide the appropriate labeling:
5153

5254
- PCI vendor and device information
5355
- RDMA capability
@@ -63,8 +65,6 @@ sources:
6365
- "02"
6466
- "0200"
6567
- "0207"
66-
- "03"
67-
- "12"
6868
deviceLabelFields:
6969
- "vendor"
7070
```
@@ -84,12 +84,16 @@ NICClusterPolicy CRD Spec includes the following sub-states/stages:
8484
- `ofedDriver`: [OFED driver container](https://github.com/Mellanox/ofed-docker) to be deployed on Mellanox supporting nodes.
8585
- `rdmaSharedDevicePlugin`: [RDMA shared device plugin](https://github.com/Mellanox/k8s-rdma-shared-dev-plugin)
8686
and related configurations.
87+
- `sriovDevicePlugin`: [SR-IOV Network Device Plugin](https://github.com/k8snetworkplumbingwg/sriov-network-device-plugin)
88+
and related configurations.
8789
- `nvPeerDriver`: [Nvidia Peer Memory client driver container](https://github.com/Mellanox/ofed-docker)
8890
to be deployed on RDMA & GPU supporting nodes (required for GPUDirect workloads).
8991
For NVIDIA GPU driver version < 465. Check [compatibility notes](#compatibility-notes) for details
92+
- `ibKubernetes`: [InfiniBand Kubernetes](https://github.com/Mellanox/ib-kubernetes/) and related configurations.
9093
- `SecondaryNetwork`: Specifies components to deploy in order to facilitate a secondary network in Kubernetes. It consists of the folowing optionally deployed components:
9194
- [Multus-CNI](https://github.com/intel/multus-cni): Delegate CNI plugin to support secondary networks in Kubernetes
9295
- CNI plugins: Currently only [containernetworking-plugins](https://github.com/containernetworking/plugins) is supported
96+
- [IP Over Infiniband (IPoIB) CNI Plugin](https://github.com/Mellanox/ipoib-cni): Allow user to create IPoIB child link and move it to the pod.
9397
- IPAM CNI: Currently only [Whereabout IPAM CNI](https://github.com/k8snetworkplumbingwg/whereabouts) is supported
9498

9599
>__NOTE__: Any sub-state may be omitted if it is not required for the cluster.
@@ -107,8 +111,8 @@ metadata:
107111
spec:
108112
ofedDriver:
109113
image: mofed
110-
repository: mellanox
111-
version: 5.3-1.0.0.1
114+
repository: nvcr.io/nvidia/mellanox
115+
version: 5.9-0.5.6.0
112116
startupProbe:
113117
initialDelaySeconds: 10
114118
periodSeconds: 10
@@ -121,7 +125,7 @@ spec:
121125
rdmaSharedDevicePlugin:
122126
image: k8s-rdma-shared-dev-plugin
123127
repository: nvcr.io/nvidia/cloud-native
124-
version: v1.2.1
128+
version: v1.3.2
125129
# The config below directly propagates to k8s-rdma-shared-device-plugin configuration.
126130
# Replace 'devices' with your (RDMA capable) netdevice name.
127131
config: |
@@ -138,38 +142,21 @@ spec:
138142
}
139143
]
140144
}
141-
sriovDevicePlugin:
142-
image: sriov-device-plugin
143-
repository: docker.io/nfvpe
144-
version: v3.3
145-
config: |
146-
{
147-
"resourceList": [
148-
{
149-
"resourcePrefix": "nvidia.com",
150-
"resourceName": "hostdev",
151-
"selectors": {
152-
"vendors": ["15b3"],
153-
"isRdma": true
154-
}
155-
}
156-
]
157-
}
158145
secondaryNetwork:
159146
cniPlugins:
160147
image: plugins
161148
repository: ghcr.io/k8snetworkplumbingwg
162149
version: v0.8.7-amd64
163150
multus:
164-
image: multus
165-
repository: nfvpe
166-
version: v3.4.1
151+
image: multus-cni
152+
repository: ghcr.io/k8snetworkplumbingwg
153+
version: v3.8
167154
# if config is missing or empty then multus config will be automatically generated from the CNI configuration file of the master plugin (the first file in lexicographical order in cni-conf-dir)
168155
config: ''
169156
ipamPlugin:
170157
image: whereabouts
171158
repository: ghcr.io/k8snetworkplumbingwg
172-
version: v0.5.1
159+
version: v0.5.4-amd64
173160
```
174161
175162
Can be found at: `example/crs/mellanox.com_v1alpha1_nicclusterpolicy_cr.yaml`
@@ -288,7 +275,48 @@ spec:
288275
}
289276
```
290277
291-
Can be found at: `mellanox.com_v1alpha1_hostdevicenetwork_cr.yaml`
278+
Can be found at: `example/crs/mellanox.com_v1alpha1_hostdevicenetwork_cr.yaml`
279+
280+
### IPoIBNetwork CRD
281+
This CRD defines a IPoIBNetwork secondary network. It is translated by the Operator to a `NetworkAttachmentDefinition` instance as defined in [k8snetworkplumbingwg/multi-net-spec](https://github.com/k8snetworkplumbingwg/multi-net-spec).
282+
283+
#### IPoIBNetwork spec:
284+
HostDeviceNetwork CRD Spec includes the following fields:
285+
- `networkNamespace`: Namespace for NetworkAttachmentDefinition related to this HostDeviceNetwork CRD.
286+
- `master`: Name of the host interface to enslave.
287+
- `ipam`: IPAM configuration to be used for this network.
288+
289+
##### Example for IPoIBNetwork resource:
290+
In the example below we deploy IPoIBNetwork CRD instance with "ibs3f1" host interface, that will be used to deploy NetworkAttachmentDefinition for IPoIBNetwork network to default namespace.
291+
292+
```
293+
apiVersion: mellanox.com/v1alpha1
294+
kind: IPoIBNetwork
295+
metadata:
296+
name: example-ipoibnetwork
297+
spec:
298+
networkNamespace: "default"
299+
master: "ibs3f1"
300+
ipam: |
301+
{
302+
"type": "whereabouts",
303+
"datastore": "kubernetes",
304+
"kubernetes": {
305+
"kubeconfig": "/etc/cni/net.d/whereabouts.d/whereabouts.kubeconfig"
306+
},
307+
"range": "192.168.5.225/28",
308+
"exclude": [
309+
"192.168.6.229/30",
310+
"192.168.6.236/32"
311+
],
312+
"log_file" : "/var/log/whereabouts.log",
313+
"log_level" : "info",
314+
"gateway": "192.168.6.1"
315+
}
316+
317+
```
318+
319+
Can be found at: `example/crs/mellanox.com_v1alpha1_ipoibnetwork_cr.yaml`
292320
293321
## Pod Security Policy
294322
Network-operator supports [Pod Security Policies](https://kubernetes.io/docs/concepts/policy/pod-security-policy/). When NicClusterPolicy is created with `psp.enabled=True`, privileged PSP is created and applied to all network-operator's pods. Requires [admission controller](https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/#how-do-i-turn-on-an-admission-control-plug-in) to be enabled.

bundle/manifests/nvidia-network-operator.clusterserviceversion.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ metadata:
7676
},
7777
"maxParallelUpgrades": 1
7878
},
79-
"version": "5.8-1.0.1.1.2"
79+
"version": "5.9-0.5.6.0"
8080
},
8181
"rdmaSharedDevicePlugin": {
8282
"config": "{\n \"configList\": [\n {\n \"resourceName\": \"rdma_shared_device_a\",\n \"rdmaHcaMax\": 1000,\n \"selectors\": {\n \"ifNames\": [\"ens2f0\"]\n }\n }\n ]\n}\n",

deployment/network-operator/Chart.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
apiVersion: v2
22
name: network-operator
3-
version: 23.1.0-beta.3
3+
version: 23.1.0-rc.1
44
kubeVersion: '>= 1.21.0'
5-
appVersion: v23.1.0-beta.3
5+
appVersion: v23.1.0-rc.1
66
description: Nvidia network operator
77
type: application
88
keywords:

deployment/network-operator/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -363,7 +363,7 @@ imagePullSecrets:
363363
| `ofedDriver.deploy` | bool | `false` | deploy Mellanox OFED driver container |
364364
| `ofedDriver.repository` | string | `mellanox` | Mellanox OFED driver image repository |
365365
| `ofedDriver.image` | string | `mofed` | Mellanox OFED driver image name |
366-
| `ofedDriver.version` | string | `5.8-1.0.1.1.2` | Mellanox OFED driver version |
366+
| `ofedDriver.version` | string | `5.9-0.5.6.0` | Mellanox OFED driver version |
367367
| `ofedDriver.imagePullSecrets` | list | `[]` | An optional list of references to secrets to use for pulling any of the Mellanox OFED driver image |
368368
| `ofedDriver.env` | list | `[]` | An optional list of [environment variables](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#envvar-v1-core) passed to the Mellanox OFED driver image |
369369
| `ofedDriver.repoConfig.name` | string | `` | Private mirror repository configuration configMap name |

deployment/network-operator/values.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,7 @@ ofedDriver:
142142
deploy: false
143143
image: mofed
144144
repository: nvcr.io/nvidia/mellanox
145-
version: 5.8-1.0.1.1.2
145+
version: 5.9-0.5.6.0
146146
# imagePullSecrets: []
147147
# env, if defined will pass environment variables to the OFED container
148148
# env:

example/crs/mellanox.com_v1alpha1_nicclusterpolicy_cr-ipoib.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ spec:
1919
ofedDriver:
2020
image: mofed
2121
repository: nvcr.io/nvidia/mellanox
22-
version: 5.8-1.0.1.1.2
22+
version: 5.9-0.5.6.0
2323
startupProbe:
2424
initialDelaySeconds: 10
2525
periodSeconds: 10

example/crs/mellanox.com_v1alpha1_nicclusterpolicy_cr-ocp-hostdev.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ spec:
1919
ofedDriver:
2020
image: mofed
2121
repository: nvcr.io/nvidia/mellanox
22-
version: 5.8-1.0.1.1.2
22+
version: 5.9-0.5.6.0
2323
upgradePolicy:
2424
autoUpgrade: false
2525
drain:

example/crs/mellanox.com_v1alpha1_nicclusterpolicy_cr-ocp.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ spec:
1919
ofedDriver:
2020
image: mofed
2121
repository: nvcr.io/nvidia/mellanox
22-
version: 5.8-1.0.1.1.2
22+
version: 5.9-0.5.6.0
2323
upgradePolicy:
2424
autoUpgrade: false
2525
drain:

example/crs/mellanox.com_v1alpha1_nicclusterpolicy_cr.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ spec:
1919
ofedDriver:
2020
image: mofed
2121
repository: nvcr.io/nvidia/mellanox
22-
version: 5.8-1.0.1.1.2
22+
version: 5.9-0.5.6.0
2323
startupProbe:
2424
initialDelaySeconds: 10
2525
periodSeconds: 10

scripts/releases/prepare-release.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ sed -e s"/pullPolicy:.*/pullPolicy: IfNotPresent/" \
116116
#
117117
# Create release assets to be uploaded
118118
#
119-
VERSION=$semver make build-chart
119+
VERSION=$semver make chart-build
120120

121121
chart_name="network-operator-$semver.tgz"
122122
sign_helm_chart $chart_name

0 commit comments

Comments
 (0)