ECS实例缩放到0或从0开始

时间:2018-02-21 17:30:53

标签: amazon-ecs

我有一个运行1个任务的服务。该任务需要2个小时才能运行并且每天运行。我理想的情况是:

  1. 我将我的服务从0个所需任务更新为1个所需任务
  2. ECS认为,为了运行服务,我需要一个EC2实例。因此,它会旋转一个实例来运行任务。
  3. 任务完成后,将服务更新为0个所需任务。
  4. ECS发现我不需要实例来运行0个任务并将其关闭
  5. 使用ECS管理员看起来这是可能的,但实际上,当我从0-> 1任务扩展我的服务时,它只是抱怨没有实例来运行任务,而不是自动调整实例。我将集群的自动缩放策略设置为min = 0,desired = 1,max = 1但是没有区别。

    我想知道我的理想情景是否确实可行,或者是否有更好的方法来实现这一目标。

    提前致谢,

1 个答案:

答案 0 :(得分:0)

不幸的是,第2点和第4点对于ECS(EC2启动类型)不是正确的。默认情况下,它既不会启动EC2实例也不会终止该实例。

实际上,FARGATE比ECS(EC2 lauch型)更昂贵。但是对于您的用例而言,与ECS(EC2 lauch类型)相比,FARGATE会便宜得多[1]。

但是再次重申,FARGATE并不是最佳选择。根据您的用例,最佳选择是AWS Batch [2]。批处理将ECS用作后端,而使用批处理的主要优势在于,它还将执行您的用例中提到的步骤2和步骤4。

[1] https://aws.amazon.com/fargate/pricing/

[2] https://docs.aws.amazon.com/batch/latest/userguide/what-is-batch.html