我可以使用这些服务中的任何一个在要终止的实例上调用脚本以通知它即将终止吗?

can I use any of these services to call a script on the instance to be terminated to inform it of the pending termination?

我正在将 ASG 用于内部应用程序,该应用程序有时会比其他应用程序更忙。所有 运行 个 cron 实例可能需要一些时间才能完成(绝不会超过 25 分钟)。 当事情变得平静时,我需要能够检测到实例何时终止,以便我可以让任何 crons 完成并禁用任何新的 crons 触发。 我看到有可以使用 SNS、SQS 或 Lambda 触发的生命周期挂钩。我以前没有使用过这些服务 - 我可以使用这些服务中的任何一个在要终止的实例上调用脚本以通知它即将终止吗?

当触发终止您的实例的特定警报时,使用生命周期挂钩将终止保持约 25-26 分钟,并使用相同的警报触发 lambda 函数。在该 lambda 函数中,首先识别该 ASG 下的实例 运行ning(使用 boto3)并使用 paramiko(python 模块到 Linux 机器上的 运行 命令)库尝试发出终止实例中脚本的命令