基于Kubernetes快速构建AI/ML平台
阿里云ACK云原生AI套件提供了一系列组件化的功能和服务,帮助您构建自己的AI平台,加速AI工作负载,以及简化MLOps。
资源弹性
有效提升GPU、CPU利用率、优化异构资源弹性
高效调度
高效调度AI和大数据任务,端到端支持AI生产流程
数据加速
改善数据访问性能,打通异构数据源链路
可观测性
提供丰富的任务、用户和资源可观测性
灵活扩展
组件化、可扩展的架构,便于您定制云原生AI平台
标准K8s
基于标准K8s,兼容公共云、专有云、混合云以及边缘环境
产品特性
异构资源效率优化
可共享调度GPU和隔离显存,支持丰富的GPU设备分配策略以及GPU资源全方位监控。
数据访问性能提升
计算与存储分离。Fluid为AI与大数据云原生应用提供一层高效便捷的数据抽象,加速对数据的访问,并增强了数据的安全隔离,打破不同存储的差异性带来的数据孤岛效应。
AI任务调度
针对AI计算类任务的特性,提供了支持Gang Scheduling、Capacity Scheduling、Binpack等任务调度策略,提升集群的资源利用率。
异构资源弹性伸缩
通过智能的削峰填谷,避免不必要的云上资源消费,并支持弹性模型训练和模型推理。
集群任务、用户和资源的可观测性
提供任务、用户配额和集群资源的监控大盘,能有效帮助您合理评估投入产出。
应用场景
能够提供
-
结合项目组划分资源
可对项目成员进行小组划分,且每个小组彼此隔离。可基于小组作为分配、隔离资源和权限的基本单元。
-
用户之间的隔离与共享
可以将整个集群的资源根据具体需求划分给每个组,及给组内成员分配不同权限,比如:用户对于作业的可见、可操作权限,用户的作业对特定数据的读写权限。
-
弹性配额
通过引入Capacity调度的弹性配额组,在确保用户资源分配的基础上通过资源共享的方式来提升集群的整体资源利用率。
能够提供
-
数据集抽象原生支持
将数据密集型应用所需基础支撑能力功能化,实现数据高效访问并降低多维管理成本。
-
云上数据预热与加速
Fluid通过使用分布式缓存引擎(Alluxio inside)为云上应用提供数据预热与加速,同时可以保障缓存数据的可观测性,可迁移性和自动化水平扩展。
-
数据应用协同编排
云上调度应用和数据时,能够同时考虑两者特性与位置,实现协同编排,提升性能。
-
多命名空间管理支持
一次性统一访问不同来源的底层数据(对象存储,HDFS和Ceph等存储),适用于混合云场景。
-
异构数据源管理
支持一次性、统一访问不同来源的底层数据(如对象存储,HDFS和Ceph等存储),适用于混合云场景。
能够提供
-
共享GPU调度
通过GPU共享调度框架实现多个容器运行在同一个GPU设备上。
-
拓扑感知调度
GPU的调度过程中,选择最优的GPU组合,达到最优的训练速度。
-
Binpack调度
作业优先集中分配在某个节点,当节点资源不足时,依次在下一节点集中分配,避免跨机数据传输。防止资源碎片。
-
Gang任务调度
作业的所有子任务都能满足资源需求才整体分配,否则不分配任务资源,避免由于资源死锁,导致大作业挤占小作业。
能够提供
-
Arena AI工具集
提供命令行和go/java/python SDK,屏蔽所有底层资源、环境管理、任务调度、GPU分配和监控的复杂性。
-
兼容多种深度学习框架,包括Tensorflow, Pytorch,Caffe, MPI, Hovorod等,覆盖训练数据集管理、AI任务管理、模型开发、分布式训练、评估、推理上线等MLOps全流程。
-
研发控制台,提供按需分配的算法开发环境,涵盖Notebook管理、AI任务管理、模型管理及发布等全生命周期管理。
能够提供
-
GPU资源利用实时大盘
多维度、实时掌控集群资源利用情况。
-
管理加速数据集
可以一键加速集群已有数据集,提高访问效率。
-
用户及用户组管理
可根据项目创建用户、用户组,并更细粒度的控制用户权限和配额。
-
弹性配额管理
结合Capacity调度,可实现资源在不同用户组之间的动态借还。