Skip to content

Commit 2d2e5a4

Browse files
authored
Merge pull request #674 from SchSeba/documentation_update
Documentation update
2 parents a2a227d + 0253817 commit 2d2e5a4

File tree

1 file changed

+53
-0
lines changed

1 file changed

+53
-0
lines changed

README.md

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -259,6 +259,59 @@ spec:
259259

260260
> **NOTE**: Currently only `mellanox` plugin can be disabled.
261261

262+
### Parallel draining
263+
264+
It is possible to drain more than one node at a time using this operator.
265+
266+
The configuration is done via the SriovNetworkNodePool, selecting a number of nodes using the node selector and how many
267+
nodes in parallel from the pool the operator can drain in parallel. maxUnavailable can be a number or a percentage.
268+
269+
> **NOTE**: every node can only be part of one pool, if a node is selected by more than one pool, then it will not be drained
270+
271+
> **NOTE**: If a node is not part of any pool it will have a default configuration of maxUnavailable 1
272+
273+
**Example**:
274+
275+
```yaml
276+
apiVersion: sriovnetwork.openshift.io/v1
277+
kind: SriovNetworkPoolConfig
278+
metadata:
279+
name: worker
280+
namespace: sriov-network-operator
281+
spec:
282+
maxUnavailable: 2
283+
nodeSelector:
284+
matchLabels:
285+
node-role.kubernetes.io/worker: ""
286+
```
287+
288+
### Resource Injector Policy
289+
290+
By default, the Resource injector webhook has a failed policy of ignored, this was implemented to not block pod creation
291+
in case the webhook is not available.
292+
293+
with a feature introduced in Kubernetes 1.28(Beta) called [MatchConditions](https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/#matching-requests-matchconditions)
294+
we can move the webhook failed policy to be Fail. In this case the operator configured the Mutating webhook for the resource
295+
injector only on pods with the secondary network annotation of `k8s.v1.cni.cncf.io/networks`.
296+
It's possible to enable the feature with a FeatureGate via the SriovOperatorConfig object
297+
298+
> **NOTE**: the feature is disabled by default
299+
300+
**Example**:
301+
302+
```yaml
303+
apiVersion: sriovnetwork.openshift.io/v1
304+
kind: SriovOperatorConfig
305+
metadata:
306+
name: default
307+
namespace: sriov-network-operator
308+
spec:
309+
...
310+
featureGates:
311+
resourceInjectorMatchCondition: true
312+
...
313+
```
314+
262315
## Components and design
263316

264317
This operator is split into 2 components:

0 commit comments

Comments
 (0)