费用计算 | AWS EC2 竞价实例 (Spot )是如何计费的?


  服务概要

AWS EC2 竞价型实例(Spot Instance)是一种利用 AWS 云中未使用的空闲 EC2 容量的计费方式,与按需型实例相比,成本最高可节省 90%。您只需指定愿意支付的每小时最高出价,当当前 Spot 价格低于您的出价且有可用容量时,实例即会运行。Spot 实例非常适合大数据、容器化工作负载、CI/CD、高性能计算(HPC)、图像渲染等无状态、容错、灵活的应用场景。需注意:当 Spot 价格超过您的出价或容量不足时,AWS 会提前 2 分钟发出中断通知并终止实例。


  定价模式

AWS 依据每个可用区内同类实例(如 m5.large)的历史供需、容量及回收率,每数分钟至数小时自动调整 Spot 价格。价格波动上限为按需定价,不会超过它。符合按秒计费条件的 Spot 实例: 在启动的第 1 个小时里,如果该实例因为价格原因被 Amazon EC2 终止,则不会产生任何费用;如果超过 1 小时以后产生中断,则会按秒计算费用精确到实际使用时间;如果是用户主动终止该 Spot 实例,即便不满 1 小时,也会按照实际使用时间按秒进行计费。

用户出价策略
默认策略:不设具体出价,直接接受当前 Spot 价格。只要 Spot 价格 ≤ 按需价,且您未因容量回收被中断,实例就一直运行。
自定义最高价:您可设定一个不高于按需价的价格上限。实际计费按当前 Spot 价格(而非您的出价)每小时扣费。若 Spot 价格升至高于您的出价,实例将自动终止。

中断类型与计费影响
竞价超过出价 或 EC2 回收容量:实例终止,不再计费。
您主动停止 / 终止:只对已运行完整小时计费(按秒计费,最短 60 秒后按秒递增)。
休眠中断:暂不计费,重启后继续按秒计费。


  计费示例

某公司在在 us-east-1 区域启动了一台 m5.large Spot 实例,Linux 系统,设定最高出价为 每小时 0.10(按需价格为 0.096/ 小时)。当前 Spot 价格为 $0.03/ 小时。

第 0 小时 → 实例成功启动,Spot 价格 $0.03/ 小时→您按 0.03/ 小时付费,而非 0.10/ 小时。

第 0.5 小时 → Spot 价格升至 $0.11/ 小时,超过出价,AWS 发出中断通知,实例被终止。由于是 AWS 主动中断且在第 1 小时内,不会产生费用。

第 2 小时 →(假设)实例重新启动,运行至 2.3 小时后被 AWS 中断→第 1 小时:AWS 中断 → 免费;第 2 小时:运行 0.3 小时 → 按秒计费,约 0.03×0.3=0.009

任何时刻→您主动终止实例→按实际使用秒数计费,即使不满 1 小时也收费