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

1 分的閱讀內容
0

為什麼我的 Amazon Elastic Compute Cloud (Amazon EC2) Linux 執行個體會意外重新開機或重新啟動?

簡短描述

儘管很少意外重新開機或重新啟動,但有幾個原因可能會導致其發生。以下是最常見的原因:

  • 執行個體的一項或兩項狀態檢查失敗。
  • 託管執行個體的基礎硬體發生故障,因此 Amazon EC2 重新啟動執行個體,以將其移至運作狀態良好的新硬體。
  • 執行個體上發生需要重新啟動的排程維護
  • 使用者或伺服器內的應用程式已重新啟動執行個體。
  • 核心錯誤。如果遇到核心錯誤,請確保您的核心已完全更新。
    若要更新核心,請根據 Linux 作業系統 (OS) 和版本,執行下列其中一個命令或類似命令:
    • sudo yum update kernel
    • sudo zypper up kernel-default
    • sudo apt upgrade linux-image-aws

解決方法

您可以採取下列幾個動作,判斷執行個體重新啟動的原因:

檢視狀態檢查

從主控台或使用 AWS Command Line Interface (AWS CLI) 檢視執行個體的狀態檢查。如果指出狀態檢查失敗,請參閱為什麼我的 EC2 Linux 執行個體無法連線且無法進行其中一或兩項狀態檢查?

**注意:**如果您在執行 AWS CLI 命令時收到錯誤,請確定您使用的是最新版本的 AWS CLI

檢視系統日誌

如果執行個體狀態檢查成功,則可能是因 OS 層級問題導致執行個體重新啟動。檢閱系統日誌以判斷發生的錯誤。視您的 OS 發行版而定,系統日誌位於 /var/log/messages/var/log/syslog

如果執行個體狀態檢查失敗,您可以重新啟動執行個體,並使用主控台輸出來擷取系統日誌。檢閱主控台輸出日誌以對問題進行疑難排解。如需詳細資訊,請參閱擷取系統日誌

  1. 開啟 Amazon EC2 主控台
  2. 選取執行個體,然後選擇您的執行個體。
  3. 選擇執行個體狀態重新啟動執行個體。執行個體可能需要幾分鐘才會重新啟動。
  4. 驗證該問題是否仍存在。在某些情況下,重新啟動可能會解決該問題。
  5. 在執行個體處於執行中狀態時,選擇動作監控和故障診斷取得系統日誌
  6. 檢閱螢幕上顯示的日誌。尋找日誌中列出的錯誤 (如對 Linux 執行個體的系統日誌錯誤進行疑難排解中所述),以取得解決方法資訊。

檢視重新啟動歷史記錄

使用下列命令判斷使用者或伺服器內的應用程式,是否已起始重新啟動:

# 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 事件歷史記錄中。若要檢視這些事件,請執行下列操作:

  1. 開啟 AWS CloudTrail 主控台
  2. 選擇事件歷史記錄
  3. 從篩選條件下拉式清單中選取事件名稱,然後輸入 RebootInstances

**注意:**您可以建立 Amazon CloudWatch 警示,指出將會自動復原因基礎硬體問題導致重新啟動的執行個體。如需有關如何設定 CloudWatch 警示的資訊,請參閱復原執行個體

相關資訊

對狀態檢查失敗的執行個體進行疑難排解

狀態檢查的類型

AWS 官方
AWS 官方已更新 1 年前