輕量級(jí)服務(wù)器監(jiān)控工具
服務(wù)器監(jiān)控對(duì)于企業(yè)確保不同系統(tǒng)正常運(yùn)行至關(guān)重要。
隨著業(yè)務(wù)的增長(zhǎng),您的資源,勞動(dòng)力,服務(wù),系統(tǒng)和IT基礎(chǔ)架構(gòu)也開始增長(zhǎng)。因此,性能監(jiān)視解決方案對(duì)于觀察服務(wù)器的運(yùn)行狀況,活動(dòng)和功能非常重要。在本文中,我將討論用于監(jiān)視服務(wù)器的多種輕量級(jí)免費(fèi)工具。每個(gè)IT管理員都面臨這些挑戰(zhàn)–服務(wù)器崩潰,應(yīng)用程序緩慢,意外停機(jī),配置依賴項(xiàng),對(duì)內(nèi)存泄漏進(jìn)行故障排除等。為解決這些問題,需要IT監(jiān)視軟件/應(yīng)用程序。
Nagios和Zabbix是用于監(jiān)視整個(gè)基礎(chǔ)結(jié)構(gòu)的最受歡迎的監(jiān)視工具。使用這些工具,您可以監(jiān)視幾乎所有內(nèi)容–服務(wù)器性能,網(wǎng)絡(luò)性能以及協(xié)議,操作系統(tǒng),應(yīng)用程序,網(wǎng)站等。但是,如果您的基礎(chǔ)架構(gòu)不夠大,或者您的需求僅僅是監(jiān)視服務(wù)器性能,而不是使用功能強(qiáng)大的端到端工具,則可以使用重量輕的自托管軟件來監(jiān)視服務(wù)器。
Ward
Ward 提供了僅與服務(wù)器有關(guān)的最少/主要信息。它與所有流行的操作系統(tǒng)兼容。Ward使用OSHI(OSHI),這是一個(gè)免費(fèi)的Java庫,用于檢索操作系統(tǒng)和硬件信息。它共享諸如操作系統(tǒng)版本,內(nèi)存,處理器,磁盤和分區(qū),CPU使用率等信息。
儀表板有五個(gè)不同的部分:
處理器:名稱,利用率%,內(nèi)核數(shù),位數(shù),頻率
機(jī)器:操作系統(tǒng)及其版本,RAM%,RAM數(shù)量,RAM類型,當(dāng)前進(jìn)程數(shù)
存儲(chǔ):名稱,使用百分比,存儲(chǔ)大小,磁盤數(shù),虛擬內(nèi)存
利用率百分比:此部分顯示最近20秒內(nèi)處理器,內(nèi)存和存儲(chǔ)的可視化
Ward:顯示自Linux上次啟動(dòng)以來的正常運(yùn)行時(shí)間,以及Windows上的硬重置時(shí)間
要運(yùn)行Ward,您可以創(chuàng)建該項(xiàng)目的jar文件并運(yùn)行它,或者下載最新版本的jar文件并運(yùn)行它。您也可以在docker容器中啟動(dòng)Ward。
Netdata
Netdata是一個(gè)免費(fèi)的開源軟件,用于實(shí)時(shí)監(jiān)視系統(tǒng)和應(yīng)用程序。它可以在Linux,F(xiàn)reeBSD,macOS,docker容器,IoT設(shè)備上運(yùn)行。您可以在系統(tǒng),應(yīng)用程序或容器上安裝Netdata代理,它將實(shí)時(shí)提供所有性能和運(yùn)行狀況信息。
您可以通過在圖表上方拖動(dòng)來選擇CPU上面顯示的黃色圖表,并使用SHIFT +鼠標(biāo)滾輪放大/縮小,該區(qū)域?qū)⒌玫皆敿?xì)顯示。它可以輕松地與其他工具集成,例如Prometheus,AWS Kinesis,Graphite,MongoDB等。
Netdata功能:
快速簡(jiǎn)單的安裝
實(shí)時(shí)提供數(shù)據(jù)
能夠監(jiān)視每個(gè)節(jié)點(diǎn)1000個(gè)指標(biāo)
每個(gè)服務(wù)器可以自動(dòng)自動(dòng)收集多達(dá)10000個(gè)指標(biāo)
存儲(chǔ)每秒的歷史數(shù)據(jù)
儀表板的演示非常容易理解
使用現(xiàn)代指標(biāo)可視化工具識(shí)別異常超事實(shí)
無需專用資源即可運(yùn)行Netdata
Prometheus+Grafana
Prometheus是用于監(jiān)視系統(tǒng)指標(biāo)的開源工具,而Grafana是一個(gè)開源可視化平臺(tái)。一個(gè)集成的普羅米修斯和Grafana設(shè)置是一個(gè)強(qiáng)大的環(huán)境,高效地監(jiān)控服務(wù)器。Prometheus服務(wù)器會(huì)定期收集所有數(shù)據(jù),Prometheus成為Grafana的數(shù)據(jù)源,并且Grafana在儀表板上可視化所有指標(biāo)。您甚至可以在Grafana中選擇查詢要可視化的指標(biāo)。
Glances
Glances是用Python編寫的跨平臺(tái)監(jiān)視工具。它僅支持python 2.7或python> = 3.4。它使用python庫(psutil)收集所有系統(tǒng)信息。根據(jù)界面(移動(dòng),Web UI,終端)的大小,UI上顯示的信息將動(dòng)態(tài)更改。
概覽功能:
可通過終端,Web UI或API(XML-RPC服務(wù)器和RESTful JSON)進(jìn)行遠(yuǎn)程監(jiān)視
文件或數(shù)據(jù)庫中的可導(dǎo)出統(tǒng)計(jì)信息
只需一個(gè)命令即可輕松安裝-pip安裝概覽
適用于Glances的Docker容器
如果需要更好的可視化效果,可以將數(shù)據(jù)從Glances導(dǎo)出到InfluxDB并在Grafana上可視化該數(shù)據(jù)。
Linux Dash
Linux Dash是Linux系統(tǒng)的Web儀表板。Linux Dash的UI基于Angular構(gòu)建,并且多種語言支持服務(wù)器端。系統(tǒng)狀態(tài)選項(xiàng)卡顯示有關(guān)RAM使用率,CPU平均負(fù)載,CPU使用率,CPU和RAM進(jìn)程,光盤分區(qū),交換使用率,CPU溫度和Docker進(jìn)程的信息。它還提供了網(wǎng)絡(luò)級(jí),帳戶級(jí)和應(yīng)用程序級(jí)的信息。
Linux Dash功能:
還支持WebSocket以提供實(shí)時(shí)系統(tǒng)數(shù)據(jù)可視化
拖放UI
儀表板上的可自定義屏幕(最小化,擴(kuò)展,調(diào)整)
服務(wù)器端實(shí)現(xiàn)支持多種語言(Node.js,Python,Go,PHP)
Conky
Conky是最初為X-Window編寫的系統(tǒng)監(jiān)視器。目前,它可以在許多不同的平臺(tái)上運(yùn)行。您可以在X,Linux,Mac OS(使用X石英)和大多數(shù)BSD上運(yùn)行它。它使用簡(jiǎn)單的文本或總線進(jìn)度條以及使用不同字體和顏色的圖形窗口小部件顯示信息。
Conky功能:
300多個(gè)內(nèi)置對(duì)象以顯示系統(tǒng)狀態(tài)
非常簡(jiǎn)單的用戶界面
支持音樂播放器,例如Audacious,MPD
支持POP3和IMAP
可以使用腳本和外部程序顯示任何信息
結(jié)論
確實(shí)需要監(jiān)視服務(wù)器的性能。如果執(zhí)行不正確,則可能會(huì)導(dǎo)致性能和正常運(yùn)行時(shí)間問題,從而影響您的業(yè)務(wù)。但是,如果您使用監(jiān)視軟件解決方案來確保服務(wù)器性能良好,則無需擔(dān)心。
