新聞中心
大家好,我是Echa。

最近有一部分做前端、后端、甚至還有運維粉絲們私信小編問道,用什么工具可以隨時知道服務器資源使用情況怎么樣,有時候網絡訪問加載很慢,應用程序性能如何,能扛住多少用戶訪問量等等,為了徹底搞清楚這系列的問題,小編百忙之中(白天也要上班),只能晚上在全文搜索資源,希望能一一解決粉絲們的需求。
今天小編給大家盤點了15個免費又實用的監(jiān)控開源項目,總有一款符合大家的需求,更希望能對大家所有幫助。通過監(jiān)控系統(tǒng)來跟蹤監(jiān)控服務器的性能、網絡流量、應用程序的性能以及用戶使用情況,可以幫助我們更好的了解IT環(huán)境運行狀態(tài),為系統(tǒng)運維,調優(yōu)提供支撐。
掌握一些好的監(jiān)控工具可以為我們更好的跟蹤服務器狀態(tài),持續(xù)優(yōu)化系統(tǒng)提供最佳的解決方案。接下來跟大家一一介紹這15個免費又實用的監(jiān)控開源系統(tǒng)。
全文大綱
- Zabbix - 一個流行的開源監(jiān)控解決方案
- Prometheus - 一個基于時間序列數據庫的開源監(jiān)控系統(tǒng)
- Grafana - 一個支持多平臺、可分析、可視化的開源平臺
- Nagios - 一個強大的開源工具,用于監(jiān)控系統(tǒng)、網絡和基礎設施
- Netdata -一個用于實時監(jiān)控系統(tǒng)和應用程序的性能和運行狀況的輕量級開源監(jiān)控工具
- Icinga - 一個開源的網絡監(jiān)控系統(tǒng)
- ELK Stack - 結合了Elasticsearch、Logstash和Kibana三種開源工具
- OpenNMS - 一個開源網絡管理應用程序工具
- Cacti - 一個基于Web的網絡監(jiān)控工具
- Collectd - 一個可執(zhí)行的守護進程工具
- InfluxDB- 一個能夠處理高寫入和高查詢負載的時間序列數據庫
- Sensu - 一個開源的監(jiān)控事件管道,提供自動化的監(jiān)控工作流程系統(tǒng)
- Telegraf - 一個用于收集、處理、聚合和編寫指標的代理,用于收集和發(fā)送各種系統(tǒng)指標工具
- Logstash - 是ELK Stack的一個重要組成部分,充當數據處理的管道。
- Fluentd - 一個數據采集和分析的開源工具,可用于建立統(tǒng)一的日志基礎設施
Zabbix - 一個流行的開源監(jiān)控解決方案
傳送門:https://www.zabbix.com/
Zabbix 官網
Zabbix是另一個流行的開源監(jiān)控解決方案,可以用于監(jiān)控網絡、服務器、應用程序等。該工具功能強大,可以有效地管理復雜網絡,讓運維人員能夠詳細了解和控制整個基礎設施的性能。雖然Zabbix的整個界面不夠簡練,但Zabbix強大的模板功能可以用來簡化整個監(jiān)控設置。
Zabbix 全方位監(jiān)控
Zabbix 是一個基于WEB界面的提供分布式系統(tǒng)監(jiān)視以及網絡監(jiān)視功能的企業(yè)級的開源解決方案。
zabbix能監(jiān)視各種網絡參數,保證服務器系統(tǒng)的安全運營;并提供靈活的通知機制以讓系統(tǒng)管理員快速定位/解決存在的各種問題。
zabbix由2部分構成,zabbix server與可選組件zabbix agent。
zabbix server可以通過SNMP,zabbix agent,ping,端口監(jiān)視等方法提供對遠程服務器/網絡狀態(tài)的監(jiān)視,數據收集等功能,它可以運行在Linux,Solaris,HP-UX,AIX,F(xiàn)ree BSD,Open BSD,OS X等平臺上。
Prometheus - 一個基于時間序列數據庫的開源監(jiān)控系統(tǒng)
Github:https://github.com/prometheus
Prometheus 官網
Prometheus 是一款基于時序數據庫的開源監(jiān)控告警系統(tǒng),非常適合Kubernetes集群的監(jiān)控。Prometheus的基本原理是通過HTTP協(xié)議周期性抓取被監(jiān)控組件的狀態(tài),任意組件只要提供對應的HTTP接口就可以接入監(jiān)控。不需要任何SDK或者其他的集成過程。這樣做非常適合做虛擬化環(huán)境監(jiān)控系統(tǒng),比如VM、Docker、Kubernetes等。輸出被監(jiān)控組件信息的HTTP接口被叫做exporter 。目前互聯(lián)網公司常用的組件大部分都有exporter可以直接使用,比如Varnish、Haproxy、Nginx、MySQL、Linux系統(tǒng)信息(包括磁盤、內存、CPU、網絡等等)。
Promethus有以下特點:
- 支持多維數據模型:由度量名和鍵值對組成的時間序列數據
- 內置時間序列數據庫TSDB
- 支持PromQL查詢語言,可以完成非常復雜的查詢和分析,對圖表展示和告警非常有意義
- 支持HTTP的Pull方式采集時間序列數據
- 支持PushGateway采集瞬時任務的數據
- 支持服務發(fā)現(xiàn)和靜態(tài)配置兩種方式發(fā)現(xiàn)目標
- 支持接入Grafana
另外,可以通過集成Grafana,提高Prometheus的可視化能力。
Prometheus 可視化截圖
Prometheus 可視化后臺
Grafana - 一個支持多平臺、可分析、可視化的開源平臺
Github:https://github.com/grafana/
Grafana 官網
Grafana是一個支持多平臺、可分析、可視化的開源平臺,經常與Prometheus等監(jiān)控工具結合使用。它支持基于監(jiān)控數據創(chuàng)建美觀、直觀的儀表盤。
Grafana可以將應用服務器的響應時間、并發(fā)數、CPU指標、內存指標等監(jiān)控數據轉化為可視化圖表,使運維人員更容易掌握運行趨勢或者系統(tǒng)問題。
Grafana 可視化截圖
Nagios - 一個強大的開源工具,用于監(jiān)控系統(tǒng)、網絡和基礎設施
傳送門:https://www.nagios.org/
Nagios 官網
Nagios是一款開源的免費網絡監(jiān)視工具,能有效監(jiān)控Windows、Linux和Unix的主機狀態(tài),交換機路由器等網絡設備,打印機等。在系統(tǒng)或服務狀態(tài)異常時發(fā)出郵件或短信報警第一時間通知網站運維人員,在狀態(tài)恢復后發(fā)出正常的郵件或短信通知。
Nagios 用于監(jiān)控系統(tǒng)、網絡和基礎設施。它是監(jiān)控工具的鼻祖,它的歷史可以追溯到1999年。這個強大的開源工具提供了包括對系統(tǒng)、網絡和基礎設施的監(jiān)控。Nagios可以持續(xù)監(jiān)控服務器,跟蹤服務器存在的潛在問題,在潛在問題轉變成為嚴重問題之前及時提醒運維人員。Nagios的主要優(yōu)勢在于它的可擴展插件庫和個性化定制能力,Nagios的插件庫可以顯著擴展工具的功能。但是,Nagios的學習曲線有些陡峭,對于初學者來說可能是一個缺點。
特性
1) 命令(Commands)
“命令”用于定義Nagios如何執(zhí)行某特定的監(jiān)控工作。它是基于某特定的Nagios插件定義出的一個抽象層,通常包含一組要執(zhí)行的操作。
2)時段(Time periods)
“時段”用于定義某“操作”可以執(zhí)行或不能執(zhí)行的日期和時間跨度,如工作日內的每天8:00-18:00等;
3)聯(lián)系人和聯(lián)系人組(Contacts and contact groups)
“聯(lián)系人”用于定義某監(jiān)控事件的通知對象、要通知的信息以及這些接收通知者何時及如何接收通知;一個或多個聯(lián)系人可以定義為聯(lián)系人組,而一個聯(lián)系人也可以屬于多個組;
4) 主機和主機組(host and host groups)
“主機”通常指某物理主機,其包括此主機相關的通知信息的接收者(即聯(lián)系人)、如何及何時進行監(jiān)控的定義。主機也可以分組,即主機組(host groups),一個主機可同時屬于多個組;
5) 服務(Services)
“服務”通常指某主機上可被監(jiān)控的特定的功能或資源,其包括此服務相關的通知信息的接收者、如何及何時進行監(jiān)控等。服務也可以分組,即服務組(Service groups),一個服務可同時屬于多個服務組;
Nagios 可視化截圖
Nagios XI
Nagios Log Server
Nagios Network Analyzer
Nagios Fusion
Netdata -一個用于實時監(jiān)控系統(tǒng)和應用程序的性能和運行狀況的輕量級開源監(jiān)控工具
Github : https://github.com/netdata/netdata
Netdata 官網
Netdata是一款Linux系統(tǒng)性能實時監(jiān)控工具。是一個高度優(yōu)化的Linux守護進程,可以對Linux系統(tǒng)、應用程序(包括但不限于Web服務器,數據庫等)、SNMP服務等提供實時的性能監(jiān)控。
Netdata用可視化的手段,將其被監(jiān)控的信息展現(xiàn)出來,以便你清楚的了解到你的系統(tǒng)、程序、應用的實時運行狀態(tài),而且還可以與Prometheus,Graphite,OpenTSDB,Kafka,Grafana等相集成。
Netdata是免費的開源軟件,目前可在Linux,F(xiàn)reeBSD和macOS以及從它們衍生的其他系統(tǒng)(例如Kubernetes和Docker)上運行。
Netdata特性
- 友好、美觀的可視化界面
- 可自定義的控制界面
- 安裝快速且高效
- 配置簡單,甚至可零配置
- 零依賴
- 可擴展,自帶插件API
- 支持的系統(tǒng)平臺廣
- 高實時性,Netdata及插件為C編寫,資源占用及效率都符合要求
- 不占系統(tǒng)IO,除日志系統(tǒng),Netdata不使用任何磁盤的IO資源,也可以通過配置文件禁用日志系統(tǒng)
- 不需要root權限
- 自帶Web服務
- 安裝便捷、開箱即用,不需要額外寫任何配置
- 動態(tài)圖表化顯示
- 告警系統(tǒng),通過配置文件,可以配置Netdata在某些指標達到閾值時進行告警
- 具體參考Netdata的GitHub以及官方文檔。
Netdata 可視化截圖
Icinga - 一個開源的網絡監(jiān)控系統(tǒng)
Github:https://github.com/Icinga
Icinga 官網
Icinga是一個開源的網絡監(jiān)控系統(tǒng),它可以檢查網絡資源的可用性,將網絡中斷信息及時通知用戶,并根據數據生成性能報告。這個工具有良好的可伸縮性和可擴展性,非常適合大型復雜環(huán)境。
在一個龐大的IoT設備網絡環(huán)境中,Icinga 可以跟蹤每臺設備,確保它們處于在線狀態(tài)并正常運行。但Icinga的設置可能有點復雜,第一次使用的用戶需要花點時間。
Icinga 可視化截圖
ELK Stack - 結合了Elasticsearch、Logstash和Kibana三種開源工具
Github:https://github.com/elastic
ELK Stack 官網
“ELK”是三個開源項目的首字母縮寫,這三個項目分別是:Elasticsearch、Logstash 和 Kibana。
Elasticsearch 是一個搜索和分析引擎。Logstash 是服務器端數據處理管道,能夠同時從多個來源采集數據,轉換數據,然后將數據發(fā)送到諸如 Elasticsearch 等“存儲庫”中。Kibana 則可以讓用戶在 Elasticsearch 中使用圖形和圖表對數據進行可視化。
在 ELK Stack 這個生態(tài)圈慢慢發(fā)展過程中,加入了一個新成員 Beats(Beats是負責單一用途數據采集并推送給Logstash或Elasticsearch的輕量級產品),就更名為 Elastic Stack
Elastic Stack 是 ELK Stack 的更新?lián)Q代產品。
所以,Elastic Stack技術棧的功能為,將系統(tǒng)、網絡、應用系統(tǒng)日志等各種日志及相關數據進行收集、過濾、轉換、然后進行集中存放并可用于實時檢索、分析和展示。
ELK Stack 可視化截圖
OpenNMS - 一個開源網絡管理應用程序工具
傳送門:https://www.opennms.com/
OpenNMS是由許多個人及組織,在OpenNMS軟件專案這支大旗下,所共同打造的網絡管理系統(tǒng)。從最初到2002年,程序代碼是由Oculan Corporation開發(fā)并以GPL釋出,后來后案的管理移交給 Tarus Balog。
OpenNMS是一個開源網絡管理應用程序,提供自動發(fā)現(xiàn)、事件管理、通知管理、性能檢測和服務保證等功能。例如,OpenNMS可以監(jiān)控核心網絡設備,并提醒高延遲鏈路或故障設備等問題。
Cacti - 一個基于Web的網絡監(jiān)控工具
傳送門:https://www.cacti.net/
Cacti是一個基于Web的網絡監(jiān)控工具,它使用RRDTool來存儲和顯示網絡統(tǒng)計數據。它提供了快速的輪詢器、先進的圖形模板以及多種數據采集的方法。
如果網絡中的設備類型比較多,Cacti的SNMP支持從各種網絡設備中提取指標,并以易于理解的圖形顯示指標信息。但Cacti的主要缺點是用戶界面并不怎么直觀。
Collectd - 一個可執(zhí)行的守護進程工具
Github:https://github.com/collectd/collectd
Collectd 官網
Collectd是一個可執(zhí)行的守護進程,它可以定期收集系統(tǒng)和應用程序性能指標,并存儲這些數值。這個工具它非常輕量級,幾乎可以在任何系統(tǒng)上運行。
例如,Collectd可以用來監(jiān)視小型家庭網絡,并收集網絡延遲、帶寬使用和設備狀態(tài)相關的數據。將Collectd與Grafana等可視化工具結合使用,可獲得更加完整的監(jiān)控解決方案。
InfluxDB- 一個能夠處理高寫入和高查詢負載的時間序列數據庫
Github:https://github.com/influxdata/influxdb
InfluxDB 官網
InfluxDB 其實是一個能夠處理高寫入和高查詢負載的時間序列數據庫,旨在存儲大量帶時間戳的數據,它的高性能結構可以處理大量的寫入和查詢負載,支持存儲、分析一段比較長時間內的趨勢數據。
因此,InfluxDB可以成為監(jiān)控應用程序、實時分析等的理想選擇。
例如:我們要跟蹤網站的用戶參與度,InfluxDB可以存儲包括點擊率、跳出率和停留時間等相關指標。這為我們提供了一個用戶行為隨時間變化的全面數據視圖。
另外,由于InfluxDB本質是個數據庫,為了便于分析,可以與Grafana結合在一起實現(xiàn)監(jiān)控數據可視化。
InfluxDB 可視化截圖
Sensu - 一個開源的監(jiān)控事件管道,提供自動化的監(jiān)控工作流程系統(tǒng)
Github:https://github.com/sensu/
Sensu 官網
Sensu是一個開源的監(jiān)控事件管道,提供自動化的監(jiān)控工作流程。Sensu強大的框架能夠用于各種小型、大型云基礎實施,方便用于觀察、自動化和控制。特別適合用于云基礎設施。
例如,在一個多個不同服務的大型云環(huán)境中,Sensu不僅可以監(jiān)控這些服務的狀態(tài),還可以自動響應類似自動重新啟動失敗等服務的事件,
Telegraf - 一個用于收集、處理、聚合和編寫指標的代理,用于收集和發(fā)送各種系統(tǒng)指標工具
Github:https://github.com/influxdata/telegraf
Telegraf 官網
Telegraf是一個用于收集、處理、聚合和編寫指標的代理,用于收集和發(fā)送各種系統(tǒng)指標。它是InfluxData平臺的一部分(InfluxDB也是InfluxData的一部分)。
假如需要監(jiān)視在不同平臺上運行的幾個不同應用程序的性能。那么可以使用Telegraf從每個應用程序中收集指標并將其存儲到InfluxDB,從而創(chuàng)建統(tǒng)一的監(jiān)控平臺。Telegraf簡單且靈活,但它也只是一個日志指標代理。
Logstash - 是ELK Stack的一個重要組成部分,充當數據處理的管道。
Github:https://github.com/elastic/logstash
Logstash 官網
Logstash是ELK Stack的一個重要組成部分,充當數據處理的管道。它可以從幾乎任何類型的源獲取數據、動態(tài)轉換數據并將數據發(fā)送到目的地。
假如我們要監(jiān)控來多個系統(tǒng)(如Web服務器,安全設備和數據庫),Logstash可以收集所有這些系統(tǒng)的日志,將收集到的數據以統(tǒng)一的格式發(fā)送到Elasticsearch。這使得分析和故障排除更加容易。Logstash雖然強大,但Logstash需要消耗一定的資源,如果您在較大的環(huán)境中使用Logstash,需要定期監(jiān)控性能和微調,以避免資源浪費。
Fluentd - 一個數據采集和分析的開源工具,可用于建立統(tǒng)一的日志基礎設施
Github:https://github.com/fluent/fluentd
Fluentd 官網
Fluentd是一個數據采集和分析的開源工具,可用于建立統(tǒng)一的日志基礎設施。支持從Web服務器、數據庫和應用程序等各種來源收集日志,并以多種格式輸出。并且還可以將日志和報告可以發(fā)送到Elasticsearch。
總結
以上列舉的15個免費又實用的監(jiān)控工具各有優(yōu)缺點,選擇合適的系統(tǒng)監(jiān)控工具取決于具體的運行環(huán)境和對監(jiān)控的要求。另外,在實際生產環(huán)境中,工具無法解決所有的問題,但是一個好的工具可以為我們提供最佳的解決方案。
名稱欄目:盤點15個免費又實用的監(jiān)控開源項目
當前路徑:http://m.fisionsoft.com.cn/article/djphcso.html


咨詢
建站咨詢
