阿里云容器服务在AI智算场景的创新与实践

本文涉及的产品
资源编排,不限时长
无影云电脑企业版,4核8GB 120小时 1个月
无影云电脑个人版,1个月黄金款+200核时
简介: 本文源自张凯在2024云栖大会的演讲,介绍了阿里云容器服务在AI智算领域的创新与实践。从2018年推出首个开源GPU容器共享调度方案至今,阿里云容器服务不断推进云原生AI的发展,包括增强GPU可观测性、实现多集群跨地域统一调度、优化大模型推理引擎部署、提供灵活的弹性伸缩策略等,旨在为客户提供高效、低成本的云原生AI解决方案。

本文整理自张凯在2024云栖大会的演讲


引言


2018年北美西雅图KubeCon上,阿里云容器服务团队为Kubernetes社区分享了业界第一套开源的GPU容器共享调度方案。从那以后,容器服务和GPU集群调度、深度学习、AI训练推理、大模型,这些热点技术走的越来越近。


2021年,容器服务开始在CNCF社区推广云原生AI的概念和参考架构,参与建设Kubeflow云原生机器学习开源社区,推动Kubernetes调度器框架支持batch任务调度,创建Kube-queue任务队列,和Fluid数据集编排加速等开源项目。


2023年,在CNCF社区发表Cloud  Native  AI白皮书之前,容器服务ACK云原生AI套件产品已商业化上线。同年云栖大会容器场,我们分享了容器产品在云原生AI领域的关键技术。通过支持PAI灵骏产品和客户的AIGC/LLM应用,容器进入到AI智算和大模型领域。


2024年云栖大会,我们总结过往支持AI智算基础底座的实践经验、发现与思考,给出《容器服务在AI智算场景的创新与实践》的演讲。不仅希望将所做所想与客户和社区分享,也期待引出更多云原生AI领域的交流和共建。



TL;DR




阿里云容器服务,聚焦智算和大模型场景需求,在云原生AI系统分层架构中,提供若干优化,以增强Kubernetes支持AI负载的稳定性、弹性、效率和开放性。主要工作包括:


1. 增强GPU的可观测性,实时Profiling和故障自愈能力;


2. AI任务在多集群、跨地域GPU资源池上统一调度,缓解GPU资源紧缺问题;


3. 优化vLLM,Kserve等开源大模型推理引擎在容器部署和管理实践;


4. 支持灵活的弹性伸缩策略,降低大模型推理冷启动延时,优化AI推理服务的性能和成本;


5.   集成Ray,Slurm等更多分布式计算和任务调度系统,优秀的LLM应用架构方案,比如Dify,Flowise,FastGPT等RAG方案,以及Nvidia  NIM大模型推理加速方案等,优化它们与阿里云服务的集成方案,为客户的云原生AI系统提供与社区更广更深的连接。



容器服务支撑AI智算基础底座



图片.png


经过10年发展,Kubernetes容器技术已经成为管理业务应用和微服务实际意义上的基础技术底座。人们常将Kubernetes类比为云时代的分布式操作系统。


在AI时代,Kubernetes继续快速演进,拓展出了新的云原生AI领域。用户可以在Kubernetes集群中管理调度GPU、NPU、RDMA等高性能异构资源,以容器化方式开发、运行AI、大数据任务,部署AI推理服务。


阿里云容器服务,通过托管Kubernetes集群和一系列面向云原生AI领域的创新能力扩展,构筑起云原生AI基础底座,支撑用户的AI智算生产系统。


图片.png


多年来,容器服务ACK支持了大量客户的AI大数据负载和GPU集群调度的需求,我们将生产实践经验沉淀为ACK云原生AI套件产品,并在2023年正式商业化上线。


云原生AI套件兼容标准Kubernetes,支持ACK Pro,Edge,One,灵骏等各种集群类型,以及全新的ACS容器计算服务。已经在自动驾驶、AI for science、互联网、金融、大模型服务等众多领域客户生产落地。


同时,容器服务也在业界首先提出了云原生AI系统分层架构。面向不同角色,提供了从底层异构资源统一管理,任务编排调度,AI框架支持,到AI任务生命周期管理和性能优化,再通过标准API,与广泛的开源AI社区集成。


希望通过云原生AI套件,为AI/ML客户与社区,提供一整套工程效率高、成本低,可定制化组装的端到端解决方案。帮助用户的Kubernetes集群,30分钟构建起云原生AI平台的基础底座。


云原生AI套件及ACK产品帮助文档:
https://help.aliyun.com/zh/ack/cloud-native-ai-suite/
https://help.aliyun.com/zh/ack/ack-managed-and-ack-dedicated/product-overview/what-is-ack


聚焦大模型场景优化


