如何从实例本身的用户数据脚本中立即终止EC2实例



我有一些用户数据脚本,用于在我的EC2实例上配置一些应用程序。如果在脚本运行期间出现特定情况,我希望立即终止一个新实例

我已经在脚本中尝试了以下两个命令。但是,直到发出命令后10分钟以上,才会终止。

aws autoscaling terminate-instance-in-auto-scaling-group --instance-id $instanceid --no-should-decrement-desired-capacity

aws ec2 terminate-instances --instance-ids $instanceid 

有什么办法可以迫使终止合同的时间提前吗?

您可以简单地调用操作系统并告诉它停止实例:

sudo shutdown now -h

(-h告诉它"停止"虚拟硬件,这会向EC2实例发出信号,表明计算机现在已关闭,就像你的家用计算机在"关闭"命令后自行关闭一样。(

根据实例配置的关闭行为,它将进入StoppedTerminated状态。

我注意到您正在使用"自动缩放"。如果自动缩放注意到实例已停止/终止,它将自动启动替换。但是,可能需要几分钟的时间来检测并启动替换程序。

最新更新