[论文] KubePACS:使用高性能、高可用且成本高效的 Spot 实例的 Kubernetes 集群
Source: arXiv - 2604.24027v1
Overview
KubePACS 是一个原生于 Kubernetes 的系统,能够自动从 Spot(抢占式)实例构建节点池,在低成本、高性能和强可用性之间取得平衡。通过将实例类型选择视为多目标优化问题并接入流行的 Karpenter 自动伸缩器,作者展示了相较于现有的 Spot 感知方案,工作负载的性价比可以提升至 81 % 更快(每美元)。
Key Contributions
- Multi‑objective formulation: 将实时 Spot 价格、基准性能以及新颖的 Spot Placement Score (SPS) 组合成单一优化模型。
- Efficient ILP solver: 使用整数线性规划(ILP)并结合黄金分割搜索,在足够快的时间内找到接近最优的节点池配置,以满足生产自动扩缩循环的需求。
- Karpenter integration: 扩展开源 Karpenter 自动扩缩器,实现对 使用何种实例类型 与 启动多少节点 的联合决策。
- Workload‑aware heuristics: 通过对性能指标进行缩放,使开发者能够将优化器倾向于特定实例族(例如 GPU、high‑memory)。
- Comprehensive evaluation: 在合成和真实工作负载上的基准测试显示,平均提升 55 % 的 性价比,最高可达 81 %,相较于最先进的 Spot 供应工具(SpotVerse、SpotKube、vanilla Karpenter)。
方法论
-
数据收集 – KubePACS 持续抓取三个数据流:
- 现货市场价格(按区域、按实例)。
- 性能基准(CPU、内存、网络以及专用加速器)。
- 历史中断率,汇总为 Spot Placement Score(SPS 越高 = 可靠性越好)。
-
优化模型 – 将问题表述为整数线性规划(ILP):
- 目标:在满足工作负载资源约束(CPU、内存等)的前提下,最大化性能‑每美元 与 SPS 的加权和。
- 变量:每种候选实例类型的节点数量。
- 约束:最小所需容量、预算上限,以及可选的亲和规则(例如 “优先使用 GPU 节点”)。
-
求解器加速 – 由于 ILP 计算成本高,作者嵌入了 黄金分割搜索,用于缩小成本与可用性加权因子的可行区间,显著降低求解时间,同时保持最优性保证。
-
与 Karpenter 的集成 – 优化器作为 side‑car 服务运行。当 Karpenter 检测到扩容需求时,KubePACS 提供 最优 的实例类型组合;随后 Karpenter 按此配置节点。
-
工作负载特定调优 – 开发者可以为 Pod 添加性能偏好注解;KubePACS 会相应提升基准分数,引导优化器选择最合适的硬件。
结果与发现
| 基线 | 平均 性能‑$/ | 最大 性能‑$/ | 平均 成本降低 |
|---|---|---|---|
| Karpenter (price‑only) | 1.0× | – | – |
| SpotVerse | 1.32× | 1.58× | 12 % |
| SpotKube | 1.41× | 1.63× | 15 % |
| KubePACS | 1.55× | 1.81× | 23 % |
- 每美元性能:KubePACS 的平均性能提升 55 %,在 CPU 密集型批处理作业中达到 81 %。
- 可用性:SPS 感知的选择相比仅基于价格的策略将抢占率降低约 30 %,从而减少 pod 驱逐并降低重启开销。
- 求解器延迟:对于典型集群规模(≤ 200 个节点候选),ILP + GSS 流水线在 < 200 ms 内收敛,能够轻松适配 Karpenter 的扩缩循环。
- 可扩展性:在多达 10 k 个 pod 的实验中,优化器运行时间呈线性扩展,证实其适用于大规模生产集群。
实际意义
- 成本敏感的自动伸缩:DevOps 团队可以采用 KubePACS,在不牺牲吞吐量的情况下保持云费用低,尤其适用于突发或异构工作负载。
- 降低运维负担:通过自动考虑中断风险,团队在手动调节 Spot 实例池或处理频繁的 Pod 重启上花费的时间更少。
- 硬件感知调度:能够倾向于专用实例(例如用于机器学习推理的 GPU)意味着开发者可以让平台处理“合适规模”的决策,摆脱底层实例选择的束缚。
- 供应商无关:虽然在 AWS Spot 市场上进行评估,但该框架仅需价格、性能和中断 API,即可迁移到 GCP 可抢占 VM 或 Azure 低优先级 VM。
- 开源潜力:由于 KubePACS 基于已毕业的 CNCF 项目 Karpenter,将其集成到现有 CI/CD 流水线中非常简单,且贡献可以上游合并,惠及更广泛的社区。
限制与未来工作
- 基准新鲜度:优化器依赖最新的性能数据;过时的基准可能误导选择,尤其在硬件更新后。
- 现货市场波动性:价格突增或中断模式的变化可能超过系统的数据收集间隔,暂时降低最优性。
- 复杂工作负载:具有冲突性能偏好的多租户集群可能需要更复杂的多目标加权或公平机制。
- 超越现货的扩展:作者建议探索混合策略,将现货、按需和预留实例结合,以进一步平衡成本与可用性。
总体而言,KubePACS 展示了基于原则、数据驱动的现货实例供应方法能够在保持集群可靠性的同时,释放出显著的每美元性能提升——这对任何大规模运行 Kubernetes 的组织都是极具吸引力的提议。
作者
- Taeyoon Kim
- Kyumin Kim
- Enrique Molina-Giménez
- Pedro García-López
- Kyungyong Lee
论文信息
- arXiv ID: 2604.24027v1
- 分类: cs.DC
- 出版时间: 2026年4月27日
- PDF: Download PDF