為什麼我的 EC2 Linux 執行個體會自行重新開機或重新啟動?

2 分的閱讀內容
0

我想知道為什麼我的 Amazon Elastic Compute Cloud (Amazon EC2) Linux 執行個體會非預期地重新開機或重新啟動。

簡短說明

由於下列原因,您的執行個體可能意外重新開機或重新啟動:

  • 執行個體的狀態檢查失敗。
  • 託管執行個體的基礎硬體出現問題,Amazon EC2 重新啟動執行個體以將其移至運作狀態良好的硬體。
  • 執行個體的排程維護會啟動重新開機。
  • 使用者或伺服器內的應用程式已重新啟動執行個體。
  • 有核心錯誤。

解決方法

**注意:**如果您在執行 AWS Command Line Interface (AWS CLI) 命令時收到錯誤訊息,請參閱對 AWS CLI 錯誤進行疑難排解。此外,請確定您使用的是最新的 AWS CLI 版本

檢查您的查看 Health 儀表板

檢查 AWS Health 儀表板以了解執行個體重新開機事件,例如簡化的自動復原排程維護和淘汰。若要根據運作狀態通知採取行動,請重新排程已排程的事件,或手動停止並啟動執行個體

檢視狀態檢查

使用 Amazon EC2 主控台或 AWS CLI 檢視執行個體的狀態檢查。如果執行個體狀態檢查失敗,那麼請參閱為什麼我的 EC2 Linux 執行個體無法連線且無法進行狀態檢查?

檢視系統日誌

如果執行個體狀態檢查未失敗,則執行個體可能會因作業系統 (OS) 問題而重新啟動。若要對作業系統層級的問題進行疑難排解,請檢查 /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

檢查 CloudTrail 事件歷史記錄

您在 Amazon EC2 主控台或 AWS CLI 上啟動的執行個體重新開機會顯示在 AWS CloudTrail 事件歷史記錄中。檢查您的 CloudTrail 事件歷史記錄中是否有 RebootInstances 事件。

**注意:**當您建立 Amazon Machine Image (AMI) 時,依預設,NoReboot 參數會設定為 false。由於 Amazon EC2 會在建立影像之前自動將執行個體重新開機,因此重新開機會顯示在 CreateImages 記錄中,而不是記錄中 RebootInstances

若要自動復原因硬體問題而重新啟動的執行個體,請設定基於 Amazon CloudWatch 的動作復原

更新您的核心

**注意:**最佳做法是在更新執行個體的套件之前建立執行個體的 AMI 備份。此組態可讓您根據需要還原變更。

若要更新核心,請完成下列步驟:

  1. 若要檢查執行個體使用的核心版本,請執行下列命令:

    sudo uname -r
  2. 若要更新核心,請根據您的 Linux 作業系統執行下列其中一個命令:
    Red Hat Enterprise Linux (RHEL) 或Amazon Linux:

    sudo yum update kernel

    SUSE Linux Enterprise Server (SLES):

    sudo zypper up kernel-default

    Ubuntu:

    sudo apt upgrade linux-image-aws
  3. 若要將執行個體重新開機並使用新的核心,請執行下列命令:

    sudo reboot

相關資訊

故障狀態檢查失敗的 Amazon EC2 Linux 執行個體疑難排解

狀態檢查的類型

管理 AWS 使用者通知中的 AWS Health 通知

當更新導致 Amazon EC2 執行個體無法成功重新開機時,如何還原為已知穩定的核心程序?

AWS 官方
AWS 官方已更新 23 天前