回顾过去一年,大语言模型和AIGC领域的跨越式发展,极大推动了AI分布式训练和推理技术,以及大规模GPU智算集群调度管理技术的快速演进。


在这样的背景下,ACK云原生AI套件聚焦大模型场景,提供了一系列基础能力优化和创新实践。


图片.png


大模型给底层基础服务带来了非常多挑战和需求,比如大规模GPU资源需求挑战,集群稳定性挑战,任务弹性策略和性能优化挑战,以及快速发展的模型和计算框架生态集成的需求。


云原生AI套件聚焦这些需求,在分层架构中逐层优化:


重点增强GPU的可观测性和故障自愈能力;


实现AI任务在多集群跨地域GPU资源池上统一调度,解决资源紧缺的问题;


内置基于vLLM,Kserve等开源大模型推理引擎的最佳实践;


通过更灵活的弹性伸缩策略,优化AI推理服务的性能和成本;


集成了Ray,Slurm等更多分布式计算和任务调度系统,也集成了众多优秀的LLM应用架构方案,比如Dify,Flowise等RAG方案,以及Nvidia NIM大模型推理加速方案,为客户的云原生AI系统提供与社区更广更深的连接。


下面将对ACK云原生AI套件的这些新能力做更详细的介绍。


图片.png

首先,实时观测和分析GPU资源利用率和GPU任务的性能表现,对于洞察和优化AI智算系统的效率至关重要。


在监控方面,ACK GPU监控大盘默认支持40余种指标,覆盖了资源利用率和任务性能的不同视角。


在诊断方面,ACK新增了基于eBPF技术的实时GPU profiling能力。支持在AI任务运行过程中,动态开启,无侵入地持续追踪任务执行过程。


将CPU进程,系统调用,Python和Pytorch方法调度,CUDA算子,以及NCCL通信和Data IO操作的运行过程,关联在一致的Timeline上统一分析,可以更直观、更快地定位线上AI任务的性能瓶颈。

图片.png

相较于NSight, Pytorch profiler等离线诊断工具,基于eBPF的实时GPU profiling方案,更加轻量级,可在不需要中断任务的情况下,动态开启。


更容易在线上出现问题的时候,动态发起诊断,及时发现优化点。帮助ACK上的AI任务性能诊断效率提升20%。


比如上面这个例子中,通过CUDA算子和torch训练代码的调用耗时的分析,很直观看到训练数据的加载耗时远大于训练计算,这里存在明确的优化空间。

图片.png

AI智算集群的稳定性很大程度上影响了模型训练和推理的效率与成本。


Meta训练Llama3.1 405B模型的案例中,54天训练,发生了417非预期中断,其中58.7%中断是GPU相关的故障。


Llama3.1能够完成训练,故障的自动处理至关重要。Meta的技术报告中看到,除了3次人工处理介入,其他故障全部实现自动化处理。


在容器智算场景,ACK提供了CIS智能诊断自愈系统。支持GPU、节点池、Kubernetes  Addons等组件自由扩展特定故障类型,自定义故障诊断和恢复工具与脚本。通过集成ACK  AI助手,借助LLM知识库,加快故障根因分析。形成从发现故障到自愈的全流程自动化处理。


ACK将GPU资源故障自动处理流程,与AI任务的错误恢复能力相结合。在发现GPU故障之后,一方面通知底层IaaS进行资源诊断、迁移、维修,另一方面Kubernetes调度会自动隔离故障资源,防止影响新任务。同时结合训练框架启动模型快速checkpoint,并在合适的条件下,重新调度任务,恢复训练。

图片.png

大模型scaling law,支撑了GPU算力需求持续增长。单个数据中心或云的单个地域可能无法满足大任务对GPU资源量的需求。业界已经在尝试多地域、多集群资源和AI任务统一调度的方案。


然而,多地域任务分发和数据同步,带来了一致性、效率和复杂度挑战。


容器服务增强ACK One的计算与数据协同调度能力,实现多Kubernetes集群跨地域统一调度AI负载。支持以库存优先,成本优化等策略,缓解GPU 资源供给挑战。进一步,还需要动态观测和调整AI作业分布,持续平衡GPU资源与AI负载的最优匹配。


需要注意到,大模型体积大的特点,会影响多地域部署模型服务的成本和性能。通过自动预热和缓存模型到不同地域,加速LLM推理服务在多集群中的启动和弹性伸缩,优化GPU资源使用效率和成本。


同时,也需要结合跨地域模型服务请求流量的统一管理,简化多集群环境下的用户体验复杂度。


图片.png

AI推理服务也像很多在线业务一样,存在访问峰谷变化的特征。在云上,弹性伸缩是应对服务流量变化的最佳实践。


