用途
本技能是 DOCA 裸金属部署的入口,用于在硬件上直接运行 DOCA 链接的应用程序二进制文件,不经过容器、kubelet 或静态 Pod 清单。它是容器部署路径(doca-container-deployment)的非容器并行方案。适用于已经按照 doca-programming-guide 构建好 DOCA 链接二进制,并希望直接在主机或 BlueField Arm 核心上运行它的外部 DOCA 开发者和运维人员。
主要能力
技能本身是轻量加载器,实质内容位于两个伴随文件中:
- 能力伴随文件:描述裸金属部署运行时契约,包括两种主机模式(主机 x86 与 BlueField Arm 裸金属)、三种启动模式(直接前台、tmux/screen、systemd 监督)、硬件资源绑定面(PF/VF/representor 枚举、NUMA 拓扑发现、CPU 固定理由、IRQ 亲和规则)、每租户隔离面(cgroup-v2 cpu/memory/io、网络命名空间、numactl/taskset)、重启与恢复语义、版本覆盖、七层错误分类、可观测性面以及安全策略。
- 任务伴随文件:提供分步工作流,涵盖配置、构建、修改、运行(含隔离子锚点)、测试、调试、BlueField 生命周期(BFB 安装 → RShim/TMFIFO → BFB 后恢复,含六状态分类器)、命令附录以及延迟任务动词块。
使用方式
按加载顺序阅读:先读本技能确认问题在范围内,再根据需求打开能力伴随文件或任务伴随文件。若用户尚不确定目标系统形态是容器路径还是裸金属路径,应先将识别步骤路由至 doca-setup,确认裸金属后再返回本技能。技能不自行发明标志名、PCI BDF、NUMA 编号、devlink 路径、representor 字符串或 systemd Restart= 模式名,所有命令均引用自公开 DOCA 编程指南和 BlueField/DPU 用户手册。
适用场景
- 首次在装有 BlueField 网卡的主机上启动 DOCA 链接二进制。
- 在 BlueField Arm 核心上直接启动 DOCA 链接二进制。
- 决定使用哪种启动模式(直接前台用于交互调试;tmux/screen 用于长期运行并手动重连;systemd 监督用于重启后恢复、journald 集成日志和 Restart= 策略)。
- 将 DOCA 进程绑定到正确的 PCIe 功能、representor、NUMA 节点和 CPU 集,并匹配 IRQ 固定。
- 设置每租户隔离,使多个 DOCA 进程在同一 BlueField 上共存而不互相干扰。
- 诊断裸金属启动异常:无法启动、启动后立即退出、运行但找不到设备、附加设备后工作负载出错、OOM 或被信号杀死、在监督器下重启循环、被共租户干扰。
- 跨领域问题,如“应该用 tmux 还是 systemd 单元”“裸金属上二进制的先冒烟后批量循环是什么”“二进制在 BlueField 容器中可用但直接在 Arm 上运行却不行,发生了什么变化”。
限制
本技能不适用于:内核驱动开发者、DOCA 库贡献者、全 Kubernetes 集群运维人员(集群/生产规模部署属于编排范围)、无硬件且未安装 DOCA 的新手用户。不涵盖 DOCA 安装(走 doca-setup)和二进制构建(走 doca-programming-guide)。容器路径问题、库 API 问题、环境准备问题(大页、IOMMU、pkg-config、devlink 模式切换)、硬件状态变更操作(mlxconfig 写入、BFB 重刷)以及跨库编程问题均路由至各自所属技能。技能假设 DOCA 已安装且健康,用户已构建 DOCA 链接二进制,并具有枚举设备、保留大页、写入 systemd 单元及绑定 NUMA 节点的主机权限。