Cloud users aim to minimize cost while maximizing performance by selecting the most suitable instance types for their workloads. To reduce expenses, spot instances have been widely adopted due to their steep discounts compared to on-demand pricing. However, their use introduces reliability risks due to potential interruptions, and existing research has primarily focused on mitigating this trade-off from a cost or availability perspective alone. Despite the diversity in hardware capabilities among instance types, current provisioning systems tend to ignore performance variation, selecting nodes solely based on minimum resource requirements. In this paper, we present KubePACS, a Kubernetes-native spot instance provisioning system that constructs node pools optimized for both cost and performance while guaranteeing high availability. KubePACS formulates the node selection process as a multi-objective optimization problem, incorporating real-time data such as spot prices, performance benchmarks, and availability scores, including the multi-node Spot Placement Score (SPS). It solves this problem efficiently using an Integer Linear Programming (ILP) approach guided by the Golden Section Search (GSS) algorithm to find the optimal configuration. By integrating with the Karpenter node autoscaler, KubePACS jointly optimizes instance-type selection and node scaling decisions within a standard provisioning workflow. KubePACS also adopts a novel heuristic to support workload-specific preferences by scaling performance metrics for specialized instances. Through extensive evaluation across synthetic and real-world workloads, KubePACS demonstrates on average 55.09% and up to 81.06% higher performance per dollar over state-of-the-art solutions such as Karpenter, SpotVerse, and SpotKube, which only reference the spot instance prices and limited availability data.
翻译:云用户旨在通过选择最适合工作负载的实例类型,在最大化性能的同时最小化成本。为降低开支,竞价实例因其相比按需定价的大幅折扣而被广泛采用。然而,其使用会因潜在中断而引入可靠性风险,现有研究主要聚焦于从成本或可用性单一维度缓解这一权衡。尽管实例类型间的硬件能力存在多样性,当前的资源供给系统往往忽略性能差异,仅基于最低资源需求选择节点。本文提出KubePACS,一个Kubernetes原生的竞价实例供给系统,该系统构建同时优化成本与性能并保障高可用的节点池。KubePACS将节点选择过程形式化为多目标优化问题,融合实时数据(如竞价价格、性能基准和可用性评分,包括多节点竞价布局得分SPS)。它通过采用黄金分割搜索算法引导的整数线性规划方法高效求解此问题,从而找到最优配置。通过与Karpenter节点自动扩缩器集成,KubePACS在标准供给工作流中联合优化实例类型选择与节点扩缩决策。KubePACS还采用新型启发式方法,通过为专用实例缩放性能指标,支持工作负载特定偏好。通过对合成与真实工作负载的广泛评估,KubePACS相比仅参考竞价实例价格和有限可用性数据的现有最优方案(如Karpenter、SpotVerse及SpotKube),每美元性能平均提升55.09%,最高可达81.06%。