容器服务支持根据QPS,请求Latency,GPU利用率,token请求队列长度等自定义指标,实现AI推理服务的自动弹性扩缩容。


为了提供更加及时、精准的资源弹性,容器服务提供 AHPA,由时序数据预测算法加持的智能弹性策略,精准控制扩缩容时机和幅度。


同时,结合Knative,也支持AI推理实例缩容到零的能力,极致优化资源成本。


图片.png

然而,使用推理服务的弹性伸缩能力,在大模型场景下,实际存在更多Scale上的挑战。比如:


大模型加载慢,推理服务冷启动延迟大;


无法及时应对AI请求峰谷变化,导致弹性伸缩失效;


并发加载模型,访问存储聚合带宽压力大,成本高。


ACK云原生AI套件,将Fluid数据集缓存加速能力,扩展到大模型推理领域。通过Fluid Dataset和 Preload实现自动预热远程大模型参数到本地page cache,通过Fluid SDK并发加载到GPU显存。


端到端的模型缓存和预热优化,帮助LLM/AIGC推理服务冷启动延迟降低85%以上。既能支持 ECS/EGS,裸金属实例上的模型服务容器加速,也能支持ECI/ACS serverless实例上的加速。有效支持大模型推理服务弹性伸缩的可行性和实际价值。


图片.png

Fluid是阿里云联合南京大学、Alluxio等组织共同创立的云原生数据集编排和加速开源项目。Fluid定义了Kubernetes中应用访问各类异构数据源,使用数据的标准接口。Fluid提出了Dataset抽象,对任务使用数据的过程建模。支持分布式缓存技术加速访问  Dataset,以及极简的Dataset Centric的数据处理流水线。


Fluid既可以用于加速分布式训练任务读取训练数据,也可以用于加速大模型推理服务启动。可以通过Fluid  DataProcess,自定义编排推理服务模型下载 - 预处理 - 部署流程。比如支持TensorRT-LLM自动执行convert  model > build engine > serving 的操作。

图片.png

很多客户的IT系统架构演进路径中,智算、超算、大数据应用云原生一体化正在形成趋势。社区在推动增强Kubernetes,成为管理和运行各种数据计算类工作负载的统一基础平台。


在ACK的Kubernetes集群上,用户已经可以便捷高效地运行AI训练任务,推理服务,以及Spark/Flink大数据任务。


此外,ACK新增加了对分布式计算框架Ray,和对传统HPC领域Slurm任务调度能力的支持。提出Ray  on ACK和Slurm on  ACK的产品化方案,通过标准的Operator机制管理Ray,Slurm的集群和任务。重点集合云和容器的优势,统一优化调度、弹性、混部、可观测、安全、数据访问加速等能力。同时,无缝兼容Ray和Slurm原生的用户体验。


容器服务也在积极推动上游开源社区,在Kubernetes体系下,定义支持各类计算框架和任务类型的云原生任务标准API和生命周期。帮助用户可以在Kubernetes集群上以统一的标准和接口,管理调度各类数据计算类工作负载。

图片.png

ACK扩展了Kube-scheduler framework,与Slurm调度系统打通,即支持节点池维度的分节点调度,也支持共享节点资源的混部调度。借助Kube-queue,可以对Kubernetes jobs和Slurm jobs统一排队管理。


ACK还实现了Kubernetes资源和Slurm资源状态双向同步,通过可自定义的扩缩容策略判断,动态调整Slurm节点,实现Slurm集群的弹性伸缩。是的传统的HPC集群调度,也能利用云的弹性优势。


而对于HPC用户来说,不用关心底层的调度细节,依然保持了通过登陆节点提交sbatch,srun作业的原生体验。

图片.png

开源开放,对于云原生和AI社区都是最重要的发展路径和驱动力。无论训练框架,推理引擎,分布式计算软件,还是开源模型以及新的AI应用架构,容器服务始终以开放架构和开源标准,持续帮助用户快速高效地集成到Kubernetes集群中。更重要的是,ACK会重点优化开源能力和生态方案的“弹性,调度能力,可观测,稳定性,安全性”,通过内置与阿里云服务的整合,提升可生产落地的成熟度。

图片.png

我们将容器服务在AI智算场景的创新能力和实践经验,沉淀为开放的云原生AI参考架构。通过ACK云原生AI套件产品,帮助客户持续优化异构资源效率和AI工程效率,改善云原生AI的落地和使用成本。以开放的架构和实现,给客户AI业务最大的灵活度。帮助客户的云原生AI系统可持续演进。


诚邀共建


阿里云容器团队诚招内转开发&SRE】【产品经理】【PDSA】- 杭州、北京、深圳的岗位均可,欢迎大家帮助推荐。


