Volcano社区现已正式发布 v1.12 版本 ,新版本聚焦于AI与大数据等前沿场景的核心需求,带来了一系列关键特性与体验优化。
“我们相信,v1.12版本的这些更新将进一步提升任务调度的智能化水平、资源利用效率和系统的整体性能,帮助用户更好地应对AI和大数据时代的挑战。”
亮点一览
- 网络拓扑感知调度 (Alpha):优化大规模AI训练与推理任务部署,通过感知网络拓扑减少跨交换机通信,提升运行效率。
- GPU虚拟化方案增强:在原有vCUDA方案基础上,新增对NVIDIA GPU动态MIG切分的支持,为用户提供软件与硬件两种虚拟化选择,实现更灵活、高效的GPU资源共享。
- DRA支持:增强异构资源管理的灵活性与能力。
- Volcano Global支持队列容量管理:在多集群环境下,支持对租户队列的资源配额(capability)进行统一限制和管理。
- 安全性全面增强:从API访问控制到容器运行时权限,实施多维度安全加固,提升系统稳健性。
- 大规模场景性能优化:通过减少不必要的Webhook调用等手段,有效提升高并发任务处理效率。
- 增强通用工作负载的Gang调度控制:现已支持通过Annotation为Deployment、StatefulSet等通用工作负载自定义Gang调度所需的最小成员数(minAvailable),提供了更精细的Gang Scheduling调度策略。
- Job Flow功能增强:提升了内置工作流编排引擎的健壮性与可观测性。
- 以及更多稳定性与易用性改进。
在接下来的版本迭代中,项目团队计划重点投入以下方向:
-
深化网络拓扑感知调度能力:在v1.12 Alpha版本的基础上,将持续演进网络拓扑感知能力。重点包括提供对RoCE网络的自动发现支持、节点标签的智能识别与利用,并向更细粒度的任务级(Task-level)拓扑感知调度迈进。同时,也将积极探索和实现更多高级调度特性,以应对复杂AI训练等场景的极致性能需求。
-
引入高级资源管理机制:重点开发和完善作业重调度(Rescheduling)与资源预留(Resource Reservation)功能。这将有助于更灵活地应对集群动态负载变化,保障关键任务的资源确定性,并进一步提升整体集群的资源利用效率。
-
增强队列调度灵活性:提供队列级别的调度策略(Queue-level Scheduling Policy)精细化配置能力。用户将能根据不同业务队列的特性、优先级和SLA需求,更灵活地定制其调度行为和资源分配策略。
-
深化生态协同与集成:将积极推进与Kubernetes上游社区及其他云原生项目的协作。例如,推动LWS(Leader Worker Set)与Volcano的集成,以便更好地为分布式应用提供Gang Scheduling能力。
-
拓展异构硬件支持与合作:加强与硬件生态伙伴的合作,如昇腾(Ascend)的Device Plugin和DRA Driver的适配与优化,以及与主流GPU厂商在DRA Driver上的协作,确保Volcano能高效、稳定地调度和管理各类前沿异构加速器资源。
-
JobFlow工作流能力提升:持续优化Volcano内置的轻量级工作流引擎JobFlow。计划增强其在复杂作业依赖管理、状态监控、错误处理及用户自定义扩展等方面的能力,为用户提供更强大、更易用的工作流编排解决方案。
-
引入Volcano调度模拟器,提升调度透明度与可测试性:为提升调度过程的透明度并简化测试验证,Volcano计划引入调度模拟器。这一工具将允许用户在轻量级环境中,通过灵活配置模拟集群状态(节点、Pod、队列配置等),精准复现Volcano核心调度流程——从队列选择、节点过滤与打分到最终绑定。通过输出详尽的调度日志及可选的性能分析,模拟器将极大地便利开发者测试新特性,帮助用户深入理解和验证Volcano在不同场景下的调度行为,并高效评估各类调度策略的实际影响。