【问题标题】:Alternative for built-in autoscaling groups for spot instances on AWSAWS 上 Spot 实例的内置自动扩展组的替代方案
【发布时间】:2016-10-04 04:06:44
【问题描述】:

我目前正在使用通过自动扩展组管理的 Spot 实例。但是,ASG 在与现场实例一起使用时存在许多缺点。例如,如果当前类型在所有可用区中都出现价格飙升,则它无法启动不同实例类型的实例。它甚至无法跨区域重新分配正在运行的实例数量(如果某个区域出现价格飙升,那么正在运行的实例数量将减少 30%。)

我可以运行任何可以替代内置 AWS Auto-Scaling 组的软件解决方案吗?我听说过 SpotInst 和 Batchly,但我不相信它们。基本上,我认为他们的商业计划包括被亚马逊收购并杀死,就像 ClusterK 发生的事情一样。这方面的证据是奇怪的定价政策和其他危险信号。我需要一些可以自我托管和依赖的东西。

【问题讨论】:

    标签: amazon-web-services autoscaling


    【解决方案1】:

    AWS 最近发布了适用于 Spot 队列的 Auto Scaling,它似乎非常适合您的用例。您可以根据所需的 vCPU 定义集群容量,选择您想要使用的实例类型及其权重,让 AWS 管理其余部分。 他们将以当前市场价格配置 Spot 实例,最高可达到您可以为每种实例类型定义的限制(如前所述),但集成了 Auto Scaling 功能。

    您可以在此处找到更多信息。 https://aws.amazon.com/blogs/aws/new-auto-scaling-for-ec2-spot-fleets/

    【讨论】:

    • 谢谢。我确实注意到了这一点并正在实施它。它解决了主要问题(重新平衡和维护所需的实例数),但这并不是一个完美的解决方案。不要让名称中的“Auto Scaling”欺骗您——它实际上与 Auto-Scaling 组完全不同。它不会将实例添加到负载均衡器。它不会从负载均衡器中删除实例。它不使用启动配置。所有这些基本功能都必须手动实现。
    • 我实际上是在写一个关于使用 Auto Scale for Spot Fleets vs ASG 与 Spot 价格的利弊的问题时写了这个回复。您可以在此处关注讨论:stackoverflow.com/questions/39350445/…
    【解决方案2】:

    您不太可能找到考虑到您想要的一切的东西。但是因为亚马逊的一切都是一个 API,所以你可以自己编写。有很多方法可以做到这一点。

    例如,您可以编写一个小脚本(bash、ruby、python 等),将 AWS CLI 用于获取价格,然后用于启动框。对于奖励积分,请使用本机 AWS 开发工具包库而不是掏空。 (这样处理错误等会稍微容易一些。)为了更多的加分,开源它,希望其他人改进它!

    此脚本可以在您的家用计算机上运行,​​也可以在 t1.micro 上运行,每月只需 5 美元。或者你可以在 node.js 中编写它,然后在 Lambda 上运行它,每月花费几美分。

    【讨论】:

      【解决方案3】:

      在 Spotinst,这些正是我们构建 Elastigroup 来解决的问题。 Elastigroup 支持在您想要的任意数量的实例类型和可用区(在一个区域内)上同时运行。这与保持生产可用性的几件事相结合:

      1. 我们的算法根据价格和可用性为最佳现货市场做出实时选择。

      2. 当中断发生时,我们会提前 15 分钟预测它,并采取所有必要的步骤来确保(并确保)您的团队的容量。

      3. 在所有市场都没有 Spot 可用性的极端情况下,我们只是退回到按需实例。

      我们与 AWS 建立了良好的关系,并与他们的技术和业务团队密切合作,为我们加入的客户提供尽可能好的体验。由于我们在您自己的 AWS 账户中管理资源,因此我不会将我们之间的关系作为一个问题开始。

      【讨论】:

      • 我很高兴你们还在。你还有那种奇怪的定价模式,告诉我我“节省”了多少,并以此为基础收费吗?
      • 嗨,Aleksandr,我们仍然有一个定价模式,可以帮助我们节省成本。它每秒计算您为这些点向 AWS 支付的实际价格,并将其与按需价格进行比较。然后我们取该增量的一小部分。如果您的小组按需运行或使用预留实例,我们将不收取任何费用。当然包括所有的集成和产品支持:)
      • 但如果我已经在使用 Spot 实例,您的定价模式会使我的成本翻倍,不是吗?
      • 这取决于您利用点的工作负载。 Elastigroup 允许您将点用于任何工作负载,包括有状态应用程序、大数据集群和托管容器服务,同时保证您的 SLA。您可以在我的 Quora 回答中阅读更多关于使用 Elastigroup 管理您的位置的好处:quora.com/…
      猜你喜欢
      • 2020-05-12
      • 2019-03-08
      • 1970-01-01
      • 2020-07-12
      • 1970-01-01
      • 1970-01-01
      • 2018-01-31
      • 2018-08-09
      • 2020-08-23
      相关资源
      最近更新 更多