我的 OpsWorks 实例在关闭五分钟后自行启动 - 为啥?

Posted

技术标签:

【中文标题】我的 OpsWorks 实例在关闭五分钟后自行启动 - 为啥?【英文标题】:My OpsWorks instance starts itself five minutes after shutting down -- why?我的 OpsWorks 实例在关闭五分钟后自行启动 - 为什么? 【发布时间】:2015-11-23 06:35:12 【问题描述】:

编辑:我感觉这与 OpsWorks 有关。如何关闭在发现实例已停止时启动实例的 OpsWorks 功能?

我的 EC2 实例使用 cron 作业设置为定期自行关闭。但是在自行关闭五分钟后(这会导致它在 AWS 控制台中显示为“已停止”,根据需要),它又重新启动了!我不知道为什么。

更多细节:

我有一个 c4.xlarge,它有一个每 15 分钟运行一次的 cron 作业。该作业检查 Java 是否正在运行,如果没有,则自行关闭。这是 crontab 中的行:

*/15 * * * * pgrep java || /sbin/shutdown -h now

(不必要的细节:它被设置为 Jenkins 从站;当需要连接时,Jenkins 使用 AWS CLI 启动机器。运行作业后,Java 没有运行,我们关闭了机器,这样我们就不会为 c4.xlarge 支付全职费用。)

cron 作业有效。但五分钟后,该实例重新上线。查看系统日志,我一遍又一遍地看到:

Aug 28 14:30:01 tester1 CRON[2668]: (root) CMD (pgrep java || /sbin/shutdown -h now)
Aug 28 14:35:16 tester1 cron[1067]: (CRON) INFO (pidfile fd = 3)
Aug 28 14:35:16 tester1 cron[1125]: (CRON) STARTUP (fork ok)
Aug 28 14:35:16 tester1 cron[1125]: (CRON) INFO (Running @reboot jobs)

知道如何在它关闭后让它保持关闭吗?为什么会自己启动?

【问题讨论】:

您是否在/etc/sysctl.conf 中配置了一些东西来自动重启您的系统?喜欢kernel.panic 谢谢。事实证明我在 OpsWorks 中启用了自动修复功能。 【参考方案1】:

这可能是层级别的自动修复。如果它打开,它将在失败的情况下重新启动盒子。

【讨论】:

以上是关于我的 OpsWorks 实例在关闭五分钟后自行启动 - 为啥?的主要内容,如果未能解决你的问题,请参考以下文章

如何提高 OpsWorks 节点的启动时间?

Opsworks 实例无法启动:状态:start_failed:没有这样的食谱:apt

AWS opsworks deploy 在实例加入域后永远运行

如何启动基于负载的 opsworks 实例?

使用基于负载的实例时,Amazon OpsWorks 自定义说明书未更新

是否可以使用 AWS CLI 等到实例“在线”并完成 opsworks 的设置/配置步骤?