跨多个AWS EC2映像的单个cron作业

时间:2016-04-21 06:15:36

标签: ruby-on-rails cron autoscaling aws-ec2

我们在EC2上运行Ruby on Rails应用程序并启用了自动缩放功能。我们一直用来管理cron。因此,具有主实例图像的新实例会在峰值上自动创建,并在流量较低时丢弃。但这也会将cron作业复制到新创建的实例中。

我们有一个特定的要求,我们希望将cron限制为单个实例。

我发现a gem看起来像处理这个特定的要求,但我对它持怀疑态度,原因是它是弹性豆茎而不再维持。

2 个答案:

答案 0 :(得分:1)

作为一种解决方法,您可以在cron中指定一个条件,指定cron作业应该根据在您的自动缩放组中选择单个实例的条件执行。例如,只有运行cron的最旧实例,或者只有具有"最低"的实例。实例ID,或任何您喜欢的条件。 您可以通过让实例调用AWS API来实现这一目标。

作为一个更合适的解决方案,您可以使用单个cronified lambda访问您的实例?现在可以按照此page

进行操作

答案 1 :(得分:0)

最好是设置保护范围。它可以防止在缩放事件期间终止实例。

您可以在此处找到有关AWS https://aws.amazon.com/blogs/aws/new-instance-protection-for-auto-scaling/

的更多信息