来自亚马逊的自动缩放组的自终止EC2实例

时间:2016-01-13 21:25:05

标签: amazon-web-services amazon-ec2

我在EC2实例上运行自定义事务任务。在此实例上运行的特殊进程在许多条件下决定是否关闭实例。终止应该由实例本身完成,因为Autoscaling Group不知道数据处理何时完成。以下步骤是否符合AWS的理念?

  1. 使用选项创建AMI:“关闭行为:终止”。
  2. Autoscaling组使用选项“Protect From Scale In”创建一个新实例。
  3. EC2上的自定义流程调用命令:

    $ sudo shutdown -P now
    

    在适当的时间终止实例。

  4. 这是对的吗?或者也许AWS有一些工具可以做到这一点,例如。发出特殊信号以终止实例?

    谢谢

1 个答案:

答案 0 :(得分:0)

我相信这个过程有一个问题:

在步骤1中,“关闭行为:终止”选项不是AMI级别设置。对于在自动缩放组外部启动的实例,它是启动时间设置。

在Autoscaling Group中,没有选项可以使用“Shutdown behavior:Terminate”等效配置启动配置。据推测,ASG实例必须在事件规模期间终止。

简单的方法是让实例调用AWS CLI terminate-instances命令:

aws ec2 terminate-instances --instance-ids i-xxxxxxxx

您需要从AWS Metadata获取实例ID才能运行terminate-instances命令。

相关问题