AWS ECS:是否可以通过 ALB 访问计划的 ecs 任务?

AWS ECS: Is it possible to make a scheduled ecs task accessible via ALB?

我当前的 ECS 基础设施工作方式如下:ALB -> ECS Fargate -> ECS 服务 -> ECS 任务。 现在我想用计划的 ECS 任务替换普通的 ECS 任务。但是我没有找到一种方法将计划的 ECS 任务连接到该服务,从而使其可以通过 ALB 访问。这不可能吗?

提前感谢您的回答。

计划的 ECS 任务是使用 RunTask API 启动的一次性任务,并且与 ALB 无关(因为它不是 ECS 服务的一部分)。您可能可以完成这项工作,但您可能需要通过找出任务的详细信息并将其添加到目标组来自己构建接线。我相信您需要做的(如果您希望 ECS 处理布线)是安排一个 Lambda 来增加服务中所需的任务数量。我也想知道这个用例是什么(也许还有其他方法可以实现)。计划任务通常是某种批处理作业,而不是需要连接到负载均衡器的 Web 服务。您的设想/最终目标是什么?

更新:我错过了非UI对调度所需数量任务的支持,因此实际上不需要 Lambda。

计划任务实际上更多的是运行完成给定任务然后退出的事情。

如果您想将 ECS 任务连接到负载均衡器,您应该 运行 将其作为服务的一部分。当 ECS 运行作为服务时,ECS 会为您处理将任务连接到负载均衡器。

您在评论中提到您的最终目标是 运行 每天特定时间的开发环境。您可以使用 ECS 服务和 scheduled auto-scaling 执行此操作。由于某些原因,此功能无法通过 AWS Web 控制台使用,但您可以通过 AWS CLI 或其中一个 AWS 开发工具包对其进行配置。您可以将它配置为在您不想要您的应用程序 运行ning 期间缩放到 0,并在您确实想要它 运行ning.

期间缩放到 1 或更多]