如何通过暂时将 EC2 实例从 EC2 自动扩缩组中移除来对其进行故障排除或更新?

1 分钟阅读
0

我想暂时将 Amazon Elastic Compute Cloud (Amazon EC2) 实例从 Amazon EC2 自动扩缩组中移除,以便对它们进行故障排除或更新。

解决方法

如果不首先终止实例,则无法停止、启动或重启自动扩缩组中处于正在使用状态的 EC2 实例。使用以下方法之一进行故障排除,或者执行需要停止、启动或重启实例的更新:

暂时移除实例

您可以通过将实例设置为“备用”状态来将其暂时移除。要执行此操作,请参阅以下内容:

暂时移除实例(控制台)

暂时移除实例 Amazon 命令行界面 (Amazon CLI)

在启动备用状态后,执行故障排除或更新任务。完成故障排除后,将实例恢复到正在使用状态。

暂停终止和运行状况检查进程

  1. 打开 EC2 控制台,然后从导航窗格中选择自动扩缩组
  2. 选择受影响实例所在的自动扩缩组。
  3. 依次选择高级配置编辑
  4. 已暂停的进程下,选中终止运行状况检查旁边的复选框,然后选择更新
    重要事项:暂停终止运行状况检查进程。如果未选择运行状况检查,则实例会在停止或重启时显示为运行状况不佳。而且,当您恢复终止进程时,由于运行状况检查失败,自动扩缩功能将会替换实例。
  5. 完成故障排除或更新任务。
  6. 在“自动扩缩组”页面上,选择“自动扩缩组”。然后,向下滚动到“高级配置”并选择“编辑”
  7. 对于已暂停的进程,取消选中终止运行状况检查进程,然后选择更新

按照以下说明使用 Amazon CLI 暂停“终止”和“运行状况检查”进程:

**注意:**如果在运行 Amazon CLI 命令时收到错误,请确保您使用的是最新版本的 Amazon CLI

1.使用 aws autoscaling suspend-processes 命令暂停“自动扩缩”进程。在以下示例命令中,将 [X] 替换为您的自动扩缩组的名称。

aws autoscaling suspend-processes --auto-scaling-group-name [X] --scaling-processes Terminate HealthCheck

2.执行故障排除或更新任务。

3.使用 aws autoscaling resume-processes 命令恢复进程。在以下示例命令中,将 [X] 值替换为您的自动扩缩组的名称。

aws autoscaling resume-processes --auto-scaling-group-name [X] --scaling-processes Terminate HealthCheck

相关信息

暂停和恢复自动扩缩组的进程

AWS 官方
AWS 官方已更新 1 年前