上次更新时间:2020 年 6 月 25 日
为什么我的 Amazon Elastic Compute Cloud (Amazon EC2) 实例意外重启?
简短描述尽管很少发生意外重启,但是有几种原因可能会导致这种情况的发生。以下是最常见的原因:
实例的一项或两项状态检查失败。 托管您的实例的底层硬件出现故障,Amazon EC2 重启了该实例,以将其移至新的运行状况良好的硬件。 您的实例上发生了要求重启的计划维护。 服务器内部的用户或应用程序重启了实例。 解决方法您可以执行多项操作来确定实例重启的原因:
查看状态检查从控制台或 AWS 命令行界面 (AWS CLI) 查看实例的状态检查。如果指示状态检查失败,请参阅为什么我的 EC2 Linux 实例无法访问,并且一项或多项状态检查失败?
注意:如果在运行 AWS CLI 命令时收到错误,请确保您使用的是最新版本的 AWS CLI。
查看系统日志如果实例的状态检查未失败,则实例可能因操作系统级问题进行了重启。查看系统日志以确定发生了哪些错误。系统日志位于 /var/log/messages 或 /var/log/syslog 中,具体取决于您的操作系统发行版。
查看重启历史记录使用以下命令确定服务器内的用户或应用程序是否启动了重启:
# grep reboot /home/*/.bash_history
# grep reboot /root/.bash_history
# history | grep -i reboot
# history | grep -i init
# last reboot
查看 AWS CloudTrail 事件历史记录
从 Amazon EC2 控制台或通过 AWS CLI 启动的实例重启将显示在 CloudTrail 事件历史记录中。要查看这些事件:
-
打开 AWS CloudTrail 控制台。
选择事件历史记录。
从筛选条件下拉菜单中选择事件名称,然后输入 RebootInstances。
注意:您可以创建 Amazon CloudWatch 警报,以自动恢复遇到导致重启的底层硬件问题的实例。有关如何设置 CloudWatch 警报的信息,请参阅恢复您的实例。