在 AKS 为 vLLM 站起一个 GPU 集群

2026年8月30日2 次浏览来源:Dev.to阅读原文

这篇文章是AKS上运行 vLLM 的系列的一部分,走过一个带有 GPU 节点池的 AKS 集群,将 vLLM 部署在它上,并给 Prometheus 和 Grafana 接线以获得能见度. company site: 选择正确的 GPU QQ 为什么你的自动缩放相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相机相 所行之步由所出而各取所出而取所取之.

依赖链 建造顺序遵循一个链条:模式-VRAM要求-GPU SKU-区域可用-配额.

步骤0——预设(一次性,在资源组删除后幸存)GPU配额.

通过门户网站提出请求 配额 计算 本條目:所求入 (108 = 3个节点 × 36 vCPUs,相匹配自动缩放器设置于第3步.

配额被授予每个订阅,在资源组删除后幸存下来,所以这一步发生一次,而不是每次重建.

一个配额是Azure对一个资源(这里,GPU vCPU在一个特定的VM家族)允许您同时提供多少的订阅限制.

新的订阅开始于GPU家庭的0分,因为它昂贵,可以被滥用.

你需要它,因为没有批准, Az aks nodepol 添加一个GPU就会彻底失败.

请求通过人工Azure批准,所以在计划建设之前必须进行. *Presidents * 现有的 Azure 订阅: 本地工具: Helm 3+ kubectl Bash Bash 变量通过设置步骤1来设定使用 – 创建资源组步骤2 – 创建 AKS 集群,在一个CPU系统池上 GPU不在此池上.

每个AKS集群都需要一个集成临界舱(CoreDNS,rims-server)的系统节点池,系统池不能被缩放为零——所以一个放置在这里的GPU运行,和账单,无论负载大小,24/7.

一个CPU节点廉价地覆盖了系统吊舱;第3步所创建的GPU池是实际发生比例尺到零的地方.

第3步——GPU节点池被污染并从零缩放 每面旗帜都做什么:+--从零级升起.

在一个吊舱需要一个时才存在节点,所以GPU在7步之前没有花.

集群自动缩放器根据游泳池所申报的齿轮/标签/VM大小来评价一个待取的吊舱,以决定它是否适合,然后提供一个如果适合的话的节点——这就是为什么在创建时必须把齿轮和标签设置在游泳池上,而不是后来从运行的节点上发现的原因. ——将游泳池圈入了0到3个节点之间. (Design decision)——在GPU节点存在后,将普通CPU的吊舱从GPU起降. ——标出VLLM shoot在第七步中的目标.

塔int, 容忍, 和节点Selector 做三个不同的工作: 塔int默认地击退了吊舱, 允许一个特定的吊舱忽略那个吊舱, 节点Selector将一个吊舱引导到一个特定的节点.

单靠容忍并不能保证安置——它只会抬起块.

步骤7中的vLLM sock spec同时携带了容忍和节点选择器,因为两者都需要.

上面的缩放将 -- node -- counts 和 --min -- counts 设置为 0 ; 这对于您的使用可能不可取 。

保持节点或2个取暖有助于耐久性,但与此相关需要成本.

选择最适合您使用的大小写 。

第4步——为集群通信获取kubeconfig 第5步——NVIDIA设备插件AKS默认不安装.

没有它,一个GPU节点从不作为可充电资源进行广告,任何请求被放任的被放任的被放任无出错.

上游守护进程只容忍标准纹章,而不是第3步中设置的自定义纹章,所以它不会在没有补丁的情况下排入GPU节点:一个vLLM sock看似设备插件丢失,误排,或者节点只是还没有缩放.

和检查不足 区别于三个。

第6步——可观察性核心:Prometheus + Grafana + KEDA 注:在GPU节点向上缩放之前被安装,因此堆栈以自由CPU池为基础.

价值文件 : — 保留了6小时, 8 Gi PV 打开 , Grafana 打开 , Alertm

分享