2.11. DPU Operator
2.11.1. 关于 DPU 和 DPU Operator 复制链接链接已复制到粘贴板!
作为集群管理员,您可以将 DPU Operator 添加到集群中,以管理 DPU 设备和网络附加。
DPU Operator 只是一个技术预览功能。技术预览功能不受红帽产品服务等级协议(SLA)支持,且功能可能并不完整。红帽不推荐在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。
有关红帽技术预览功能支持范围的更多信息,请参阅技术预览功能支持范围。
2.11.1.1. 使用 DPU Operator 编排 DPU 复制链接链接已复制到粘贴板!
数据处理单元(DPU)是可编程处理器类型,被视为三种基本支配计算之一,以及 CPU 和 GPU。CPU 用于处理常规计算任务,GPU 可以加速特定的工作负载,但 DPU 的主要作业是卸载和加速以数据为中心的工作负载,如网络、存储和安全功能。
DPU 通常用于数据中心和云环境,它会从 CPU 卸载这些任务来提高性能、缩短延迟并增强安全性。DPU 也可用于通过使特殊工作负载部署更接近数据源,从而创建更高效且更灵活的基础架构。
DPU Operator 负责管理 DPU 设备和网络附加。DPU Operator 将 DPU 守护进程部署到通过 API 控制 DPU 守护进程在 DPU 上运行的 OpenShift Container Platform 计算节点上。DPU Operator 负责 ovn-kube
组件的生命周期管理,以及 DPU 上必要的主机网络初始化。
下表中描述了当前支持的 DPU 设备。
Vendor | 设备 | 固件 | 描述 |
---|---|---|---|
Intel | IPU E2100 | 版本 2.0.0.11126 或更高版本 | DPU 旨在从数据中心中的主机 CPU 中卸载网络、存储和安全任务,提高了效率和性能。有关部署完整的端到端解决方案的说明,请参阅红帽知识库解决方案 使用 Intel E2100 IPU、DPU Operator 和 F5 NGINX 在 OpenShift 上加速机密 AI。 |
2.11.2. 安装 DPU Operator 复制链接链接已复制到粘贴板!
您可以在集群中安装数据处理单元 (DPU) Operator 来管理 DPU 设备和网络附加。在主机集群和所有 DPU 集群上安装 DPU Operator。DPU Operator 管理所有支持的 DPU 的生命周期。
作为集群管理员,您可以使用 OpenShift Container Platform CLI 或 Web 控制台安装 DPU Operator。
您需要在主机集群以及每个 DPU 集群中安装 DPU Operator。
2.11.2.1. 使用 CLI 安装 DPU Operator 复制链接链接已复制到粘贴板!
作为集群管理员,您可以使用 CLI 安装 DPU Operator。
CLI 必须在 DPU 集群上安装 DPU Operator。
先决条件
-
安装 OpenShift CLI(
oc
)。 -
具有
cluster-admin
特权的帐户。
流程
输入以下命令来创建
openshift-dpu-operator
命名空间:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输入以下命令来创建
OperatorGroup
自定义资源 (CR):Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输入以下命令为 DPU Operator 创建
Subscription
CR:Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
输入以下命令检查是否安装了 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 输出示例
Name Phase dpu-operator.v.4.19-202503130333 Succeeded
Name Phase dpu-operator.v.4.19-202503130333 Succeeded
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 进入
openshift-dpu-operator
项目:oc project openshift-dpu-operator
$ oc project openshift-dpu-operator
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输入以下命令验证 DPU Operator 是否正在运行:
oc get pods -n openshift-dpu-operator
$ oc get pods -n openshift-dpu-operator
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
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
2.11.2.2. 使用 Web 控制台安装 DPU Operator 复制链接链接已复制到粘贴板!
作为集群管理员,您可以使用 Web 控制台安装 DPU Operator。
先决条件
-
安装 OpenShift CLI(
oc
)。 -
具有
cluster-admin
特权的帐户。
流程
-
在 OpenShift Container Platform Web 控制台中,点击 Operators
OperatorHub。 - 从可用的 Operator 列表中选择 DPU Operator,然后点 Install。
在 Install Operator 页中,在 Installed Namespace 下,默认预先选择 Operator recommended Namespace 选项。不需要操作。
- 点 Install。
验证
-
导航到 Operators
Installed Operators 页面。 确保 openshift-dpu-operator 项目中列出的 DPU Operator 的 Status 为 InstallSucceeded。
注意在安装过程中,Operator 可能会显示 Failed 状态。如果安装过程结束后有 InstallSucceeded 信息,您可以忽略这个 Failed 信息。
故障排除
- 检查 Operator Subscriptions 和 Install Plans 选项卡中的 Status 项中是否有任何错误。
-
进入到 Workloads
Pods 页,在 openshift-dpu-operator
项目中检查 pod 的日志。 检查 YAML 文件的命名空间。如果缺少注解,您可以使用以下命令将注解
workload.openshift.io/allowed=management
添加到 Operator 命名空间中: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 注意对于单节点 OpenShift 集群,命名空间需要注解
workload.openshift.io/allowed=management
。
2.11.2.3. 后续步骤 复制链接链接已复制到粘贴板!
2.11.3. 配置 DPU Operator 复制链接链接已复制到粘贴板!
您可以配置 DPU Operator 来管理集群中的 DPU 设备和网络附加。
2.11.3.1. 配置 DPU Operator 复制链接链接已复制到粘贴板!
要配置 DPU Operator,请按照以下步骤操作:
流程
-
在主机集群和每个 DPU 集群上创建一个
DpuOperatorConfig
自定义资源(CR)。每个集群中的 DPU Operator 在创建此 CR 后会被激活。 使用以下 YAML 创建名为
dpu-operator-host-config.yaml
的文件:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令来创建资源:
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 您必须标记附加 DPU 的所有节点,或者作为 DPU 正常工作。在主机集群中,这意味着标记所有计算节点,假设每个节点都附加了带有
dpu=true
的 DPU。在 DPU 上,每个 MicroShift 集群都由一个节点组成,将集群中的每个节点标记为dpu=true
。您可以运行以下命令来应用此标签:oc label node <node-name> dpu=true
$ oc label node <node-name> dpu=true
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Example
oc label node worker-1 dpu=true
$ oc label node worker-1 dpu=true
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.11.4. 在 DPU 上运行工作负载 复制链接链接已复制到粘贴板!
在 DPU 上运行工作负载,可以将特定的基础架构任务卸载,如网络、安全性和存储到专用处理单元。这提高了性能,在基础架构和应用程序工作负载之间强制实施更强大的安全边界,并释放主机 CPU 资源。
2.11.4.1. 在 DPU 上运行工作负载 复制链接链接已复制到粘贴板!
按照以下步骤在 DPU 上部署工作负载。
先决条件
-
已安装 OpenShift CLI (
oc
)。 -
具有
cluster-admin
权限的帐户。 - 已安装 DPU Operator。
流程
使用以下 YAML 在主机端创建示例工作负载,将文件保存为
workload-host.yaml
:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 部署工作负载的节点的名称。
运行以下命令来创建工作负载:
oc apply -f workload-host.yaml
$ oc apply -f workload-host.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.11.4.2. 在 DPU 上创建服务功能链 复制链接链接已复制到粘贴板!
网络服务链(也称为服务功能链(SFC))是一种使用软件定义型网络(SDN)功能创建连接的网络服务链的功能,如防火墙、网络地址转换(NAT)和入侵保护。
按照此流程,在 DPU 上的服务功能链中创建网络功能 my-network-function
。
先决条件
-
安装 OpenShift CLI(
oc
)。 -
具有
cluster-admin
特权的帐户。 - 安装 DPU Operator。
2.11.5. 卸载 DPU Operator 复制链接链接已复制到粘贴板!
要卸载 DPU Operator,您必须首先删除任何正在运行的 DPU 工作负载。按照以下步骤卸载 DPU Operator。
2.11.5.1. 卸载 DPU Operator 复制链接链接已复制到粘贴板!
作为集群管理员,您可以卸载 DPU Operator。
先决条件
-
可以使用具有
cluster-admin
权限的账户访问 OpenShift Container Platform 集群。 - 已安装 DPU Operator。
流程
运行以下命令删除创建的
DpuOperatorConfig
CRoc delete DpuOperatorConfig dpu-operator-config
$ oc delete DpuOperatorConfig dpu-operator-config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令,删除用于安装 DPU Operator 的订阅:
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 运行以下命令删除创建的
OperatorGroup
资源: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 按如下方式卸载 DPU Operator:
运行以下命令检查已安装的 Operator:
oc get csv -n openshift-dpu-operator
$ oc get csv -n openshift-dpu-operator
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
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 运行以下命令来删除 DPU Operator:
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
运行以下命令,删除为 DPU Operator 创建的命名空间:
oc delete namespace openshift-dpu-operator
$ oc delete namespace openshift-dpu-operator
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
运行以下命令验证 DPU Operator 是否已卸载:
oc get csv -n openshift-dpu-operator
$ oc get csv -n openshift-dpu-operator
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
No resources found in openshift-dpu-operator namespace.
No resources found in openshift-dpu-operator namespace.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow