Skip to content

device_plugins: Add multiple custom resources feature in qat readme #390

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
May 27, 2025
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 32 additions & 0 deletions device_plugins/deploy_qat.md
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,38 @@ Users can use the steps below to customize the QAT resource configuration:

2. Create QAT device plugin CR with -provisioning-config set as the name of the ConfigMap (created in step 1) in the qat_device_plugin.yaml file or set ConfigMap name in the provisioning-config option from web console.

# Multiple Custom Resources

The [feature](https://github.com/intel/intel-device-plugins-for-kubernetes/tree/main/cmd/operator#multiple-custom-resources) can be used with a `nodeSelector` label representing the capabilities supported on the node. Multiple custom resources on nodes can be supported with different QAT capabilities.

* For example, to assign the capability `sym` for a node: create the label on the node
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this example misses the part that how multiple custom resources are deployed?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated the example in #391 Please review, thanks

```
oc label node <node_name> qat.mode=sym
```
* Deploy a new `QatDevicePlugin` Custom resource by adding the above label as a `nodeSelector` and choosing the configmap created with `sym` capability according to [QAT Resource Configuration](#qat-resource-configuration-experimental):

```
nodeSelector:
qat.mode: sym
```
* Verify that the device plugin CR is ready
```
$ oc get QatDevicePlugin
```
Output:
```
NAME DESIRED READY NODE SELECTOR AGE
qatdeviceplugin-sym 1 1 {"intel.feature.node.kubernetes.io/qat":"true","qat.mode":"sym"} 72m
```

* Check the resources on the node:
```
oc describe <node_name> | grep qat.intel.com
qat.intel.com/sym: 128
qat.intel.com/sym: 128
qat.intel.com/sym 0 0
```

# Run Intel QAT based workloads on RHOCP
To run the Intel QAT based workloads as an unprivileged pod (see [issue](https://github.com/intel/intel-technology-enabling-for-openshift/issues/122)). The customized `qat-scc` Security Context Constraint (SCC) is provided to bind with service account and run the QAT based workload.

Expand Down