導讀 | Lightbot是一款由加拿大學生Danny Yaroslavski編寫的關於計算機編程的迷宮游戲,游戲的目標是讓機器人舉起所有的藍色瓷磚,當然它還會為孩子提供各種各樣的指導和提示,直到完成目標。 |
Zabbix
Zabbix是一個基於WEB界面的提供分布式系統監控以及網絡監控功能的企業級開源運維平台,也是目前國內互聯網用戶中使用最廣的監控軟件,85%以上用戶在使用Zabbix做監控解決方案,“入門容易、上手簡單、功能強大並且開源免費”是對Zabbix的最直觀評價。
優點:
- 支持多平台的企業級分布式開源監控軟件
- 安裝部署簡單,多種數據采集插件靈活集成
- 功能強大,可實現復雜多條件告警
- 自帶畫圖功能,得到的數據可以繪成圖形
- 提供多種API接口,支持調用腳本
- 出現問題時可自動遠程執行命令(需對agent設置執行權限)
缺點:
- 項目批量修改不方便
- 社區雖然成熟,但是中文資料相對較少,服務支持有限
- 入門容易,能實現基礎的監控,但是深層次需求需要非常熟悉Zabbix並進行大量的二次定制開發,難度較大
- 系統級別報警設置相對比較多,如果不篩選的話報警郵件會很多;並且自定義的項目報警需要自己設置,過程比較繁瑣
- 缺少數據匯總功能,如無法查看一組服務器平均值,需進行二次開發
- 數據報表需要特殊二次開發定義
Nagios
Nagios是一款開源的企業級監控系統,能夠實現對系統CPU、磁盤、網絡等方面參數的基本系統監控,以及 SMTP,POP3,HTTP,NNTP等各種基本的服務類型。另外通過安裝插件和編寫監控腳本,用戶可以實現應用監控,並針對大量的監控主機和多個對象部署層次化監控架構。
優點:
- 出錯的服務器、應用和設備會自動重啟,自動日志滾動
- 配置靈活,可以自定義shell腳本,通過分布式監控模式
- 支持以冗余方式進行主機監控,報警設置多樣
- 命令重新加載配置文件無需打擾Nagios的運行
缺點:
- 事件控制台功能很弱,插件易用性差
- 對性能、流量等指標的處理不給力
- 看不到歷史數據,只能看到報警事件,很難追查故障原因
- 配置復雜,初學者投入的時間、精力和成本比較大
Ganglia
Ganglia是加州大學伯克利分校發起的一個開源集群監控項目,設計之初是用於監控數以千計的網絡節點,Ganglia是一個跨平台可擴展的,高性能計算系統下的分布式監控系統。它已被廣泛移植到各種操作系統和處理器架構上。
優點:
- 適合監控系統性能,通過曲線很容易見到每個節點的工作狀態
- 可以自定義監控項,監控展示有表格和圖像兩種,支持手機版
- 部署方便,通過不同的分層管理上萬台機器,無需逐個添加配置
缺點:
- 沒有內置的消息通知系統
- 沒有報警機制,出現問題不能夠及時報警
Zenoss
Zenoss Core是Zenoss的開源版本,其商用版本為ZenossEnterprise,作為企業級智能監控軟件,Zenoss Core允許IT管理員依靠單一的WEB控制台來監控網絡架構的狀態和健康度。Zenoss Core的強大能力來自於深入的列表與配置管理數據庫,以發現和管理公司IT環境的各類資產,Zenoss同時提供與CMDB關聯的事件和錯誤管理系統, 以協助提高各類事件和提醒的管理效率。
優點:
- Zenoss比較出色的地方在於它的Dashboard,可以配置很多portlet
- 每個用戶的界面都是分開管理的,自定義dashboard不會影響其他用戶
- 強大監控功能支持服務器、路由交換、防火牆、存儲、數據庫、中間件監控
- 采用基於HBASE的opentsdb存儲任意時間段的數據
- 將狀態監控,性能監控,資源管理,良好的報告機制進行有機的整合
缺點:
- 對資源要求較高,即使只管理少數幾台設備,也需要消耗大量硬件及內存等附加資源
- 針對windows系統,開源版只提供SNMP,通過WMI檢測CPU,Disk,軟硬件和性能只在收費版提供
Open-falcon
Open-falcon是小米運維團隊從互聯網公司的需求出發,根據多年的運維經驗,結合SRE、SA、DEVS的使用經驗和反饋,開發的一套面向互聯網的企業級開源監控產品。
優點:
- 自動發現,支持falcon-agent、snmp、支持用戶主動push、用戶自定義插件支持
- 支持每個周期上億次的數據采集、告警判定、歷史數據存儲和查詢
- 高效的portal、支持策略模板、模板繼承和覆蓋、多種告警方式、支持callback調用
- 單機支撐200萬metric的上報、歸檔、存儲
- 采用rrdtool的數據歸檔策略,秒級返回上百個metric一年的歷史數據
- 多維度的數據展示,用戶自定義Screen
- 通過各種插件目前支持Linux、Windows、Mysql、Redis、Memache、RabbitMQ和交換機監控
缺點:
- 由於發布時間較短,很多基礎的服務監控插件(如Tomcat、apache等)還不支持,很多功能還在不斷完善中
- 由於缺少專門的支持,雖然有開放社區,但是解決問題的效率相對較低