当前位置: 首页 > 知识库问答 >
问题:

如何为使用计划任务且不使用服务的ECS群集设置自动扩展?

束建章
2023-03-14

我有一个ECS群集,我有一个ec2实例绑定到该群集,并且使用ECS控制面板上的“计划任务”功能将计划任务设置为每天运行。

此任务运行一堆容器,每个容器在内存中相对昂贵,并且当所有容器同时运行时,情况更加复杂。

我目前没有为ECS集群设置服务,我的理解是,对于我的目标,在某个间隔上运行设置的任务,不会使用服务。

AWS在ECS文档中对服务的定义说:

An Amazon ECS service enables you to run and maintain a specified number of instances of a task definition simultaneously in an Amazon ECS cluster.

既然这不是我想要的;相反,我只需要按计划的时间间隔运行一项任务,我不需要与我的ECS群集相关联的服务。

我的问题是如何为我的计划任务设置自动缩放?我能找到的ECS集群内自动扩展的唯一参考是创建自动扩展的ECS服务——这也是我不希望的(至少从我如何理解ECS服务的工作方式来看)。

我需要的是让我的 ec2 实例在运行计划任务时自动扩展,并根据任务运行的需要分配更多资源。我只需要从 ec2 控制面板中对 ecs 集群绑定到的特定 ec2 实例设置自动扩展,还是有其他方法可以直接从 ECS 执行此操作?

共有1个答案

富涛
2023-03-14

我想要;相反,我只需要在我收集的某个计划间隔上运行任务,我不需要绑定到我的 ECS 集群的服务。

对于上述用例,最好使用Fargate,您不会维护或担心自动扩展调度,所有您需要设置调度任务,AWS将处理您的任务所需的内存和其他资源,此外,您只需为ECS任务使用的资源付费,这与您为容器实例付费的EC2类型任务不同。

AWS Fargate 是适用于容器的无服务器计算引擎,可与 Amazon Elastic Container Service (ECS) 和 Amazon Elastic Kubernetes Service (EKS) 配合使用。Fargate 可让您轻松专注于构建应用程序。Fargate 消除了预置和管理服务器的需要,允许您为每个应用程序指定资源并为其付费,并通过设计应用程序隔离来提高安全性。

aws fargate

根据某个计划创建一个云监视规则,该规则将触发任务,确保容器在完成作业后退出,Fargate将自动停止容器。

调用ecs任务的cloudwatch事件规则

 类似资料:
  • 在此之前我问了一个问题。我的服务conifg是: 我编写了一个扩展mediator交易文件。该类返回文件名并向服务发送请求。服务没有输入消息。我要每天13:30的服务。我尝试添加新的计划任务。但是它不能工作?谁能告诉我如何设置这个计划任务? 我也不知道如何设置“固定服务器”。

  • 本文向大家介绍如何使用PowerShell启动任务计划程序的特定任务?,包括了如何使用PowerShell启动任务计划程序的特定任务?的使用技巧和注意事项,需要的朋友参考一下 要使用PowerShell启动任务计划程序的特定任务,我们需要使用Start-ScheduledTask 命令。 当我们运行上面的命令时,我们需要提供任务名称。 例如, 当您检查以上任务状态时, 示例 输出: 要在远程计算机

  • 问题内容: 我在Java文档中看到了这一点:ScheduledAtFixedRate,它说 如果该任务的任何执行遇到异常,将禁止后续执行 我不希望在我的应用程序中发生这种情况。即使看到异常,我也总是希望后续执行继续进行。我怎样才能从。 问题答案: 用try / catch包围Callable.call方法或Runnable.run方法… 例如: 请注意,捕获除编译器也告诉您的内容之外的其他内容(在

  • 我在使用spring Boot开发的Web应用程序中有一个预定的任务。我在tomcat集群上运行它,所以在X小时,计划的任务从每个节点开始。 我读到了:https://github.com/lukas-krecan/shedlock,所以我跟着指南走了,但它不起作用..以下是我所做的: 我在POM中包含了这些依赖项: 然后我把这个添加到我的方法中: 如何避免使用spring Boot同时执行多次任

  • 我正在尝试用ECS Fargate设置一个计划的任务,但我不知道为什么它没有运行。我可以使用确认任务正常工作,但当我试图按计划触发它时,得到的只是一堆没有任何解释的'failedinvocations'。 虽然我知道规则正在被触发,所以这是一个好的迹象。见下方截图: 但每次触发它时,只有一个“FailedInvocation”。安排规则如下: 谢谢 编辑:区域现在支持此操作。请参阅备注。

  • 问题内容: 我已经使用Spring Framework的注释创建了一个简单的计划任务。 现在,当不再需要时,我想停止此任务。 我知道在此方法开始时可能有一种方法可以检查一个条件标志,但这不会停止执行此方法。 Spring提供了什么来停止任务? 问题答案: 选项1:使用后处理器 为应停止调度的bean 提供并显式调用。 选项2:维护目标豆与其未来的映射 当必须停止对bean的调度时,可以查找该映射以