對 Amazon EC2 上的神秘伺服器凍結進行故障排除

對 Amazon EC2 上的神秘伺服器凍結進行故障排除

我有一個在 Ubuntu Natty/11.04 上執行 LAMP 的 Amazon EC2 執行個體。在過去幾個月內的三個不同場合,其中兩次是在過去兩週內,伺服器剛剛...停止了。它變得無響應並停止響應連接嘗試(SSH 或其他方式),但 EC2 控制面板仍將其報告為正在運行。每次我都必須透過控制台重新啟動實例,從而導致資料遺失。

所以,現在我正在嘗試診斷問題,但我一無所獲,我需要有關其他檢查內容的建議。 Syslog 不包含任何可疑內容 - 每次發生的最後一件事都是 munin 運行其常規的五分鐘 cronjob,儘管由於我不知道機器何時停止工作,所以我無法說 cron 日誌有多接近到冰點。之後,就好像機器根本沒有運行,直到重新啟動為止,之後 syslog 包含在我看來像正常 dmesg 輸出的內容。

交通量和凍結時間之間似乎沒有相關性。每個場合都遠離交通高峰時間。

我還可以查看哪些內容來嘗試找出導致這些問題的原因?可能是什麼問題?

附錄:伺服器在任何情況下當機時都沒有處於重負載狀態。 CPU 和記憶體的使用都很好且安全地處於限制範圍內。有足夠的可用磁碟空間(數十GB)。 Apache 或 MySQL 日誌中也沒有什麼奇怪的,它們只是在那時停止運行。這是一個中/高 CPU 實例。

答案1

您應該做的第一件事是設定一些監控,以便讓您知道伺服器何時變得無回應。您可以透過使用 pingdom 和/或 cloudwatch 檢查服務正常運作時間和系統統計資料(例如 cpu 和 ram)來完成此操作。兩者都有針對小型帳戶的免費方案。這將使您能夠在故障發生時了解情況,並且可以更輕鬆地找到日誌以了解當時發生的情況。通常這樣的事情可能是由於系統沒有足夠的資源引起的,你沒有提到你的實例的​​大小,但像微機這樣的東西可能只是透過一個簡單的cron 作業來佔用100% 的cpu,此時伺服器就會鎖定。

還要檢查系統日誌旁邊的其他日誌,檢查所有應用程式日誌,看看其中是否有任何日誌在系統崩潰之前拋出錯誤。

答案2

可能是主機上的網路卡損壞。

相關內容