Spot Instances - Amazon Elastic Compute Cloud
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

Spot Instances

竞价型实例是一种使用备用 EC2 容量的实例,以低于按需价格提供。由于竞价型实例允许您以极低的折扣请求未使用的 EC2 实例,这可能会显著降低您的 Amazon EC2 成本。竞价型实例的每小时价格称为 Spot 价格。每个可用区中的每种实例类型的 Spot 价格是由 Amazon EC2 设置的,并根据竞价型实例的长期供求趋势逐步调整。您的竞价型实例在容量可用时运行。

如果能灵活控制应用程序的运行时间并且应用程序可以中断,竞价型实例就是经济实惠之选。例如,竞价型实例非常适合数据分析、批处理作业、后台处理和可选的任务。有关更多信息,请参阅 Amazon EC2 Spot 实例

有关 EC2 实例不同购买选项的比较,请参阅 实例购买选项

主题

概念

在开始使用竞价型实例之前,应该熟悉以下概念:

  • Spot 容量池 – 一组具有相同实例类型(如 m5.large)和可用区的未使用 EC2 实例。

  • Spot 价格 – Spot 实例的当前每小时价格。

  • Spot 实例请求 – 请求 Spot 实例。当有容量可用时,Amazon EC2 将满足您的请求。Spot 实例请求是一次性或者持续性请求。在与请求关联的竞价型实例中断之后,Amazon EC2 会自动重新提交持续性竞价型实例请求。

  • EC2 实例再平衡建议 – Amazon EC2 发出实例再平衡建议信号,以通知您竞价型实例处于中断高风险。此信号使您有机会在现有或新的竞价型实例间主动再平衡工作负载,而无需等待两分钟的竞价型实例中断通知。

  • 竞价型实例中断 – 如果 Amazon EC2 需要回收容量,Amazon EC2 会将您的竞价型实例停止、停止或休眠。Amazon EC2 将提供竞价型实例中断通知,这会在实例中断之前为其提供两分钟的警告。

竞价型实例与按需型实例的主要区别

下表列出了竞价型实例与按需型实例之间的主要区别。

竞价型实例 On-Demand Instances

启动时间

只有竞价型实例请求处于活动状态并且有可用容量时才能立即启动。

只有发出手动启动请求并且有可用容量时才能立即启动。

可用容量

如果没有可用容量,则竞价型实例请求会继续自动发起启动请求,直到有可用容量为止。

如果在发出启动请求时没有可用容量,您会收到容量不足错误 (ICE)。

每小时价格

竞价型实例的每小时价格根据长期的供需情况而有所调整。

按需型实例的每小时价格是静态的。

再平衡建议 当实例处于较高的中断风险时,Amazon EC2 为正在运行的竞价型实例发出信号。 您可以决定何时中断个按需型实例(停止、休眠或终止)。

实例中断

您可以停止和启动由 Amazon EBS 支持的竞价型实例。此外,如果容量不再可用,Amazon EC2 可能会中断单个竞价型实例。

您可以决定何时中断个按需型实例(停止、休眠或终止)。

如何开始

您需要做的第一件事是为使用 Amazon EC2 进行设置。在启动竞价型实例之前,若拥有启动按需型实例的经验也会有所帮助。

Spot 基础知识

您可以直接使用 Amazon EC2 预置竞价型实例。也可以使用 Amazon 中的其他服务预置竞价型实例。有关更多信息,请参阅以下文档。

Amazon EC2 Auto Scaling 和竞价型实例

您可以创建启动模板或配置,以便 Amazon EC2 Auto Scaling 可以启动竞价型实例。有关更多信息,请参阅为具有容错要求且灵活的应用程序请求 Spot 实例Amazon EC2 Auto Scaling 用户指南 中的包含多种实例类型和购买选项的 Auto Scaling 组

Amazon EMR 和竞价型实例

有时候,在 Amazon EMR 集群中运行竞价型实例会非常有帮助。有关更多信息,请参阅 Amazon EMR 管理指南中的竞价型实例https://docs.amazonaws.cn/emr/latest/ManagementGuide/emr-instance-purchasing-options.html#emr-spot-instances什么时候应该使用竞价型实例

Amazon CloudFormation 模板

借助 Amazon CloudFormation,您可以使用 JSON 格式的模板创建和管理 Amazon 资源集合。有关更多信息,请参阅 EC2竞价型实例更新 – Auto Scaling 和 CloudFormation 集成

Amazon SDK for Java

可以使用 Java 编程语言来管理竞价型实例。有关更多信息,请参阅教程:Amazon EC2 Spot 实例教程:高级 Amazon EC2 Spot 请求管理

Amazon SDK for .NET

可以使用 .NET 编程环境来管理竞价型实例。有关更多信息,请参阅教程:Amazon EC2 竞价型实例

定价和节省

您可以为竞价型实例支付 Spot 价格,该价格由 Amazon EC2 设置,并根据竞价型实例的长期供求趋势逐步进行调整。您的竞价型实例将持续运行,直到您将其终止、容量不再可用或您的 Amazon EC2 Auto Scaling 组在横向缩减期间将其终止为止。

如果您或 Amazon EC2 中断正在运行的竞价型实例,您将按使用的秒数或整个小时付费,或者您不收取任何费用,具体取决于所使用的操作系统以及竞价型实例的中断方。有关更多信息,请参阅中断的竞价型实例的计费

查看价格

要查看各个Amazon区域和实例类型的当前(每 5 分钟更新一次)最低 Spot 价格,请参阅 Amazon EC2 竞价型实例定价页面。

要查看过去三个月的 Spot 价格历史记录,请使用 Amazon EC2 控制台或 describe-spot-price-history 命令 (Amazon CLI)。有关更多信息,请参阅竞价型实例定价历史记录

我们将可用区独立地映射到每个 Amazon 账户的代码。因此,不同账户的相同可用区代码 (如 us-west-2a) 可能会返回不同的结果。

查看节省

您可以查看使用单个 竞价型实例集 或所有竞价型实例时通过使用竞价型实例所节省的成本。您可以查看过去一小时或过去三天的节省,还可以查看每 vCPU 小时和每内存 (GiB) 小时的平均费用。节省是估算的,因为未算入您使用期间的计费调整,所以可能与实际的节省有所差异。有关查看节省信息的更多信息,请参阅通过购买竞价型实例实现节省

查看账单

您的账单提供了服务使用量的详细信息。有关更多信息,请参阅 Amazon Billing 用户指南中的查看您的账单