Amazon EC2在自动缩放服务终止时通知实例

我需要知道什么时候自动缩放应该closures一个实例,因为我希望这些实例注册自己并从给定的服务中注销自己。
我知道自动缩放可以随时启动/停止任何实例,所以我需要通知实例什么时候会closures。

有没有实现这种行为?

我还没有find通过CLI来完成整个过程,因为亚马逊似乎没有将SQS服务添加到其用于Linux的api工具。 但是,是的,这是可能的,它并不是太困难。

  1. login到AWS控制台
  2. 点击SNS标签

    • 创build一个新的话题
    • 复制主题ARN示例:arn:aws:sns:us-east-1:############:mytopic
    • 为您想要的任何协议创build新的订阅(HTTP,电子邮件,短信,SQS)
  3. 使用命令行工具或其他一些接口运行下面的命令。 运行此命令后,所有通知将使用定义的协议发送。

as-put-notification-configuration <auto-scaling-group> -t <topic-arn> -n autoscaling:EC2_INSTANCE_LAUNCH,autoscaling:EC2_INSTANCE_TERMINATE

我build议先将它们发送给SQS,然后再发送给您的应用程序。 将消息存储在队列中并从中读取它更安全一些。 SQS的唯一问题是它要稍微复杂一些,但是在你使用的几乎所有的语言中都有大量关于SQS的文档和一个好的API。