AWS Amazon EC2现货定价

时间:2011-03-04 02:02:45

标签: amazon-ec2 amazon-web-services

我想要非亚马逊回答这个问题......

看起来,通过现货实例定价,您可以按小时运行每小时22或23美分的实例,因为小时/天/月的历史图表显示现货价格永远不会超过每小时21(22?)美分。这就像是相同大小的实例的非预留实例成本的一半,甚至比保留实例的成本还要低于每小时。没有承诺。

我错过了什么,我对现货/买/卖实例机制有完全和完全的误解吗?或者这是一个廉价的方式来获得一个24/7的实例,而亚马逊有一堆额外的容量?

杰里米

4 个答案:

答案 0 :(得分:48)

不,你没有遗漏任何东西。我第一次看Spot时多次问过同样的问题,然后“为什么不是每个人都一直使用这个?”

那么有什么缺点?亚马逊保留随时以任何理由终止竞价型实例的权利。现在,正常的“按需”实例也可能随时死亡,但亚马逊会努力使它们保持在线状态,并在主机服务器需要关机的情况下提前(数天/数周)向客户提供警告用于维护。如果您在服务器上运行Spot实例,他们想要重新启动...他们只会将其关闭。在实践中,两者都非常可靠(但不是100%!!),并且许多角色可以在现场全天候运行而不会出现问题。只是不要向亚马逊抱怨你的Spot实例被关闭而你的整个数据库都存储在短暂的驱动器上......当然如果你在任何实例上这样做,你会冒很大(而且非常愚蠢)的风险。

有些公司通过Spot节省了大量资金。这是Vimeo的写入,节省50%,Pinterest一个节省60%+(54美元/小时= > 20美元/小时)。

为什么没有更多的公司使用Spot作为他们的实例?许多购买EC2实例时间的公司对价格不是很敏感,而且风险很大,特别是在停电时以及削弱工程努力的运营活动。他们不想处理节省一些钱的麻烦,特别是如果AWS费用不是一个重要的成本中心而不是个人。对于24/7实例,他们已经通过“预留实例”支付了1/2的价格,因此与完全定价的“按需”实例相比,节省的费用并不像它们看起来那么显着。现货与大客户并不完全相关。您几乎可以肯定,当客户达到Netflix的大小时,他们1)需要在容量规划上与亚马逊协调,因为您不能随心所欲地调整1/2数据中心,以及2)获取无论如何,大量的折扣使他们的使用成本降低到现货价格范围。此外,第一层成本削减是回收不是真正需要的硬件;在我上一家公司,一个人发现了一个错误,当我们循环通过盒子时,我们会“忘记”其中一些并关闭它,节省了100美元+ k /月(yikes)。一旦公司烧掉这些脂肪,他们就会开始关注Spot。

还有一个较少讨论的原因Spot没有被使用...... 这是一个不同的API 。想想这与“组织惯性”如何相互作用......在一家公司工作,该公司在EC2上花费$ XX / hr(来自一家花费$ XXXX / hr的公司),工程师用他们给出的工具开始实例。我们的厨师部署不知道如何与现场交谈。 Rightscale(prev place)默认启动按需实例。通过一定数量的工作,我可能会弄清楚如何制作一个现场实例,但是如果我的优先事项是让明天的角色XYZ启动并运行,为什么还要费心呢?我不打算为我的一个角色设计一个基于现场的解决方案,然后传福音为什么这是一个好主意;它必须是一个整个组织的决定。如果您阅读我上面提到的Pinterest案例研究,您会发现他们谈到将他们的整个部署从现在的54美元/小时迁移到20美元/小时。在行间读取,他们没有选择1-by-1启动Spot实例;有一天,他们醒来并在公司范围内做出“解决现场问题”的决定,并将他们的部署工具“迁移”到默认情况下使用Spot(可能支持保持数据库实例不在Spot的标志)。我无法想象亚马逊通过使Spot成为一个不同的API而不是普通EC2 API的旗帜而赚了多少钱;提示:这是船载......就像在,你可以买一条船然后用现金填充它直到它下沉。

所以,如果你愿意忍受稍高的风险和/或你对价格敏感...那么,是的,你绝对可以通过在Spot 24/7下运行你的服务来节省金钱。

请确保您已做好充分准备,意外丢失您的实例(即备份)....您需要为“按需”实例准备的内容不具有100.0%的正常运行时间任

以这种方式思考:

您可以获得99.5%的可靠性并支付半价

(我提出这些数字来传达这个想法,但他们可能与事实相差不远)。

答案 1 :(得分:8)

只要您的出价高于现货实例市场价格,您就可以继续运行您想要的任何现货实例,并且只支付市场价格。

但是,当市场价格高于您的出价时,您将丢失实例。没有任何警告。他们刚刚终止。虽然现货价格很少飙升,但是当它确实很快就会再次回落,对于许多应用来说,在没有变暖的情况下失去所有实例的可能性是不可接受的。你可以通过更高的出价来使自己与这种可能性隔离开来,但是你可能不得不支付那么多钱。

TL; DR:如果你的应用程序容忍突然终止,那么现场实例很棒。但使用它们存在风险。

答案 2 :(得分:4)

我认为这些答案有点遗漏......

您需要为您的工作量选择最<强>适当的定价并考虑到这一点来构建您的解决方案。 AWS提供3种定价类型:

  • 预留实例(低成本,高可靠性,但预付费用)
  • 按需实例(成本最高,可靠性高,但随时付费)
  • 竞价型实例(通常成本最低,但可能会意外终止)

预留实例 - 使用这些可以节省长时间运行/恒定/可预测工作负载的成本。

按需实例 - 将这些用于临时工作负载,例如开发/概念验证/无法预测的不可预测的工作量。

竞价型实例 - 将这些用于暂时性工作负载。确保应用程序的设计考虑到这一点(例如,将状态保持在某个永久性状态,并支持在以前的实例停止的情况下恢复新实例的能力)。

一个有用的设计模式可以是拥有一个“指示灯”实例,并使用自动缩放功能根据需要启用现场实例,如果现场实例无法显示,则会有一些狡猾带来按需实例。

TL; DR:竞价型实例适用于可以暂停和恢复的工作负载,但不是关键任务。它们可能受到非常高峰的影响(例如,N. California m2.2xlarge现货价格通常为0.11美元/小时,但仍然保持在10.00美元/小时的峰值!)。

答案 3 :(得分:1)

  

或者这是一种廉价的方式来获得一个24/7实例,而亚马逊有一堆额外的容量?

如果您的出价始终高于现货价格,请点击  我找不到任何其他明确的提及何时终止你的实例  我会假设它们会为那些愿意为实例支付全部费用的客户提供容量,但话说实际价格在技术上可能高于按需价格。