kubernetes

一文理解Volcano的架构设计

2024-10-08  本文已影响0人  sknfie

概述

Volcano是一个基于Kubernetes的云原生批量计算平台,也是CNCF的首个批量计算项目。
Volcano 主要用于AI和大数据等诸多高性能计算场景,对主流通用计算框架均有很好的支持。它提供如下能力:

Volcano架构

1、Volcano全景

Volcano是基于Kubernetes的高性能批量计算平台,目前支持几乎所有的主流计算框架,包括TensorFlow、Kubeflow、MPI、PyTorch、飞浆、Spark等。
Volcano支持的部分计算框架遇到的问题:

2、Volcano整体架构

Volcano整体架构

Volcano的系统架构
Volcano由scheduler、controllermanager、admission和vcctl组成:

3、Volcano工作流程

从零开始运行Volcano作业:

Volcano核心概念及功能

1、Volcano核心概念

2、作业管理插件

4、核心调度算法

Volcano 代码目录结构

安装部署

1、Volcano Install

Volcano安装部署有多种方式:若已存在K8S集群,建议通过 Helm方式安装部署,该方式支持自定义安装配置;开发者建议通过Development Yaml方式部署。
对于开发者,Volcano已内置一键式安装部署脚本,路径为 volcano. sh/volcano/hack/local-up-volcano. sh。运行该脚本时,默认会使用kind创建 Docker in Docker的模拟集群,并安装部署Volcano。

2、Volcano 组件

正确安装部署后,将生成4个组件,分别为:Volcano-admission、Volcano-admission-init、Volcano-controllers、 Volcano-scheduler ,其中admission-init以作业的方式生成证书。

上一篇 下一篇

猜你喜欢

热点阅读