我是否可以设置AWS实例以在没有外部服务器和工具的情况下停止运行

时间:2017-09-09 15:54:32

标签: amazon-web-services amazon-ec2 cron

有许多AWS实例不需要一直运行。其中包括开发人员,测试和堡垒实例。当他们不使用它们以获得合理的成本节省时,阻止它们是合理的。

现在我想到一个简单的机制让机器在凌晨时分停止,因为我们知道它们不太可能在使用中。奖励积分可以在一段时间不活动后以合理的方式阻止他们。

为了让devops保持低调,我很乐意在构建实例时自动安装到crontab中,而不是每次我们启动新的开发,测试或堡垒实例时都要设置的东西。

2 个答案:

答案 0 :(得分:2)

根据Mark的正确答案进行简化。

要让一个实例在每晚的午夜停止,请将其放入您的crontab:

0 0 * * * sudo /sbin/shutdown -h now

答案 1 :(得分:2)

许多AWS用户不是让实例自行停止,而是创建一个定期查看EC2实例的 Stoppinator 应用程序,然后使用其标签来确定何时启动/停止实例

例如,您可以将工具标记为在工作日上午8点开启,并在工作日晚上10点关闭。 Stoppinator 可以是一个运行15分钟计划的Lambda函数,用于检查标记并采取适当的措施。

这样,您就不需要在实际实例上运行任何代码 - 您只需添加标记即可。您甚至可以编写一个默认行为,表示"如果没有Stoppinator标签且没有指示让实例保持24x7运行,则默认情况下在晚上8点停止。"