AWS ECS:Service Auto Scaling 会自动创建 EC2 实例吗?

AWS ECS: Will Service Auto Scaling create EC2 instance automately?

我对 Service AutoScaling 的自动工作方式感到困惑。它会自动创建 EC2 实例吗? 我创建它并将其添加到集群的服务中,但它不会创建 EC2 来放置我所需数量的任务。我的设置有什么问题吗?我检查了 [Events] 并看到了 "service s2 was unable to place a task because no container instance met all of its requirements. ",但是如果没有遇到实例,它不应该创建一个 EC2 吗?请给我一些建议,在此先感谢。

but shouldn't it create a EC2 if no instance met

不是真的。有两种类型的扩展策略:ECS 服务上的扩展策略和 ECS 集群上的扩展策略。实例是根据集群扩展策略添加的,这是您除了服务扩展策略之外还应该设置的内容。

AWS 有几个关于扩展 ECS 集群的详细教程: https://aws.amazon.com/blogs/compute/automatic-scaling-with-amazon-ecs/ https://docs.aws.amazon.com/AmazonECS/latest/developerguide/cloudwatch_alarm_autoscaling.html

AWS Elastic Container Services has two methods to deploy containers over aws environment

您无需担心容器编排(aws 中的任务)

  1. Fargate(在 N.Virginia 等少数地区可用)
  2. 在 ECS 中使用 EC2

我猜您正在使用第二个选项在 ECS 上部署应用程序,您可以在其中提供扩展的详细信息 tasks/containers 而不是 ec2 实例。

对于 ec2 实例的自动缩放,您应该查看 AWS 的 ASG。

就 AWS ECS 而言,您需要一些构建块,如下所示 -

  1. 集群
  2. 任务定义(任务的内存、网络和存储配置)
  3. 服务包含 EC2 实例配置
  4. 自动缩放策略如果你想自动缩放任务