广州手机建设网站湖南电子科技网站建设
广州手机建设网站,湖南电子科技网站建设,成都专业logo设计公司,嵌入式开发板哪款好导读#xff1a;在大规模语言模型#xff08;LLM#xff09;推理场景中#xff0c;张量并行#xff08;TP#xff09;与流水线并行#xff08;PP#xff09;已成为标配#xff0c;这要求多节点、多GPU必须像“连体婴”一样协同工作 。然而#xff0c;传统的Kubernete…导读在大规模语言模型LLM推理场景中张量并行TP与流水线并行PP已成为标配这要求多节点、多GPU必须像“连体婴”一样协同工作 。然而传统的Kubernetes工作负载却难以应对这一需求Deployment无法保证Pod间的版本一致性容易导致服务“脑裂”StatefulSet严格的顺序重建策略又限制了高并发下的快速弹性 。如何在Kubernetes上实现以“组”为单位的原子化管理Google开源的 LeaderWorkerSet (LWS) 给出了解法。本文将深入拆解LWS的架构原理探讨其如何通过组级生命周期管理、LeaderReady启动策略及独占拓扑功能完美适配vLLM等分布式推理框架。大规模语言模型LLM推理对计算资源要求较高得靠多节点、多GPU的分布式计算架构来撑场面——通过Tensor Parallelism张量并行把模型参数拆到不同GPU上再用Pipeline Parallelism流水线并行给不同节点分配计算步骤最终实现多设备齐心协力搞推理。不过传统的Kubernetes工作负载虽然能搭起基础部署框架但面对分布式推理的核心需求时短板就挺明显了。而LeaderWorkerSet组件刚好能精准解决这些麻烦事。一、传统Kubernetes工作负载的局限性Deployment和StatefulSet是Kubernetes里最常用的两种工作负载但放到LLM分布式推理这个场景里就有点“水土不服”了很难满足高性能、高弹性的核心要求DeploymentDeployment本来是为无状态应用设计的临时拿来部署LLM推理也不是不行但它管不好Pod之间的“协作关系”和统一的生命周期。比如滚动更新的时候它默认一个一个Pod更很容易出现新版本Pod都跑起来了老版本还在那儿干活的情况。可Tensor Parallelism架构下所有Pod得一起加载完整模型参数才能Ready版本不一致服务可用性肯定受影响。StatefulSetStatefulSet能管有状态应用比如给Pod分配固定身份、按顺序部署表面看挺符合LLM推理对节点身份的要求。但StatefulSet对Pod的删除和重建策略较为严格可能影响服务的快速恢复难以实现LLM推理服务所需的快速弹性伸缩。二、LWS在大模型推理部署场景下的优势为了解决传统工作负载的问题云星算力调度平台接入的计算集群集成了LeaderWorkerSet插件。它是专门为AI推理场景设计的CRD资源设计思路就是冲着解决分布式推理的协同、弹性和运维需求来的和LLM推理的部署特性非常匹配核心优势为组级生命周期管理用于支持组级别的弹性伸缩、滚动升级和重启提升服务高可用性。LWS会把一起干同一个推理任务的多个Pod分成一个“副本组”里面有1个Leader Pod组长和多个Worker Pod组员。在弹性伸缩时是以副本组为单位做扩缩容。举个例子我使用LWS初始化部署了一个分布式推理大模型占用4个计算节点那么这个推理副本组一共有1个leader 和3个worker 。当该推理服务负载过高需要扩容时LWS按组扩容最低扩容出1个新的副本组所以额外需要4个计算节点。三、LWS概要介绍简单来说LeaderWorkerSet就是Kubernetes专门为AI/大模型推理场景量身打造的工作负载类型。它的核心思路很巧妙把多个Pod编成一个“副本组”当成一个整体来管。这种架构让vLLM、SGLang这些推理框架的分布式部署变得简单解决了传统工作负载在LLM推理里的那些痛点现在已经成了大模型推理部署的优选方案。下面是LWS的架构图四、安装指南4.1版本要求需使用版本 ≥ 1.26 的 Kubernetes 集群。4.2通过 Helm 安装若需通过 Helm 在集群中安装 LWS 的正式发布版本执行以下命令CHART_VERSION0.7.0 helm install lws oci://registry.k8s.io/lws/charts/lws \ --version$CHART_VERSION \ --namespace lws-system \ --create-namespace \ --wait --timeout 300s也可执行以下命令安装VERSIONv0.7.0 helm install lws https://github.com/kubernetes-sigs/lws/releases/download/$VERSION/lws-chart-$VERSION.tgz \ --namespace lws-system \ --create-namespace \ --wait --timeout 300s五、Demo示例5.1第一个demo以下为一个LeaderWorkerSet示例apiVersion: leaderworkerset.x-k8s.io/v1 kind: LeaderWorkerSet metadata: name: leaderworkerset-sample spec: replicas: 3 leaderWorkerTemplate: size: 4 workerTemplate: spec: containers: - name: nginx image: nginxinc/nginx-unprivileged:1.27 resources: limits: cpu: 100m requests: cpu: 50m ports: - containerPort: 8080若要列出属于某个LeaderWorkerSetLWS的所有Pod可执行如下命令kubectl get pods --selectorleaderworkerset.sigs.k8s.io/nameleaderworkerset-sample输出结果类似如下NAME READY STATUS RESTARTS AGE leaderworkerset-sample-0 1/1 Running 0 6m10s leaderworkerset-sample-0-1 1/1 Running 0 6m10s leaderworkerset-sample-0-2 1/1 Running 0 6m10s leaderworkerset-sample-0-3 1/1 Running 0 6m10s leaderworkerset-sample-1 1/1 Running 0 6m10s leaderworkerset-sample-1-1 1/1 Running 0 6m10s leaderworkerset-sample-1-2 1/1 Running 0 6m10s leaderworkerset-sample-1-3 1/1 Running 0 6m10s leaderworkerset-sample-2 1/1 Running 0 6m10s leaderworkerset-sample-2-1 1/1 Running 0 6m10s leaderworkerset-sample-2-2 1/1 Running 0 6m10s leaderworkerset-sample-2-3 1/1 Running 0 6m10s5.1Pod的多模板配置若指定了leaderTemplate字段LWS支持为Leader Pod和Worker Pod配置不同模板若未指定该字段则workerTemplate模板将同时应用于Leader Pod和 Worker Pod。apiVersion: leaderworkerset.x-k8s.io/v1 kind: LeaderWorkerSet metadata: name: leaderworkerset-sample spec: replicas: 3 leaderWorkerTemplate: size: 4 leaderTemplate: spec: workerTemplate: spec:5.3启动策略.spec.startupPolicy用于控制Worker有状态集StatefulSet相对于其LeaderPod的创建时机包含以下两种配置选项LeaderCreated默认LeaderPod对象一旦创建LWS控制器便会立即创建Worker有状态集。此策略不保证Leader与Worker之间的就绪顺序。LeaderReadyLWS控制器会延迟创建Worker有状态集直至LeaderPod处于就绪Ready状态。apiVersion: leaderworkerset.x-k8s.io/v1 kind: LeaderWorkerSet metadata: name: leaderworkerset-sample spec: startupPolicy: LeaderReady replicas: 3 leaderWorkerTemplate: ...5.4LWS与拓扑调度的专属绑定LWS的注解leaderworkerset.sigs.k8s.io/exclusive-topology可定义LWS副本与拓扑调度的1:1绑定关系。例如为提升分布式推理的跨节点通信效率需将某个LWS副本调度至同一机架可按如下配置实现apiVersion: leaderworkerset.x-k8s.io/v1 kind: LeaderWorkerSet metadata: name: leaderworkerset-sample annotations: leaderworkerset.sigs.k8s.io/exclusive-topology: rack spec: replicas: 3 leaderWorkerTemplate: ...六、算力调度平台集成LWS构建LLM大模型推理能力算力调度平台的大模型推理服务功能支持用户将LLM大模型权重文件上传到平台统一管理支持创建推理服务平台自动将纳管的LLM大模型部署到计算节点对外提供OpenAI兼容的API接口。算力调度平台的模型自动部署功能基于LWS构建支持推理服务快速扩缩容。更多系列文章、开源项目、关键洞察、深度解读、技术干货请持续关注佳杰云星欢迎在评论区留言或私信博主交流 大模型推理架构 经验