成本与定价分析
降低AWS成本-Trek10方式
Trek10如何在不牺牲效率和生产力的情况下帮助客户优化成本。
自从我们最初在2018年发布这篇热门文章以来,我们一直在努力使之保持最新状态,因为公告已经改变了形势和结论。您可以在下面看到我们在一年前(即2019年1月)所做的更新。&2019年12月,还有一系列影响此分析的公告:
当然,还有更多因素…… 法尔盖特 Spot, 埃克斯群集自动缩放器, 精英现场自动排水,新的实例类型…但是我们将它们保存一整天!
AWS在2019年1月7日发布了 大幅降价 法尔盖特的价格降低了35-50%。对于具有以下功能的服务来说,这是个好消息 相对 高成本是它唯一的缺点之一。如果您有旧版应用程序,无法将其重新架构为无服务器版,则没有很好的借口不将其移至Fargate。
因此,当然,我们更新了以下分析以反映这些新价格(以及EC2实例类型和价格的最新变化,以保持公平竞争)。这是我们对旧定价的结论:
也许最重要的是上下限。在低端,切换到Fargate不可能仅在基础设施成本上节省大量材料:在大多数情况下,只有在保留率低于30-50%时,收支平衡才会实现。在高端方面,如果群集得到充分利用,Fargate至少会使您当前的计算成本增加一倍,如果您的容器保留率很高并保留所有EC2实例,则Fargate可能会使其增加两倍。
通过这些新的降价,故事得到了极大的改善……现在,使用Fargate节省价格是非常现实的可能性! 法尔盖特之间的收支平衡&现在,EC2的保留率为60-80%,因此,如果群集的利用率仅为50%,您可能会看到10-20%的成本 减少 与Fargate!在高端环境中,对于具有密集EC2预留实例的非常紧凑的群集,Fargate将使您的成本增加50-100%。 法尔盖特的情况现在很难被忽略:在动态负载的环境中,保留率超过60-80%极具挑战性,即使您能够做到,管理开销是否也可以保证?
在 最近的帖子 我讨论了AWS的新型容器管理服务 法尔盖特,尽管它是容器集群管理的一种引人注目的替代方案,但并不能带来“无服务器”的大部分优势。
就是说,尽管我们在Trek10上是无服务器的啦啦队,但我们认识到所有工作负载都无法立即转移到这种范例中。
查看我们最近的一个 认为FaaS 播客,我们将深入探讨其中的一些案例。
如果您处于这种情况下并且正在查看容器,则可能是在权衡Fargate的选项与AWS上的其他容器管理选项(例如 精英, 埃克斯或DIY群集。当然,Fargate并非适合所有人:您可能有非常特定的要求,这些要求迫使您进行主机级自定义。或者,也许您的规模使计算成本远远低于集群管理的总拥有成本。但是对于绝大多数公司而言,Fargate较低的管理开销可能会令人信服。但是,需要仔细权衡Fargate与EC2相关的额外成本。
在这篇文章中,我们将尝试为定价比较提供一些背景信息。换句话说,Fargate将使您付出什么代价,而(可能是额外的)成本值得您放弃集群管理?
法尔盖特每GB RAM和vCPU的成本更高,但是成本直接从已调配的容器RAM中计量&CPU(每个变量独立计量),您永远不必为未使用的群集容量付费。因此,将Fargate定价与EC2进行比较的关键变量是 集群预留率.
使用us-east-1定价并忽略ELB&存储,此图表显示在不同CPU情况下,对于上述m5a.xlarge场景,Fargate的成本低于或高于EC2集群的成本的百分比&X的RAM保留率& Y axes.
如您所见,在70-80%的预留率附近,Fargate的费用甚至接近EC2。在90-100%的高端预订价格下,Fargate的价格将开始上涨约35%。
这一点值得再次强调:在上面的比较中,它将 在EC2上运行的成本更高 除非您可以将集群保留率保持在70-80%以上,并且 如果您的ECS群集已打包好 (100%CPU&RAM使用率),Fargate会多花35%的费用。
对于c5实例系列,趋势非常相似,但收支平衡点实际上更高。该图表显示了与Fargate相比,c5.2xlarge实例的群集。大约85%的预留率可让您收支平衡,而对于100%压缩的集群(在动态环境中或多或少是无法实现的),Fargate的成本仅高出16%。
过去,我们在此分析中包括了EC2预留实例,因为它们适用于EC2,但不适用于Fargate,因此在此比较中使EC2有优势。但是随着2019年11月的介绍 计算储蓄计划,这种优势就消失了……储蓄计划同样适用于EC2和Fargate。因此,请务必通过储蓄计划发疯……但是无需在这里考虑它们。
也许最重要的是上下限。在低端,如果您不能以80%的速度保留ECS集群,则几乎可以肯定的是,转移到Fargate可以节省金钱。在高端方面,如果群集的利用率接近100%,则Fargate的成本将增加15%到35%之间。
因此,请停下来等待一分钟以考虑TCO: 与集群管理上花费的时间和精力相比,您的EC2计算成本如何?即使您可以实现100%的利用率,是否为减少管理开销而支付了15-35%的计算成本?
我们可以根据经验告诉您,您不应低估集群管理工作。除了配置,保护和修补主机VM之外,还必须在两个级别上进行扩展:容器自动扩展和群集自动扩展。几年来,容器扩展一直是AWS的一项功能,并且 最近引入了ECS集群自动扩展 处理主机实例的扩展。但是,您仍然必须全神贯注并配置这些服务,然后进行监视和调整。
避免这种额外的复杂性是Fargate最引人注目的方面之一。希望通过手头的定价分析,您现在可以权衡这些无形和人事成本与硬性基础架构成本,并为您的环境做出决定。