You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -47,7 +49,7 @@ For more information please visit the official [documentation](https://docs.nvid
47
49
## Prerequisites
48
50
### Kubernetes Node Feature Discovery (NFD)
49
51
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:
51
53
52
54
- PCI vendor and device information
53
55
- RDMA capability
@@ -63,8 +65,6 @@ sources:
63
65
- "02"
64
66
- "0200"
65
67
- "0207"
66
-
- "03"
67
-
- "12"
68
68
deviceLabelFields:
69
69
- "vendor"
70
70
```
@@ -84,12 +84,16 @@ NICClusterPolicy CRD Spec includes the following sub-states/stages:
84
84
- `ofedDriver`: [OFED driver container](https://github.com/Mellanox/ofed-docker) to be deployed on Mellanox supporting nodes.
to be deployed on RDMA & GPU supporting nodes (required for GPUDirect workloads).
89
91
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.
90
93
- `SecondaryNetwork`: Specifies components to deploy in order to facilitate a secondary network in Kubernetes. It consists of the folowing optionally deployed components:
91
94
- [Multus-CNI](https://github.com/intel/multus-cni): Delegate CNI plugin to support secondary networks in Kubernetes
92
95
- 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.
93
97
- IPAM CNI: Currently only [Whereabout IPAM CNI](https://github.com/k8snetworkplumbingwg/whereabouts) is supported
94
98
95
99
>__NOTE__: Any sub-state may be omitted if it is not required for the cluster.
@@ -107,8 +111,8 @@ metadata:
107
111
spec:
108
112
ofedDriver:
109
113
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
112
116
startupProbe:
113
117
initialDelaySeconds: 10
114
118
periodSeconds: 10
@@ -121,7 +125,7 @@ spec:
121
125
rdmaSharedDevicePlugin:
122
126
image: k8s-rdma-shared-dev-plugin
123
127
repository: nvcr.io/nvidia/cloud-native
124
-
version: v1.2.1
128
+
version: v1.3.2
125
129
# The config below directly propagates to k8s-rdma-shared-device-plugin configuration.
126
130
# Replace 'devices' with your (RDMA capable) netdevice name.
127
131
config: |
@@ -138,38 +142,21 @@ spec:
138
142
}
139
143
]
140
144
}
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
-
}
158
145
secondaryNetwork:
159
146
cniPlugins:
160
147
image: plugins
161
148
repository: ghcr.io/k8snetworkplumbingwg
162
149
version: v0.8.7-amd64
163
150
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
167
154
# 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)
168
155
config: ''
169
156
ipamPlugin:
170
157
image: whereabouts
171
158
repository: ghcr.io/k8snetworkplumbingwg
172
-
version: v0.5.1
159
+
version: v0.5.4-amd64
173
160
```
174
161
175
162
Can be found at: `example/crs/mellanox.com_v1alpha1_nicclusterpolicy_cr.yaml`
@@ -288,7 +275,48 @@ spec:
288
275
}
289
276
```
290
277
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.
Can be found at: `example/crs/mellanox.com_v1alpha1_ipoibnetwork_cr.yaml`
292
320
293
321
## Pod Security Policy
294
322
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.
|`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 |
367
367
|`ofedDriver.imagePullSecrets`| list |`[]`| An optional list of references to secrets to use for pulling any of the Mellanox OFED driver image |
368
368
|`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 |
0 commit comments