跳至内容

如何对 EC2 Auto Scaling 组中的 Amazon EC2 实例进行故障排除?

1 分钟阅读
0

我想对 Amazon EC2 Auto Scaling 组中的 Amazon Elastic Compute Cloud (Amazon EC2) 实例进行故障排除。

解决方法

**注意:**如果您在运行 AWS 命令行界面 (AWS CLI) 命令时收到错误,请参阅 AWS CLI 错误故障排除。此外,请确保您使用的是最新版本的 AWS CLI

如果 EC2 Auto Scaling 组中的 EC2 实例处于 InService(正在使用)状态,您无法停止、启动或重启该实例。您只能终止实例。

要停止、启动、重启 EC2 Auto Scaling 组中的实例或对其进行故障排除,请使用以下方法之一。

暂时将该实例从自动扩缩组中移除

要从自动扩缩组中移除实例以便对其进行更新或故障排除,请将实例状态从 InService(正在使用)更改为 Standby(备用)

将该实例从自动扩缩组中分离

将该实例从自动扩缩组中分离,使其成为独立实例,以便执行故障排除操作。对实例进行故障排除后,请将该实例重新附加到自动扩缩组。

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

暂时暂停终止运行状况检查进程,自动扩缩组就不会终止未通过状态检查的实例。

要使用 Amazon EC2 控制台暂停进程,请完成以下步骤:

  1. 打开 Amazon EC2 控制台
  2. 在导航窗格中,选择 Auto Scaling groups(自动扩缩组)。
  3. 选择包含受影响实例的自动扩缩组。
  4. 选择 Edit(编辑)。
  5. Advanced configurations(高级配置)下,对于 Suspended processes(已暂停的进程),选择 Terminate(终止)和 HealthCheck(运行状况检查)。
    重要事项:您必须暂停终止运行状况检查进程。如果未选择运行状况检查,则当您停止或重启该实例时,它会变得不正常。在这种情况下,当您恢复终止进程时,由于运行状况检查失败,EC2 Auto Scaling 会替换实例。
  6. 选择 Update(更新)。
  7. 执行故障排除或更新操作。
  8. 返回到 Auto Scaling groups(自动扩缩组)页面。
  9. 选择包含受影响实例的自动扩缩组。
  10. 选择 Edit(编辑)。
  11. 对于 Suspended processes(已暂停的进程),清除 Terminate(终止)和 HealthCheck(运行状况检查)。
  12. 选择 Update(更新)。

要使用 AWS CLI 暂停进程,请完成以下步骤:

  1. 要暂停 EC2 Auto Scaling 进程,请运行以下 suspend-processes 命令:
    aws autoscaling suspend-processes --auto-scaling-group-name autoscalinggroupname --scaling-processes Terminate HealthCheck
    **注意:**请将 autoscalinggroupname 替换为您的 EC2 Auto Scaling 组的名称。
  2. 执行故障排除或更新操作。
  3. 要恢复进程,请运行以下 resume-processes 命令:
    aws autoscaling resume-processes --auto-scaling-group-name autoscalinggroupname --scaling-processes Terminate HealthCheck
    **注意:**请将 autoscalinggroupname 替换为您的 EC2 Auto Scaling 组的名称。

相关信息

暂停和恢复 Amazon EC2 Auto Scaling 进程

AWS 官方已更新 7 个月前