我收到一则通知,指出托管我的 Amazon Elastic Compute Cloud (Amazon EC2) 实例的基础硬件性能出现降级。我需要怎么做?
简短描述
如果发生硬件故障,Amazon EC2 会将特定硬件标记为故障。在故障硬件的管理程序上运行的所有实例都会移至运行状况良好的硬件上。在向新硬件过渡期间,Amazon EBS 支持的实例将停止,由实例存储支持的实例也将终止。Amazon EC2 会通过电子邮件将通知发送到您的Personal Health Dashboard(个人运行状况控制面板),告知您硬件性能出现降级以及实例即将停止或终止。
注意:一旦实例的系统状态检查失败,从 Amazon EC2 Auto Scaling 组启动的实例可能会立即终止。如果发生这种情况,Amazon EC2 Auto Scaling 组将启动一个新实例来替代终止的实例。收到来自 Amazon EC2 的硬件降级通知时,您在控制面板中看不到原始实例。您可以查阅该实例的 AWS CloudTrail 日志文件以查看终止。有关如何在 CloudTrail 日志中检查实例的更多信息,请参阅如何在 CloudTrail 日志中搜索运行、停止、启动和终止 EC2 实例的 API 调用?
解决方案
如果您收到硬件降级通知,您可以使用 Amazon EC2 控制台或 AWS 命令行界面 (AWS CLI) 手动停止和启动实例。停止操作会将实例从故障硬件中删除。启动实例时,实例会在运行状况良好的硬件上启动。
**注意:**如果在运行 AWS CLI 命令时收到错误,请确保您使用的是最新版本的 AWS CLI。
停止和启动实例
**注意:**停止和启动不等同于重启。必须启动才能将实例迁移到运行状况良好的硬件。
重要提示:
- 此过程需要停止和启动您的 EC2 实例。实例停止然后再次启动后,实例存储数据会丢失。如果您的实例受实例存储支持或具有包含数据的实例存储卷,则在实例停止时数据将丢失。有关更多信息,请参阅确定实例的根设备类型。
- 如果您的实例是 Amazon EC2 Auto Scaling 组的一部分,或者您的实例由使用 AWS Auto Scaling 的服务(例如 Amazon EMR、AWS CloudFormation、AWS Elastic Beanstalk 等)启动,则停止实例可能会导致实例终止。在这种情况下,是否会发生实例终止取决于您的 Auto Scaling 组的实例缩减保护设置。如果您的实例是 Auto Scaling 组的一部分,请在开始执行解决步骤之前,暂时从 Auto Scaling 组中删除该实例。
- 停止和启动实例会更改实例的公共 IP 地址。在将外部流量路由到您的实例时,最佳做法是使用弹性 IP 地址而不是公共 IP 地址。
要停止和启动实例,请完成以下步骤:
- 打开 Amazon EC2 控制台,然后选择实例。
- 依次选择操作、实例状态、停止。
- 选择是,停止。
注意:如果实例卡在正在停止状态,可能需要强制停止实例。有关停止卡在正在停止状态的实例的更多信息,请参阅排查实例的停止问题。
- 再次选择实例。
- 依次选择操作、实例状态、开始。
- 选择是,开始。
注意:在通知中列出的停止或终止日期之前,硬件性能降级通知会始终显示在您的 Personal Health Dashboard(个人运行状况控制面板)中,状态为已完成。
(可选)为您的实例设置实例恢复
您可以创建 Amazon CloudWatch 警报,以自动恢复遇到基础硬件性能降级问题的实例。有关如何设置 CloudWatch 警报的信息,请参阅Recover your instance(恢复您的实例)。</p