云骁智算平台默认为您的扩展资源组安装以下组件。
Gang
"Gang 调度"(有时也称为批处理调度或强协调调度),是云原生批处理调度器中的核心功能。Gang 调度的核心思想是确保作业中的所有任务(或一组关键任务)要么同时被调度,要么都不被调度,从而有效地管理和优化资源分配,避免资源浪费。
Gang 调度的作用和效果主要体现在以下几个方面:
- 确保作业完整性:在人工智能(AI)或大数据处理场景中,很多作业需要多个任务共同协作完成。Gang 调度确保这些协作任务要么一起启动,要么都不启动。这种机制避免了部分任务因为资源不足而无法启动,导致整个作业半途而废的情况。
- 资源利用率优化:通过 Gang 调度,Volcano 能够更有效地管理集群资源。如果集群资源不足以满足某个作业的所有任务,那么这些任务就会保持等待状态,直到有足够资源可以一起启动。这种策略减少了资源的碎片化,提高了资源的整体利用效率
- 简化作业管理:用户在提交作业时,不需要担心单个任务的调度问题。Volcano 的 Gang 调度机制自动处理任务间的依赖和协调问题,简化了作业的管理和监控。
Fluid
什么是Fluid
Fluid是一个开源的Kubernetes原生的分布式数据集编排和加速引擎,主要服务于云原生场景下的数据密集型应用,例如大数据应用、AI应用等。Fluid现在是Cloud Native Computing Foundation(CNCF) 开源基金会旗下的一个沙箱项目。Fluid实现了Dataset和Runtime在Kubernetes的抽象,对应数据源和加速引擎,极大的简化了数据加速的集群搭建和删除、挂载、扩缩容、调度等,主要架构如下:
核心功能
- 数据集抽象原生支持
将数据密集型应用所需基础支撑能力功能化,实现数据高效访问并降低多维管理成本。 - 可扩展的数据引擎插件
提供统一的访问接口,方便接入第三方存储,通过不同的Runtime实现数据操作。 - 自动化的数据操作
提供多种操作模式,与自动化运维体系相结合 - 数据弹性与调度
将数据缓存技术和弹性扩缩容、数据亲和性调度能力相结合,提高数据访问性能 - 运行时平台无关
支持原生、边缘、Serverless Kubernetes集群、Kubernetes多集群等多样化环境,适用于混合云场景。
重要概念
Dataset: 数据集是逻辑上相关的一组数据的集合,会被运算引擎使用,比如大数据的Spark,AI场景的TensorFlow。而这些数据智能的应用会创造工业界的核心价值。Dataset的管理实际上也有多个维度,比如安全性,版本管理和数据加速。我们希望从数据加速出发,对于数据集的管理提供支持。
Runtime: 实现数据集安全性,版本管理和数据加速等能力的执行引擎,定义了一系列生命周期的接口。可以通过实现这些接口,支持数据集的管理和加速。
AlluxioRuntime: Alluxio是一个开源的分布式存储系统,一般作为底层分布式文件系统和上层分布式计算框架之间的一个中间件,对应的AlluxioRuntime是支撑Dataset数据管理和缓存的执行引擎实现,支持PVC,Ceph,CPFS加速,有效支持混合云场景。
先决条件
- Kubernetes version > 1.16, 支持CSI
- Golang 1.18+
- Helm 3
容器存储CSI介绍
CSI是容器存储接口(Container Storage Interface)的简写, 旨在能为容器编排引擎CO(ContainerOrchestrator System)和存储供应商SP(Storage Provider)之间建立一套标准的存储调用接口,从而定义行业标准,使存储供应商(SP)能够开发一个符合CSI标准的插件并使其可以在多个容器编排(CO)系统中工作。也就是说,CSI是一个接口,它约定了一些标准,让所有符合CSI接口的插件在多个容器编排中都可以工作。
CSI的主要功能
CSI接口提供的主要功能如下(一些功能是可选择型实现):
- 卷的动态创建/删除
- 从节点附加/分离卷
- 从节点挂载/卸载卷
- 快照的创建/删除(快照的来源是卷)
- 从快照创建新卷(不包括恢复快照即原始卷中的数据被擦除并替换为快照中的数据)
Kubernetes CSI插件
Kubernetes 作为容器编排引擎之一,CSI是从Kubernetes v1.9版本引入的容器存储接口,并于v1.13版本正式GA。Kubernetes 实现了核心代码中的CSI插件逻辑, 以及各种Sidecar插件把CSI驱动程序和Kubernetes 的核心代码实现了解耦合, 从而方便存储厂商更加方便的开发CSI驱动程序。
天翼云CSI插件基于CSI接口标准,提供符合Kubernetes 语义的云硬盘、弹性文件、对象存储、并行文件系统存储能力,使用户在Kubernetes 上可以方便的使用以上存储。