Amazon ec2 让ECS每天创建一个实例
因此,基本上我有五项任务需要每天运行一次,而且过程通常很快Amazon ec2 让ECS每天创建一个实例,amazon-ec2,autoscaling,amazon-ecs,Amazon Ec2,Autoscaling,Amazon Ecs,因此,基本上我有五项任务需要每天运行一次,而且过程通常很快 我遇到的问题是,我不想让EC2整天都在运行,只为了使用它30分钟。有没有办法让ECS创建实例、运行任务并在第二天之前完成实例?以下是几个选项: 1。使用自动缩放组计划缩放 在自动缩放组中运行实例,并在不需要时使用基于时间的缩放将所需计数设置为0,在有任务要运行时将所需计数设置为1(或任意数字) 2。使用AWS实例调度程序 AWS实例调度程序允许您创建EC2开始-停止调度规则。在这种方法中,在dynamodb表中配置调度,为实例添加适当
我遇到的问题是,我不想让EC2整天都在运行,只为了使用它30分钟。有没有办法让ECS创建实例、运行任务并在第二天之前完成实例?以下是几个选项: 1。使用自动缩放组计划缩放 在自动缩放组中运行实例,并在不需要时使用基于时间的缩放将所需计数设置为0,在有任务要运行时将所需计数设置为1(或任意数字) 2。使用AWS实例调度程序 AWS实例调度程序允许您创建EC2开始-停止调度规则。在这种方法中,在dynamodb表中配置调度,为实例添加适当的标记,然后lambda函数将确保遵循调度 3。EC2基于挂起任务计数的启动-停止 安排lambda函数定期运行,以检测集群的挂起任务计数。如果它不是零,则启动实例。当没有挂起或正在运行的任务时,lambda还应该停止实例。您需要使用
descripeTasks
API来过滤具有lastStatus=PENDING
一些要点:
- 如果您的任务不需要很长时间来完成,那么(如果可用的话)可能是一个更好、更便宜的解决方案,可以在不担心服务器的情况下运行您的任务
- 您也可以使用或,但是上面的选项之一可能更简单,并且对于您的用例来说已经足够了
- 以下是几个选项:
1。使用自动缩放组计划缩放
在自动缩放组中运行实例,并在不需要时使用基于时间的缩放将所需计数设置为0,在有任务要运行时将所需计数设置为1(或任意数字)
2。使用AWS实例调度程序
AWS实例调度程序允许您创建EC2开始-停止调度规则。在这种方法中,在dynamodb表中配置调度,为实例添加适当的标记,然后lambda函数将确保遵循调度
3。EC2基于挂起任务计数的启动-停止
安排lambda函数定期运行,以检测集群的挂起任务计数。如果它不是零,则启动实例。当没有挂起或正在运行的任务时,lambda还应该停止实例。您需要使用
descripeTasks
API来过滤具有lastStatus=PENDING
一些要点:
- 如果您的任务不需要很长时间来完成,那么(如果可用的话)可能是一个更好、更便宜的解决方案,可以在不担心服务器的情况下运行您的任务
- 您也可以使用或,但是上面的选项之一可能更简单,并且对于您的用例来说已经足够了