SuperAPI AI 工具集

doca-container-deployment

智能体与模型

查看项目

更新于 10-15 12:07

技能介绍

用途

本技能面向在 NVIDIA BlueField 上进行 DOCA 服务容器实操部署的外部运维人员和平台团队。它描述的是跨服务的 DOCA 容器部署运行时——所有 BlueField 上的 DOCA 服务启动时共用的模式:BlueField Arm 上的独立 kubelet 代理监视一个静态 Pod 清单目录;运维人员将 YAML Pod 规格放入该目录;kubelet 调度该 Pod 并运行容器。

如果开发者尚未决定使用容器还是裸金属路径(例如“我刚拿到 BlueField,接下来怎么做”“我的代码已构建,如何运行”“如何部署”),应先路由至 doca-setup 的识别步骤,由该处判断系统形态并决定是进入本技能还是裸金属路径兄弟技能 doca-bare-metal-deployment。

主要能力

本技能是一个轻量加载器,实质内容位于两个配套文件:

  • CAPABILITIES.md——跨服务的 DOCA 容器部署运行时契约:BlueField 前置条件(DOCA 安装、容器运行时、BFB 版本、服务模拟设备时的每服务固件槽、到 NGC 的镜像拉取可达性、主机操作系统权限);可观测性表面(kubelet 状态、容器日志、服务侧存活信号,三层各有归属);跨服务错误分类(从 Pod 规格语法到 Pod 调度、镜像拉取、运行时、卷挂载、网络策略、版本、跨服务主机,共八层);安全策略(先冒烟后批量;失败的 Pod 属于高风险,须先清除根因再让 kubelet 重启循环;禁止凭记忆编造 Pod 规格字段名、kubelet 标志或镜像标签)。
  • TASKS.md——覆盖在范围内部署动作的分步工作流:configure、build、modify、run、test、debug,并包含一个延迟任务动作块,将每服务配置问题、主机固件槽工作、配对工作负载工作和完整 Kubernetes 集群工作路由至其归属技能。

各服务的覆盖层由 skills/services/ 下的每服务技能提供,支持 Argus、DMS、Firefly 和 UROM service。Flow-Inspector 和 OS-Inspector 被策略排除在此公开捆绑包之外,需通过 doca-public-knowledge-map 路由。已产品化的 NVIDIA 外部服务(BlueMan、HBN、SNAP、Virtio-net、产品化的 DOCA Telemetry Service 等)也不在范围内,同样通过该地图路由。若 BlueField 目标上尚未安装 DOCA,则先路由至 doca-setup。

使用方式

  1. 先阅读 SKILL.md,确认问题属于跨服务部署运行时,而非每服务配置模式问题。
  2. 若涉及 kubelet 独立模式运行时形态、静态 Pod 清单目录规则、主机操作系统 / BFB / 固件槽 / 镜像拉取前置条件、八层错误分类、可观测性表面以及安全与“先冒烟后批量”策略,请参阅 CAPABILITIES.md。
  3. 若需要分步工作流(configure、build、modify、run、test、debug),请参阅 TASKS.md。
  4. 每服务覆盖请遵循 skills/services/ 下对应服务技能,在本技能之上叠加。

技能假设 BlueField 目标满足以下条件:Arm 侧已安装 DOCA;BlueField 操作系统镜像已按公开 DOCA Container Deployment Guide 提供 kubelet 独立版及容器运行时;运维人员具备该指南所列的主机操作系统权限。本技能不涵盖 DOCA 自身的安装(该路径通过 doca-setup),也不重新记录每服务配置模式(那是各 DOCA 服务公开指南的职责,经 doca-public-knowledge-map 到达)。

适用场景

在用户对 BlueField 目标上任何 DOCA 服务进行实操容器部署,或提出不特定于某一服务配置模式的跨服务部署问题时,加载本技能。具体包括:

  • 将 YAML Pod 规格放入 BlueField Arm 上文档所载的静态 Pod 清单目录,使 kubelet 独立版调度该 Pod 并运行 DOCA 服务容器。
  • 检查任意受支持的捆绑内 DOCA 服务容器(Argus、DMS、Firefly 或 UROM service)的 Pod 状态、容器日志和文档所载存活信号。
  • 在 BlueField 承受负载之前走通“先冒烟后批量”循环(Pod 达到 Running;ENTRYPOINT 日志干净;服务应答简单存活探测)。
  • 诊断行为异常的部署:Pod 规格 YAML 已在目录中但 Pod 从不调度;Pod 已调度但镜像拉取失败;镜像已拉取但容器 ENTRYPOINT 立即退出;容器运行但内部服务从不应答;配置编辑后容器进入重启循环;Pod 规格指定的卷挂载在主机上缺失;网络策略或主机防火墙规则阻断服务。
  • 跨服务问题:“能否在同一 BlueField 上同时运行 DMS 和 Firefly”“如何列出当前运行的所有 DOCA 服务 Pod”“就地编辑 Pod 规格文件后文档所载的停止 / 重启语义是什么”。

限制

本技能不适用于:每服务配置模式问题(属于匹配的每服务技能);安装 DOCA 本身或准备 BlueField 环境(使用 doca-setup);库 API 问题(使用匹配的 libs/<library> 技能);通用 Kubernetes 集群操作(本技能仅覆盖 BlueField 上的 kubelet 独立模式,而非完整 Kubernetes 控制平面)。

本技能并非面向为 BlueField 容器运行时或 kubelet 本身做贡献的 NVIDIA 开发者,也不是通用 Kubernetes 教程。此处 kubelet 以独立模式运行在 BlueField 上——没有完整 Kubernetes 控制平面,也没有针对集群 API 服务器的 kubectl。BlueField 上多数容器部署问题的实质性答案来自公开的 DOCA Container Deployment Guide;本技能教导代理引用哪份指南、以何顺序浏览,以及如何将症状映射到某一层,而不重新发明 kubelet 标志、Pod 规格字段名或静态 Pod 路径字符串。

加载顺序

  1. 先读 SKILL.md 确认问题在范围内。
  2. 读 CAPABILITIES.md 获取运行时形态、目录规则、前置条件、八层错误分类、可观测性表面及安全策略。
  3. 读 TASKS.md 获取 configure、build、modify、run、test、debug 分步工作流。
  4. 每服务覆盖遵循 skills/services/ 下的对应技能。

示例问题及本技能有意不提供的内容详见 references/details.md;相关技能详见 references/details.md。