“會發生什麼事?”伺服器效能監視器

“會發生什麼事?”伺服器效能監視器

在回顧了一些有關伺服器監控軟體的線程後,我最終提出了一個簡單的問題:

我應該使用哪種伺服器監控工具來自動檢測「異常」情況並提供如何修復這些情況的建議?

我尋找在安裝後檢查系統效能併計算一些平均負載值(記憶體、CPU 等)的軟體。當發生某些情況時(CPU 負載增加到 20%),它會嘗試檢測其原因。如果是apache,應該檢查訪問日誌。如果是 mysql,它應該檢查 mysql 日誌並告訴我發生了什麼事。這是因為某些用戶解碼了很多圖像,我想知道執行哪個命令、何時執行以及用戶名。磁碟使用情況、記憶體、進程數、執行緒數等也是如此。

理想情況下,該軟體應定期檢查系統並報告問題:PHP 錯誤日誌中的錯誤、過時的軟體包、安全漏洞。

換句話說,我正在尋找能夠保留我的簡單 Debian/Apache/PHP/MySQL 伺服器而不強迫我每天監控圖表的軟體。

答案1

與 Zabbix 相比 - 提到麥克斯韋- 是可敬的納吉奧斯(這是一個相對較新的分叉,伊辛加)。這個框架已經存在了十多年,並且非常穩定 - 唯一的缺點是安裝和配置,這比 Zabbix 這樣的商業公司支援的系統要耗時得多(尤其是第一次)。

當然,兩者在生態系統中都有自己的位置 - 所以我建議您都嘗試一下。不過,正如我在評論中提到的:您打算進行的監控類型越深入,您就越應該花費更多的精力,無論是實際編寫自己的插件/腳本,還是搜尋/下載/修改其他人的工作。

祝你好運!

答案2

類似的軟體有很多,需要注意的是,您應該在不同的主機上運行它,否則如果出現問題,您很可能不會收到通知。

舉個例子,我們使用 nagios(處理所有監控和警報,換句話說,它負責在需要操作員查看某些內容時喚醒某人)和 cacti(也可以進行警報,但我們只是使用它來收集和聚合各種指標,從網路流量到系統負載再到電子郵件垃圾郵件統計資料)。

當您收到警報(來自 nagios cacti zabbix 等)時,查看一些效能資料(cacti、zabbix,其他會這樣做)通常會幫助您診斷問題所在。

在通常的LAMP 堆疊上,您描述的兩種最常見的問題情況(至少根據我的經驗)是HTTP 或SQL 伺服器根本沒有回應或在合理的時間內沒有回應(nagios 探針將檢查這一點)或負載平均係統變得非常高。

這兩項檢查可能會發現 95% 的問題,但您還應該尋找許多其他內容 - 例如:

  1. apache 不斷地使用您配置的最大進程/線程數意味著您的伺服器無法跟上負載
  2. 系統工作“正常”,但 RAID 中的磁碟機發生故障(您不知道這種情況在幾個月內沒有被注意到的頻率 - 或至少在下一次磁碟故障之前;)

幾乎所有您能找到的產品都能夠監視/繪製您可以向它們扔的所有內容,除了它們包含的工具和無處不在的SNMP 之外,您通常還可以通過簡單的shell 腳本、短程序等來擴展它們。

答案3

札比克斯監控解決方案可以監控您想要的任何內容並相應地觸發操作,操作可以是例如執行處理日誌並在需要時發回結果的腳本。此外,當滿足一個或多個條件時,您也可以觸發一項操作(例如,日誌解析腳本的輸出顯示錯誤,CPU 負載超過 40%)。

答案4

Nagios安裝

Nagios 是主機和服務監視器,旨在在您的客戶、最終用戶或經理之前通知您網路問題。它被設計為在 Linux 作業系統下運行,但在大多數變體下也能正常工作。監控守護程式使用外部外掛程式對您指定的主機和服務執行間歇性檢查,這些外掛程式將狀態資訊傳回 Nagios。當遇到問題時,守護程序可以透過各種不同的方式(電子郵件、即時訊息、SMS 等)向管理聯絡人發送通知。

Nagios 具有許多功能,使其成為一個非常強大的監控工具。以下列出了一些主要功能: 監控網路服務(SMTP、POP3、HTTP、NNTP、PING 等) 監控主機資源(處理器負載、磁碟和記憶體使用情況、運行進程、日誌檔案等) 監控溫度等環境因素的規劃停機時間,用於在計劃停機期間抑制主機和服務通知簡單的插件設計,允許用戶輕鬆開發自己的主機和服務檢查能夠定義網路主機層次結構,允許檢測和區分正在運行的主機停機和無法存取的伺服器支援實施冗餘和分散式監控伺服器能夠透過Web 介面確認問題當服務或主機問題發生並解決時聯繫通知(透過電子郵件、尋呼機或其他使用者定義的方法) 可選的主機升級和服務通知到不同的聯絡人群組能夠定義在服務或主機事件期間運行的事件處理程序,以主動解決問題外部命令接口,允許透過使用事件處理程序對監控和通知行為進行即時修改、Web 界面和第三方應用程式在程式重新啟動時保留主機和服務狀態

相關內容