我需要在我的竞价实例被调度终止时运行一个清理脚本。我有两个终止原因:
是否有一种简单的方法来获取第二种情况的这样 2 分钟的通知?
也许警告将通过相同的 URL 可用?
- 竞价实例的价格超过了我的出价
- 由自动扩展组的缩放策略引起的缩减(基于 5 分钟内平均集群 CPU 使用率,随机实例将被终止)。
是否有一种简单的方法来获取第二种情况的这样 2 分钟的通知?
也许警告将通过相同的 URL 可用?
#!/bin/bash
while true
do
if [ -z $(curl -Is http://169.254.169.254/latest/meta-data/spot/termination-time | head -1 | grep 404 | cut -d \ -f 2) ]
then
logger "Running shutdown hook."
# Call your shutdown script here.
break
else
# Spot instance not yet marked for termination.
sleep 5
fi
done