也欢迎大家加入云原生AI技术和产品交流群,持续关注、共建与合作。


图片.png

钉钉扫一扫群二维码,立即加入群聊

(2025.09.27前有效)

相关文章
|
14天前
|
人工智能 自动驾驶 大数据
预告 | 阿里云邀您参加2024中国生成式AI大会上海站,马上报名
大会以“智能跃进 创造无限”为主题,设置主会场峰会、分会场研讨会及展览区,聚焦大模型、AI Infra等热点议题。阿里云智算集群产品解决方案负责人丛培岩将出席并发表《高性能智算集群设计思考与实践》主题演讲。观众报名现已开放。
|
6天前
|
自然语言处理 数据可视化 API
Qwen系列模型+GraphRAG/LightRAG/Kotaemon从0开始构建中医方剂大模型知识图谱问答
本文详细记录了作者在短时间内尝试构建中医药知识图谱的过程,涵盖了GraphRAG、LightRAG和Kotaemon三种图RAG架构的对比与应用。通过实际操作,作者不仅展示了如何利用这些工具构建知识图谱,还指出了每种工具的优势和局限性。尽管初步构建的知识图谱在数据处理、实体识别和关系抽取等方面存在不足,但为后续的优化和改进提供了宝贵的经验和方向。此外,文章强调了知识图谱构建不仅仅是技术问题,还需要深入整合领域知识和满足用户需求,体现了跨学科合作的重要性。
|
1月前
|
存储 人工智能 弹性计算
阿里云弹性计算_加速计算专场精华概览 | 2024云栖大会回顾
2024年9月19-21日,2024云栖大会在杭州云栖小镇举行,阿里云智能集团资深技术专家、异构计算产品技术负责人王超等多位产品、技术专家,共同带来了题为《AI Infra的前沿技术与应用实践》的专场session。本次专场重点介绍了阿里云AI Infra 产品架构与技术能力,及用户如何使用阿里云灵骏产品进行AI大模型开发、训练和应用。围绕当下大模型训练和推理的技术难点,专家们分享了如何在阿里云上实现稳定、高效、经济的大模型训练,并通过多个客户案例展示了云上大模型训练的显著优势。
|
1月前
|
存储 人工智能 调度
阿里云吴结生:高性能计算持续创新,响应数据+AI时代的多元化负载需求
在数字化转型的大潮中,每家公司都在积极探索如何利用数据驱动业务增长,而AI技术的快速发展更是加速了这一进程。
|
2天前
|
人工智能 容器
三句话开发一个刮刮乐小游戏!暖ta一整个冬天!
本文介绍了如何利用千问开发一款情侣刮刮乐小游戏,通过三步简单指令实现从单个功能到整体框架,再到多端优化的过程,旨在为生活增添乐趣,促进情感交流。在线体验地址已提供,鼓励读者动手尝试,探索编程与AI结合的无限可能。
|
6天前
|
Cloud Native Apache 流计算
PPT合集|Flink Forward Asia 2024 上海站
Apache Flink 年度技术盛会聚焦“回顾过去,展望未来”,涵盖流式湖仓、流批一体、Data+AI 等八大核心议题,近百家厂商参与,深入探讨前沿技术发展。小松鼠为大家整理了 FFA 2024 演讲 PPT ,可在线阅读和下载。
3125 10
PPT合集|Flink Forward Asia 2024 上海站
|
2天前
|
人工智能 自然语言处理 前端开发
从0开始打造一款APP:前端+搭建本机服务,定制暖冬卫衣先到先得
通义灵码携手科技博主@玺哥超carry 打造全网第一个完整的、面向普通人的自然语言编程教程。完全使用 AI,再配合简单易懂的方法,只要你会打字,就能真正做出一个完整的应用。
922 12
|
19天前
|
人工智能 自然语言处理 前端开发
100个降噪蓝牙耳机免费领,用通义灵码从 0 开始打造一个完整APP
打开手机,录制下你完成的代码效果,发布到你的社交媒体,前 100 个@玺哥超Carry、@通义灵码的粉丝,可以免费获得一个降噪蓝牙耳机。
5872 16
|
1月前
|
缓存 监控 Linux
Python 实时获取Linux服务器信息
Python 实时获取Linux服务器信息
|
12天前
|
机器学习/深度学习 人工智能 安全
通义千问开源的QwQ模型,一个会思考的AI,百炼邀您第一时间体验
Qwen团队推出新成员QwQ-32B-Preview,专注于增强AI推理能力。通过深入探索和试验,该模型在数学和编程领域展现了卓越的理解力,但仍在学习和完善中。目前,QwQ-32B-Preview已上线阿里云百炼平台,提供免费体验。