7.1
深览指数
科技Bestblogs·腾讯技术工程··AI 生成

腾讯 Ray 团队实践:K8s + Ray 如何支撑超大规模 AI Workload

文章详解了腾讯在万卡级集群中,通过 KubeRay 联邦架构实现 K8s 与 Ray 协同调度 AI 工作负载的实践。核心贡献在于展示了跨集群 CPU/GPU 异构资源统一调度、弹性伸缩与自动化容灾的具体方案,对比了 Ray 与 Spark/Flink 的调度差异。适合关注 AI 基础设施、分布式计算或大规模训练的工程师阅读。原文 ↗

核心观点
  • K8s 与 Ray 通过 KubeRay Operator 形成自底向上、由粗到细的协同调度链路,是解决超大规模 AI 工作负载资源管理难题的关键架构。
  • 腾讯基于 KubeRay 联邦架构,实现了在多个 K8s 集群间对 CPU/GPU 异构资源的统一调度与弹性伸缩,能支撑万卡规模。
  1. 01Ray 调度核心对象是进程级计算单元,通过 @ray.remote 声明角色资源需求,支持异构资源调度、动态分配与高容错,由 Single-Controller 统一编排。
  2. 02K8s 负责将 Pod 调度到物理节点,Ray Scheduler 再将 Worker 进程调度到 Pod 内的资源,实现资源层层细化分配。
  3. 03腾讯联邦架构中,多个 K8s 集群部署 KubeRay Workload,仅一个集群负责 Global Control Store (GCS),其余集群的 Worker 节点加入同一 Ray 集群。
  4. 04腾讯构建了三级自动调优机制:动态扩缩容、Pod 重调度、任务重调度,并结合故障感知-标记-处理闭环,实现自动化容灾。
  5. 05文章对比了 Ray 与 Spark、Flink、PyTorch 的调度能力,指出 Ray 在进程级调度、动态灵活性及对 AI 训练/推理负载的适应性上具有优势。
反方 / 局限
  • 文章提到 Ray 的联邦架构增加了运维复杂度,但未深入讨论其在大规模部署时可能遇到的 GCS 单点瓶颈、跨集群网络延迟对调度性能的影响,以及与其他编排框架(如 Volcano、YuniKorn)的竞争关系。
3 分钟 · 5 卡片 · 12 资料
读原文 →

前置背景

技术原理

应用场景

平行视角

延伸追问