【问题标题】:Auto scaling docker containers in AWS在 AWS 中自动扩展 docker 容器
【发布时间】:2018-04-27 18:54:46
【问题描述】:

借助 Cloud-watch 警报,我们可以使用 AWS 中的服务自动扩展功能扩展 docker 容器 - http://docs.aws.amazon.com/AmazonECS/latest/developerguide/service_autoscaling_tutorial.html

如果不使用 Cloud-watch,CPU/内存利用率达到 80%,是否还有其他选项可用于扩展 docker 容器?

注意:我们可以在 Kubernetes 中使用水平 pod 自动缩放来实现相同的效果。我想在没有 Cloudwatch 支持的情况下在 AWS 中实现同样的目标。

【问题讨论】:

  • 为什么不想使用 cloudwatch?

标签: amazon-web-services docker containers autoscaling


【解决方案1】:

您可以使用 AWS ECS 来扩展 docker 容器。它为 AWS 提供了一个原生编排平台,并支持 Kubernetes。

如果您决定使用 ECS 原生容器编排,它涉及一个学习曲线,您需要了解 ECS 特定术语,例如 Tasks、Services 等。Kubernetes 也是如此,您需要了解 Pods、Services 等。

在使用 ECS 时,它管理底层的复杂性,例如将容器放置在为容器集群提供动力的多个 EC2 上、支持负载均衡器集成以实现容器级负载均衡、通过替换不健康的容器来支持容错等。

还可以使用 ECS 附带的 AWS Fargate,其中集群中的底层节点完全由 AWS 管理,甚至不会暴露为集群供电的 EC2 的数量。这更像是您可以扩展和缩减大量容器,而无需担心将 EC2 分配给集群。但是,相比之下,它的价格昂贵,这限制了它在更具体的工作负载中的使用,这些工​​作负载需要更高级别的可扩展性和最低的可预测性,这证明了定价是合理的。

【讨论】:

  • ECS 自动伸缩使用 cloudwatch 警报。 OP 专门询问了不使用 CW。
  • 虽然 CF 自带默认选项,但您可以实现自己的监控并使用 ECS API 进行扩展。(查看更新的答案)
  • 这个答案没有为追求这个问题的人提供任何有意义的信息。
  • @troyfolger 感谢您的反馈。我已经用更多细节更新了答案。希望对您有所帮助。
猜你喜欢
  • 2015-08-21
  • 1970-01-01
  • 2021-04-16
  • 1970-01-01
  • 2018-08-20
  • 2017-05-28
  • 1970-01-01
  • 1970-01-01
  • 2022-12-19
相关资源
最近更新 更多