Ce contenu n'est pas disponible dans la langue sélectionnée.
Chapter 11. DPU Operator
11.1. About DPU and the DPU Operator Copier lienLien copié sur presse-papiers!
As a cluster administrator, you can add the DPU Operator to your cluster to manage DPU devices and network attachments.
The DPU Operator is a Technology Preview feature only. Technology Preview features are not supported with Red Hat production service level agreements (SLAs) and might not be functionally complete. Red Hat does not recommend using them in production. These features provide early access to upcoming product features, enabling customers to test functionality and provide feedback during the development process.
For more information about the support scope of Red Hat Technology Preview features, see Technology Preview Features Support Scope.
11.1.1. Orchestrating DPUs with the DPU Operator Copier lienLien copié sur presse-papiers!
A Data Processing Unit (DPU) is a type of programmable processor that is considered one of the three fundamental pillars of computing, alongside CPUs and GPUs. While CPUs handle general computing tasks and GPUs accelerate specific workloads, the primary role of the DPU is to offload and accelerate data-centric workloads, such as networking, storage, and security functions.
DPUs are typically used in data centers and cloud environments to improve performance, reduce latency, and enhance security by offloading these tasks from the CPU. DPUs can also be used to create a more efficient and flexible infrastructure by enabling the deployment of specialized workloads closer to the data source.
The DPU Operator is responsible for managing the DPU devices and network attachments. The DPU Operator deploys the DPU daemon onto OpenShift Container Platform compute nodes that interface through an API controlling the DPU daemon running on the DPU. The DPU Operator is responsible for the life-cycle management of the ovn-kube
components and the necessary host network initialization on the DPU.
The currently supported DPU device is described in the following table.
Vendor | Device | Firmware | Description |
---|---|---|---|
Intel | IPU E2100 | Version 2.0.0.11126 or later | A DPU designed to offload networking, storage, and security tasks from host CPUs in data centers, improving efficiency and performance. For instructions on deploying a full end-to-end solution, see the Red Hat Knowledgebase solution Accelerating Confidential AI on OpenShift with the Intel E2100 IPU, DPU Operator, and F5 NGINX. |
11.2. Installing the DPU Operator Copier lienLien copié sur presse-papiers!
You can install the Data Processing Unit (DPU) Operator on your cluster to manage DPU devices and network attachments. Install the DPU Operator on both the host cluster and all the DPU clusters. The DPU Operator manages the lifecycle of all the supported DPUs.
As a cluster administrator, you can install the DPU Operator by using the OpenShift Container Platform CLI or the web console.
You need to install the DPU Operator on the host cluster and each of the DPU clusters.
11.2.1. Installing the DPU Operator by using the CLI Copier lienLien copié sur presse-papiers!
As a cluster administrator, you can install the DPU Operator by using the CLI.
The CLI must be used to install the DPU Operator on the DPU cluster.
Prerequisites
-
Install the OpenShift CLI (
oc
). -
An account with
cluster-admin
privileges.
Procedure
Create the
openshift-dpu-operator
namespace by entering the following command:Copy to Clipboard Copied! Toggle word wrap Toggle overflow Create an
OperatorGroup
custom resource (CR) by entering the following command:Copy to Clipboard Copied! Toggle word wrap Toggle overflow Create a
Subscription
CR for the DPU Operator by entering the following command:Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Verification
To verify that the Operator is installed, enter the following command and then check that output shows
Succeeded
for the Operator:oc get csv -n openshift-dpu-operator \ -o custom-columns=Name:.metadata.name,Phase:.status.phase
$ oc get csv -n openshift-dpu-operator \ -o custom-columns=Name:.metadata.name,Phase:.status.phase
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Change to the
openshift-dpu-operator
project:oc project openshift-dpu-operator
$ oc project openshift-dpu-operator
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Verify the DPU Operator is running by entering the following command:
oc get pods -n openshift-dpu-operator
$ oc get pods -n openshift-dpu-operator
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Example output
NAME READY STATUS RESTARTS AGE dpu-operator-controller-manager-6b7bbb5db8-7lvkj 2/2 Running 0 2m9s
NAME READY STATUS RESTARTS AGE dpu-operator-controller-manager-6b7bbb5db8-7lvkj 2/2 Running 0 2m9s
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
11.2.2. Installing the DPU Operator using the web console Copier lienLien copié sur presse-papiers!
As a cluster administrator, you can install the DPU Operator by using the web console.
Prerequisites
-
Install the OpenShift CLI (
oc
). -
An account with
cluster-admin
privileges.
Procedure
-
In the OpenShift Container Platform web console, click Operators
OperatorHub. - Select DPU Operator from the list of available Operators, and then click Install.
On the Install Operator page, under Installed Namespace, the Operator recommended Namespace option is preselected by default. No action is required.
- Click Install.
Verification
-
Navigate to the Operators
Installed Operators page. Ensure that DPU Operator is listed in the openshift-dpu-operator project with a Status of InstallSucceeded.
NoteDuring installation an Operator might display a Failed status. If the installation later succeeds with an InstallSucceeded message, you can ignore the Failed message.
Troubleshooting
- Inspect the Operator Subscriptions and Install Plans tabs for any failure or errors under Status.
-
Navigate to the Workloads
Pods page and check the logs for pods in the openshift-dpu-operator
project. Check the namespace of the YAML file. If the annotation is missing, you can add the annotation
workload.openshift.io/allowed=management
to the Operator namespace with the following command:oc annotate ns/openshift-dpu-operator workload.openshift.io/allowed=management
$ oc annotate ns/openshift-dpu-operator workload.openshift.io/allowed=management
Copy to Clipboard Copied! Toggle word wrap Toggle overflow NoteFor single-node OpenShift clusters, the annotation
workload.openshift.io/allowed=management
is required for the namespace.
11.2.3. Next steps Copier lienLien copié sur presse-papiers!
11.3. Configuring the DPU Operator Copier lienLien copié sur presse-papiers!
You can configure the DPU Operator to manage the DPU devices and network attachments in your cluster.
11.3.1. Configuring the DPU Operator Copier lienLien copié sur presse-papiers!
To configure the DPU Operator follow these steps:
Procedure
-
Create a
DpuOperatorConfig
custom resource (CR) on both the host cluster and on each of the DPU clusters. The DPU Operator in each cluster is activated after this CR is created. Create a file named
dpu-operator-host-config.yaml
by using the following YAML:Copy to Clipboard Copied! Toggle word wrap Toggle overflow Create the resource by running the following command:
oc apply -f dpu-operator-host-config.yaml
$ oc apply -f dpu-operator-host-config.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow You must label all nodes that either have an attached DPU or are functioning as a DPU. On the host cluster, this means labeling all compute nodes assuming each node has an attached DPU with
dpu=true
. On the DPU, where each MicroShift cluster consists of a single node, label that single node in each cluster withdpu=true
. You can apply this label by running the following command:oc label node <node_name> dpu=true
$ oc label node <node_name> dpu=true
Copy to Clipboard Copied! Toggle word wrap Toggle overflow where:
node_name
-
Refers to the name of your node, such as
worker-1
.
11.4. Running a workload on the DPU Copier lienLien copié sur presse-papiers!
Running workloads on a DPU enables offloading specialized infrastructure tasks such as networking, security, and storage to a dedicated processing unit. This improves performance, enforces a stronger security boundary between infrastructure and application workloads, and frees up host CPU resources.
11.4.1. Running a workload on the DPU Copier lienLien copié sur presse-papiers!
Follow these steps to deploy a workload on the DPU.
Prerequisites
-
The OpenShift CLI (
oc
) is installed. -
An account with
cluster-admin
privileges is available. - The DPU Operator is installed.
Procedure
Create a sample workload on the host side by using the following YAML, save the file as
workload-host.yaml
:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- The name of the node where the workload is deployed.
Create the workload by running the following command:
oc apply -f workload-host.yaml
$ oc apply -f workload-host.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
11.4.2. Creating a service function chain on the DPU Copier lienLien copié sur presse-papiers!
Network service chaining, also known as service function chaining (SFC) is a capability that uses software-defined networking (SDN) capabilities to create a chain of connected network services, such as L4-7 services like firewalls, network address translation (NAT), and intrusion protection.
Follow this procedure on the DPU to create the network function my-network-function
in the service function chain.
Prerequisites
-
Install the OpenShift CLI (
oc
). -
An account with
cluster-admin
privileges. - Install the DPU Operator.
Procedure
Save the following YAML file example as
sfc.yaml
:Copy to Clipboard Copied! Toggle word wrap Toggle overflow Create the chain by running the following command on the DPU nodes:
oc apply -f sfc.yaml
$ oc apply -f sfc.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
11.5. Uninstalling the DPU Operator Copier lienLien copié sur presse-papiers!
To uninstall the DPU Operator, you must first delete any running DPU workloads. Follow this procedure to uninstall the DPU Operator.
11.5.1. Uninstalling the DPU Operator Copier lienLien copié sur presse-papiers!
As a cluster administrator, you can uninstall the DPU Operator.
Prerequisites
-
You have access to an OpenShift Container Platform cluster using an account with
cluster-admin
permissions. - You have the DPU Operator installed.
Procedure
Delete the
DpuOperatorConfig
CR that was created by running the following commandoc delete DpuOperatorConfig dpu-operator-config
$ oc delete DpuOperatorConfig dpu-operator-config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Delete the subscription that was used to install the DPU Operator by running the following command:
oc delete Subscription openshift-dpu-operator-subscription -n openshift-dpu-operator
$ oc delete Subscription openshift-dpu-operator-subscription -n openshift-dpu-operator
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Remove the
OperatorGroup
resource that was created by running the following command:oc delete OperatorGroup dpu-operators -n openshift-dpu-operator
$ oc delete OperatorGroup dpu-operators -n openshift-dpu-operator
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Uninstall the DPU Operator as follows:
Check the installed Operators by running the following command:
oc get csv -n openshift-dpu-operator
$ oc get csv -n openshift-dpu-operator
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Example output
NAME DISPLAY VERSION REPLACES PHASE dpu-operator.v4.19.0-202503130333 DPU Operator 4.19.0-202503130333 Failed
NAME DISPLAY VERSION REPLACES PHASE dpu-operator.v4.19.0-202503130333 DPU Operator 4.19.0-202503130333 Failed
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Delete the DPU Operator by running the following command:
oc delete csv dpu-operator.v4.19.0-202503130333 -n openshift-dpu-operator
$ oc delete csv dpu-operator.v4.19.0-202503130333 -n openshift-dpu-operator
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Delete the namespace that was created for the DPU Operator by running the following command:
oc delete namespace openshift-dpu-operator
$ oc delete namespace openshift-dpu-operator
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Verification
Verify that the DPU Operator is uninstalled by running the following command. An example of succesful command output is
No resources found in openshift-dpu-operator namespace
.oc get csv -n openshift-dpu-operator
$ oc get csv -n openshift-dpu-operator
Copy to Clipboard Copied! Toggle word wrap Toggle overflow