Agent Skills
返回列表
🔒

Dynamo 互联检查

IT 运维与安全 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @org-02qudk26/dynamo-interconnect-check。

技能介绍

问题从哪来

分离式(disagg)Dynamo 部署里,prefill 与 decode 往往跑在不同 worker 上,KV 要靠 NIXL/UCX 经 RDMA 或 NVLink 传到对端。端点冒烟可能一切正常,但互联若不可用,传输会悄悄回退到慢路径甚至失效——你在跑基准或汇报吞吐之前,需要先确认「传输层真的通」。

本技能是只读的:不修改集群,不打印密钥。

技能如何工作

通过 scripts/check_interconnect.py 分三层检查:

  1. env:读取 recipe 目录,报告已设置的 NIXL/UCX/NCCL 变量,并标记 disagg 关键项(如 UCX_TLS、UCX_NET_DEVICES、NCCL_IB_HCA)是否缺失——缺失仅为警告,可能已烘焙进镜像。
  2. node:在 GPU 节点或 worker pod 内探查 InfiniBand 链路、GPUDirect RDMA(nvidia_peermem)、GDRCopy、NVLink 拓扑;缺工具则记为 skipped,不算失败。
  3. nixl:评估 pod 是否具备 NIXL 测试工具,并给出成对 prefill↔decode 传输测试的下一步;完整跨 pod 测试需要两个已调度的 GPU pod。

输出契约为每项 ok / warn / fail / skipped 加一行细节,并汇总 disagg 传输是否可信、未验证时应先修什么。

适用边界

  • 单节点 agg 不演练传输;用于 disagg / 多节点 recipe 部署后、或 agg 正常而 disagg 慢/挂起时。
  • 不替代完整成对 NIXL 传输(需双 pod + 镜像内测试工具);skipped 因缺 ibstat、nvidia-smi 等工具时结论无定论。
  • env 检查只看 recipe 文本,运行时由 initContainer/operator 注入的变量检测不到——此时应在 pod 内跑 node 核对实际环境。
  • Pod 已崩溃或无法调度时,先用 dynamo-troubleshoot 再谈互联。

使用场景

  • 用 dynamo-recipe-runner 上线 disagg 或多节点 recipe 后,在跑吞吐基准前先确认 NIXL/UCX 传输路径可用
  • disagg 延迟或吞吐数字要对外汇报前,用只读检查排除 RDMA/NVLink 回退到慢路径的情况
  • agg 端点正常但 prefill↔decode 跨 worker 传输慢、挂起或报错,需区分是互联结构还是模型/recipe 问题
  • 部署前扫描 recipes 目录,核对 UCX_TLS、NCCL_IB_HCA 等 disagg 关键环境变量是否在 recipe 中显式配置

适合人员

  • 在 GPU + InfiniBand 集群上维护 Dynamo disagg 部署、需 kubectl exec 进 worker pod 的 K8s 平台工程师
  • 负责 NIXL/UCX 传输基准与 NVCARPS 类评估、要在数字可信前提下写性能报告的 ML 基础设施同学
  • 编写或评审 Dynamo recipe 的工程师,想在上线路径前对照 interconnect-env-vars 清单检查传输相关变量
  • disagg 故障排查中已排除模型问题、持有 recipe 只读权限并能在节点或 pod 内跑 ibstat/nvidia-smi 的 SRE