以下为你介绍华为开源Volcano项目:Kubernetes原生批处理系统,高性能任务调度引擎。
相关介绍 Volcano是基于Kubernetes的批处理系统,源自于华为云AI容器,Volcano方便AI、大数据、基因、渲染等诸多行业通用计算框架接入,提供高性能任务调度引擎,高性能异构芯片管理,高性能任务运行管理等能力。
整体架构,如下图所示:
知识扩展:Kubernetes架构详细解说。 Volcano提供一整套目前K8S在批量和弹性工作负载处理中缺失的机制,包括: 1、机器学习/深度学习。 2、生物信息学/基因组学。 3、其他“大数据”应用。 这些类型的应用程序通常运行在Volcano集成的Tensorflow、Spark、PyTorch、MPI等通用域框架上。 Volcano为Kubernetes添加的机制和功能的一些例子: 1、作业管理的扩展和改进,如: Multi-pod作业。 生命周期管理扩展,包括挂起、恢复和重启。 提升错误处理。 作业的索引。 任务依赖。 2、调度扩展 联合调度。 公平调度。 队列调度。 抢先和收回。 预订和回填。 基于拓扑逻辑的调度。 3、运行时扩展 支持Singularity等专用容器运行时,具有GPU加速器扩展和增强的安全功能。 4、其他 数据局部感知和智能调度。 优化数据吞吐量,往返延迟等。 Volcano建立在使用多个系统和平台大规模运行各种高性能工作负载的十五年经验之上,并结合了开源社区的最佳创意和实践。
相关链接
快速入门指南 部署Volcano的最简单方法是使用Helm图表,可以通过克隆代码以及添加helm repo来部署Volcano。 1、使用Volcano Helm Repo 使用以下命令添加helm repo: helm repo add volcano https://volcano-sh.github.io/charts 使用以下命令安装Volcano: helm install volcano/volcano --namespace <namespace> --name <specified-name> 例如: helm install volcano/volcano --namespace volcano-trial --name volcano-trial 2、克隆代码 1]、先决条件 首先,将repo克隆到本地路径: # mkdir -p $GOPATH/src/volcano.sh/ # cd $GOPATH/src/volcano.sh/ # git clone --recursive https://github.com/volcano-sh/volcano.git 2]、Volcano Image DockerHub上提供了官方images,但可以使用以下命令在本地构建它们: cd $GOPATH/src/volcano.sh/volcano make images ## Verify your images # docker images
注意:需要确保在kubernetes集群中正确加载images,例如,如果使用的是类型集群,请尝试为每个images命令kind load docker-image <image-name>:<tag>。 3]、Helm charts 其次,安装helm图表: helm install installer/helm/chart/volcano --namespace <namespace> --name <specified-name> 例如: helm install installer/helm/chart/volcano --namespace volcano-trial --name volcano-trial 要验证安装,请运行以下命令: #1. Verify the Running Pods # kubectl get pods --namespace <namespace> #2. Verify the Services # kubectl get services --namespace <namespace>
相关主题 |