AWS现货实例是显著降低EC2随需应变实例成本的极好方法,最多可降低90%。越来越多的公司(从中小企业到企业)已经开始利用现场实例来处理关键任务和生产工作负载。现货实例定价帮助他们极大地优化了云计算成本。
AWS现货实例代表AWS的过剩容量。作为云提供商,他们必须有备用容量来应对客户需求的激增。为了抵消闲置基础设施的损失,AWS以极大的折扣提供了这些多余的容量,以促进使用。这就是为什么与EC2按需定价相比,现货实例定价是如此实惠。
对于Amazon现货实例的一般看法是它们非常适合于web服务,集装箱的应用程序或其他无状态、容错的工作负载。
然而,在现实中,它们还可以用于更广泛的用例集,而不会对可用性或性能产生任何重大影响。下面是一些例子:
亚马逊EC2现货实例的折扣价格伴随着一个警告。AWS可以“拔掉插头”并终止现货实例,只需2分钟的警告。当AWS需要利用过剩容量为购买了预留实例、节省计划或按需实例的客户提供服务时,就会发生这些中断。
虽然AWS确实提供了“容量再平衡”信号,可能会通知您EC2现货实例有终止的风险,但AWS并不保证这些信号会足够早地交付给您,以便您采取行动。
以下是Amazon EC2可能中断现货实例的一些原因:
当一个实例被中断时,您可以选择三种可能的操作之一—终止spot实例(默认)、停止spot实例(使得可以使用相同的启动规范重新启动它)或休眠实例。
您可以在AWS的现货实例上找到现货实例定价定价页以及在现货实例顾问页面。这将帮助您确定与按需定价的EC2相比可以实现的节省。
关于现货实例价格的选择,出价高于默认的按需价格并没有真正的好处。
这是因为:
因此,您可以放心地将最大价格设置为AWS设置的默认值。
但是,如果您只想花费一个非常具体的金额,无论是低于按需费率,还是低于当前的现货实例费率,您都可以签出历史现货价格,并注明你所期望的价格。这样,您将只在实际市场价格与您的特定出价匹配或更低时运行您的EC2现货实例。
查看现货价格历史记录:
来源:AWS
您可以从现货实例的两个定价选项中选择一个:
Spot Fleet是一个现货实例的集合。它可以更容易地响应现场实例上的事件,例如实例终止,并提供中央管理,而不需要应用程序连续轮询现场实例。
您可以使用Spot Fleet API或CLI创建Spot Fleet请求。Spot Fleet请求包括所需的实例数量、实例类型、目标容量和最大价格。
EC2尝试维护目标容量,根据请求详细信息添加可用的现货实例。当现货实例终止时,现货舰队尝试使用可用的最低价格选项替换它们。
在AWS地方舰队使您能够管理具有不同的站点实例的大型组或舰队分配策略(即最低价格,多样化,容量优化等)以及许多其他选项,使其工作良好,需要大量的手动配置,设置和维护。
如果您正在寻找一种交钥匙解决方案,以便更轻松、更有信心地将更多工作负载转移到发现实例上,那么这里有一份可以使用的增值功能清单由NetApp发布。
| 用例 | 功能 | 自己动手 | Spot.io |
| 所有 | 可用性SLA | 没有一个 | 99.99%的可用性 |
| 集装箱的工作负载 | 集装箱驱动的自动缩放和箱子包装 | 需要大量配置。此外,r需要多个asg来容纳实例大小多样化。 | 优化装箱的交钥匙解决方案,b支持可变和动态实例大小/类型/生命周期,c基于Pod/任务需求的容器自动缩放。 |
| 有状态的工作负载 | 存储持久性 | 可以保存EBS卷。只有当容量在相同的市场上可用时,并且现货请求被定义为“持久的”,或者现货舰队启用了“维护”,才可能重新连接到替换实例。 | 主动识别终止允许跨实例类型和大小甚至az将EBS卷(相同状态)可靠地自动重新附加到替换实例。 |
| 所有 | 优雅的排水 | 只有2分钟的现场实例终止警告,应用程序和服务可能会中途中断。注意:AWS容量再平衡信号不保证提前到达,以便主动采取行动。 | 现场实例终止的早期预测允许优雅地排泄和自动地将工作负载重新定位到新实例。 |
| 所有 | 自动回退到随需应变 | 不支持 | 完全自动化的场景,没有可用的现场实例。 |
| 所有 | 自动返回按需发现实例 | 不支持 | 工作负载将自动移回随需随叫随到现货实例类型可用。 |
| 集装箱的工作负载 | Kubernetes和ECS的云原生成本分配 | 不支持 | 成本分摊及容器级别的显示通过命名空间、资源、标签和注释雷竞技rabet官网。 |
| 所有 | 主动使用可用的预订和储蓄计划 | 不支持 | 工作负载将始终优先运行在可用的AWS Savings Plans和预留实例上,并在适用时恢复到现货实例以增加节省。 |
| 集装箱的工作负载 | 垂直集装箱调整尺寸 | 需要额外的指标收集和手工分析。 | 对Pods和Tasks的CPU和内存消耗的实时测量为成本效益高的集群部署提供了需求。 |
| 集装箱的工作负载 | 可定制的空闲节点缓冲区,用于无法等待伸缩的工作负载 | 不支持 | 完全支持 |
| 集装箱的工作负载 | 多节点组集中管理 | 需要管理多个自动伸缩组,每个节点组一个。 | 单点管理,多点管理工作节点组,每个都有自己的发射规范。 |
| 集装箱的工作负载 | 声明性基础设施 | Pods的节点生命周期控制需要在每个节点组上手动配置标签和污点,以及在Pods上匹配公差。 | 通过使用单个标签,简单地从Pod规范中声明基础设施需求。 |
| 自动定量工作负载 | 实例自动恢复 | AWS提供回溯性恢复,在现场实例终止(提前2分钟通知)后,仅以“维护”状态进行恢复,并取决于可用性。 | 现场实例终止的主动检测触发器的部署的替换实例,用r适用于不同市场。 |
| 有状态的工作负载 | IP的持久性 | 仅在以下情况下支持实例或舰队分别定义为“持久的”或“维护的”。 | 全面支持,跨现货实例市场。 |
| 所有 | 优先计算池和网络子网优先级 | 可以配置一个结构化的、层次结构的优先级列表,但即使不是最优的,也会遵循精确的、定义的顺序。 | 能够在现场实例分配策略中优先考虑可用分区和实例类型,以动态地将工作负载与最优资源匹配。雷竞技rabet官网 |
| 所有 | 支持AWS服务和第三方集成 | 可通过自动伸缩组(ECS, EKS, Beanstalk)。 | 可与Beanstalk, EMR, CodeDeploy, OpsWorks, ELB/ALB, Route53, Chef, Jenkins, GitLab, Rancher, Docker Swarm, RightScale, D2iQ以及自动生成的Terraform, CloudFormation和JSON模板 |
| 有状态的工作负载 | 实例自动恢复 | 现场实例中断前2分钟通知,限制任何关闭过程的持续时间。此外,阿只恢复到同一现货实例市场。 | 高级的中断预测,允许优雅的终止和恢复到可选的点实例类型,甚至按需,确保最高的可用性 |
要使AWS EC2现货实例成为云成本优化策略的真正部分,请参阅我们的海洋产品页面Kubernetes和集装箱工作负载和我们的Elastigroup产品页面用于非容器应用。