【问题标题】:How to terminate ec2 instance 1 hour after uptime如何在正常运行时间后 1 小时终止 ec2 实例
【发布时间】:2018-12-31 15:54:35
【问题描述】:

我想在我的 ec2 实例启动后 1 小时到 1 小时 30 分钟(随机间隔)之间终止它。

我怎样才能做到这一点?

使用cron 作业或at 命令

下面是工作代码,但如果我可以使用crontab 而不是sleep 命令来做到这一点会很好。

sleep $(shuf -i 3600-5400-n 1) && aws ec2 terminate-instances --instance-ids $AWS_INSTANCE_ID --region ${region}

谢谢

【问题讨论】:

  • 您想向我们展示您目前尝试过的代码吗?
  • @JohnRotenstein 更新答案:)
  • 睡眠是实现结果的一种更简单的方法(活动部件更少)。使用terminate-instances 需要具有必要权限的角色,而sudo shutdown 将始终有效。

标签: shell amazon-ec2 cron


【解决方案1】:

当实例启动时,您可以运行一个脚本(例如通过用户数据):

  • 在所需的时间段内睡眠(例如sleep 3600
  • 是否关机(例如sudo shutdown -h now

请务必将您的终止行为设置为Terminate,否则实例将直接停止。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-05-28
    • 1970-01-01
    • 2017-11-24
    • 1970-01-01
    • 2020-03-26
    • 2022-12-15
    • 2018-12-12
    • 1970-01-01
    相关资源
    最近更新 更多