To Nha Notes | Nov. 30, 2022, 9:30 p.m.
Although unexpected reboots or restarts are rare, there are several reasons they might occur. The following are the most common reasons:
There are several actions that you can take to determine why your instance rebooted:
View the instance's status checks from the console or using the AWS Command Line Interface (AWS CLI). If a status check failure is indicated, see Why is my EC2 Linux instance unreachable and failing one or both of its status checks?
Note: If you receive errors when running AWS CLI commands, make sure that you’re using the most recent version of the AWS CLI.
If the instance didn't fail a status check, then the instance might have rebooted due to operating system-level issues. Review the system logs to determine what error occurred. The system logs are located at /var/log/messages or /var/log/syslog depending on your OS distribution.
If the instance fails a status check, you can reboot the instance to retrieve the system logs by using the console output. Review the console output logs to troubleshoot your issue. For more information, see Retrieve the system logs.
Use the following commands to determine if a user or an application inside the server initiated the reboot:
# grep reboot /home/*/.bash_history # grep reboot /root/.bash_history # history | grep -i reboot # history | grep -i init # last reboot
Instance reboots initiated from the Amazon EC2 console or through the AWS CLI appear in CloudTrail Events history. To view these events:
Note: You can create an Amazon CloudWatch alarm that automatically recovers instances experiencing underlying hardware issues resulting in reboot. For information on how to set up the CloudWatch alarm, see Recover your instance.
https://aws.amazon.com/premiumsupport/knowledge-center/ec2-instance-automatic-reboot-cause/