未来云原生世界的“领头羊”:容器批量计算项目 Volcano 1.0 版本发布
在刚刚结束的 CLOUD NATIVE+ OPEN SOURCE Virtual Summit China 2020 上,由华为云云原生团队主导的容器批量计算项目 Volcano 正式发布 1.0 版本,标志着 Volcano 项目已经开始走向成熟与稳定。
Volcano 项目介绍
Volcano 是基于 Kubernetes 的云原生批量计算引擎,基于华为云在 AI、大数据领域的深厚业务积累,补齐了 Kubernetes 在面向 AI、大数据、高性能计算等批量计算任务调度、编排等场景下的短板,向下支持鲲鹏、昇腾、X86 等多元算力,向上使能 TensorFlow、Spark、华为 MindSpore 等主流行业计算框架,让数据科学家和算法工程师充分享受到云原生技术所带来的高效计算与极致体验。

Volcano 架构示意图
随着 Kubernetes 作为 AI、大数据和高性能批量计算的下一代基础设施的趋势逐渐清晰,越来越多的企业对 Kubernetes 在深度学习、科学计算、高性能渲染等方面提出了更高的要求。
然而 Kubernetes 作为普适的容器化解决方案,仍与业务诉求存在一定差距,主要体现在:
K8s 的原生调度功能无法满足计算要求
K8s 作业管理能力无法满足 AI 训练的复杂诉求
数据管理方面,缺少计算侧数据缓存能力,数据位置感知等功能
资源管理方面缺少分时共享,利用率低
硬件异构能力弱
Volcano 的诞生正是基于这些痛点,在调度、作业管理、数据管理、资源管理四个方面进行了重点优化。
增强了任务调度能力,如公平的调度(fair-share)、组调度(gang-scheduling)
进一步优化了作业管理能力,如 multiple pod template 能力、更灵活的 error handling 机制
增加计算侧数据缓存,提升数据的传输与读取效率
引入多维度的综合评分机制,实现资源更高效的管理和分配
多元算力支持:支持 x86、鲲鹏和昇腾等算力

Volcano v1.0 新特性介绍
Volcano v1.0 的核心概念和关键特性,主要包含以下要点:
Queue、PodGroup、Volcano Job 等核心概念均已实现
支持 Binpack、Conformance、DRF、Gang、Preempt、Reclaim、Priority、Proportion 等多种调度策略
支持 Rest API、CLI 等多种交互方式
完成与 Spark、Argo、MPI、Flink、Mxnet、Paddlepaddle、Tensorflow、MindSpore 等主流高性能计算框架的无缝对接
支持 Job 的全生命周期管理和动态扩缩容
支持 GPU 异构与共享
完备的 golangCI-lint check、e2e 以建立增强代码质量和稳定性
除以上特性外,Volcano 始终保持与 Kubernetes 社区、Golang 最新版本保持一致。
Volcano 社区和生态建设进展
经过一年多的发展,Volcano 的社区和生态建设已经步入快车道。截至目前,社区和生态建设取得了以下成绩:
社区贡献者 80+
社区贡献参与组织 15+,包括华为、百度、腾讯、AWS、IBM、 Oracle 等
获得 Star 1100+,Fork 220+
代码库 7 个,Release 6 个
Issue 320+,PR 590+
已完成对 Spark、Argo、MPI、Flink、Mxnet、Paddlepaddle、Tensorflow、MindSpore、Cromwell 等 10+主流计算框架的支持
华为云 CCE(云容器引擎)、CCI(云容器实例)、ModelArts 等多个云服务已将 Volcano 集成为基础设施底座并商用,服务领域已涵盖 AI、大数据应用、基因计算、批处理等场景,并实现与华为鲲鹏、昇腾处理器深度融合,最快每秒 1000 个容器的调度发放,成为高性能、极致性价比的批量计算解决方案。
深入了解 Volcano
如果想更加深入了解 Volcano,可以参考以下资源:
Volcano 官网:
Github:
Volcano 简介:
https://github.com/volcano-sh/volcano
Volcano 设计:
https://github.com/volcano-sh/volcano/tree/master/docs/design
Volcano 路线图:
https://github.com/volcano-sh/volcano/blob/master/docs/community/roadmap.md
Volcano 社区交流微信群:
Volcano CN
未来可期
随着 Volcano v1.0 的发布,Volcano 社区建设与上下游生态的融合必将更加紧密,基于 Volcano 的商业应用也将极大地促进 AI、大数据、科学计算、渲染等领域充分享受到云计算带来的极大便利和极致体验,助力企业数字化转型进入新的高度。
展望未来,华为云也将在云原生领域持续耕耘,持续引领创新、繁荣生态,助力各行业走向快速智能发展之路。
版权声明: 本文为 InfoQ 作者【华为云开发者社区】的原创文章。
原文链接:【http://xie.infoq.cn/article/246d718ec10578c83c80660c7】。文章转载请联系作者。
评论