【運維監控】四款雲服務監控工具介紹:Nagios 、 ganglia、zabbix、onealert

在咱們平常的工做中,有時候須要監控和管理平臺的運行情況,而服務運行是否存在異常,是否有軟硬件bug等,均須要第一時間知道。對服務狀態瞭如指掌,是一個很重要的事情。那麼這個如何作到呢,咱們以前在進行私有云平臺研發過程當中,曾經用過一些工具,在必定程度上能幫到你們,這裏記錄一下,但願對有須要的同窗有幫助。前端

一些常見的監控、告警工具:Nagios 、 ganglia、zabbix、onealert ios

 
一.Nagios:
Nagios是一款開源的免費網絡監視工具,能有效監控Windows、Linux和Unix的主機狀態,交換機路由器等網絡設置,打印機等。在系統或服務狀態異常時發出郵件或短信報警第一時間通知網站運維人員,在狀態恢復後發出正常的郵件或短信通知。
 
 
功能介紹:
Nagios 能夠監控的功能有: 
一、監控網絡服務(SMTP、POP三、HTTP、NNTP、PING等);
二、監控主機資源(處理器負荷、磁盤利用率等);

三、簡單地插件設計使得用戶能夠方便地擴展本身服務的檢測方法;web

四、並行服務檢查機制;數據庫

五、具有定義網絡分層結構的能力,用"parent"主機定義來表達網絡主機間的關係,這種關係可被用來發現和明晰主機宕機或不可達狀態;安全

六、當服務或主機問題產生與解決時將告警發送給聯繫人(經過EMail、短信、用戶定義方式);服務器

七、具有定義事件句柄功能,它能夠在主機或服務的事件發生時獲取更多問題定位;微信

八、自動的日誌回滾;網絡

九、能夠支持並實現對主機的冗餘監控;app

十、可選的WEB界面用於查看當前的網絡狀態、通知和故障歷史、日誌文件等;運維

 

 
 
二.Ganglia:
Ganglia是UC Berkeley發起的一個開源集羣監視項目,設計用於測量數以千計的節點。Ganglia的核心包含gmond、gmetad以及一個Web前端。主要是用來監控系統性能,如:cpu 、mem、硬盤利用率, I/O負載、網絡流量狀況等,經過曲線很容易見到每一個節點的工做狀態,對合理調整、分配系統資源,提升系統總體性能起到重要做用。
 
大體介紹:

每臺計算機都運行一個收集和發送度量數據的名爲 gmond 的守護進程。接收全部度量數據的主機能夠顯示這些數據而且能夠將這些數據的精簡表單傳遞到層次結構中。正由於有這種層次結構模式,才使得 Ganglia 能夠實現良好的擴展。gmond 帶來的系統負載很是少,這使得它成爲在集羣中各臺計算機上運行的一段代碼,而不會影響用戶性能。全部這些數據屢次收集會影響節點性能。網絡中的 "抖動"發生在大量小消息同時出現時,能夠經過將節點時鐘保持一致,來避免這個問題。

gmetad能夠部署在集羣內任一臺節點或者經過網絡鏈接到集羣的獨立主機,它經過單播路由的方式與gmond通訊,收集區域內節點的狀態信息,並以XML數據的形式,保存在數據庫中。

由RRDTool工具處理數據,並生成相應的的圖形顯示,以Web方式直觀的提供給客戶端。

Ganglia包括以下幾個程序,他們之間經過XDR(xml的壓縮格式)或者XML格式傳遞監控數據,達到監控效果。集羣內的節點,經過運行gmond收集發佈節點狀態信息,而後gmetad週期性的輪詢gmond收集到的信息,而後存入rrd數據庫,經過web服務器能夠對其進行查詢展現。

 

 

 

 
三.zabbix:

zabbix(音同 zæbix)是一個基於WEB界面的提供分佈式系統監視以及網絡監視功能的企業級的開源解決方案。

zabbix能監視各類網絡參數,保證服務器系統的安全運營;並提供靈活的通知機制以讓系統管理員快速定位/解決存在的各類問題。

zabbix由2部分構成,zabbix server與可選組件zabbix agent。

zabbix server能夠經過SNMP,zabbix agent,ping,端口監視等方法提供對遠程服務器/網絡狀態的監視,數據收集等功能,它能夠運行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平臺上。

​zabbix(音同 zæbix)是一個基於WEB界面的提供分佈式系統監視以及網絡監視功能的企業級的開源解決方案。

zabbix能監視各類網絡參數,保證服務器系統的安全運營;並提供靈活的通知機制以讓系統管理員快速定位/解決存在的各類問題。

zabbix由2部分構成,zabbix server與可選組件zabbix agent。

zabbix server能夠經過SNMP,zabbix agent,ping,端口監視等方法提供對遠程服務器/網絡狀態的監視,數據收集等功能,它能夠運行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平臺上。

zabbix agent須要安裝在被監視的目標服務器上,它主要完成對硬件信息或與操做系統有關的內存,CPU等信息的收集。zabbix agent能夠運行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD, OS X, Tru64/OSF1, Windows NT4.0, Windows (2000/2003/XP/Vista)等系統之上。

zabbix server能夠單獨監視遠程服務器的服務狀態;同時也能夠與zabbix agent配合,能夠輪詢zabbix agent主動接收監視數據(agent方式),同時還可被動接收zabbix agent發送的數據(trapping方式)。

另外zabbix server還支持SNMP (v1,v2),能夠與SNMP軟件(例如:net-snmp)等配合使用。

zabbix環境搭建:
要想搭建一個Zabbix的工做環境,須要從服務器入手。與服務器通訊,管理員須要使用一個Zabbix前端界面,與Zabbix服務器和數據庫進行通訊。三個關鍵(界面、服務器和數據庫)能夠安裝在同一臺服務器上,可是若是你擁有一個更大更復雜的環境,將它們安裝在不一樣的主機上也是一個選項。Zabbix服務器可以直接監控到同一網絡中的設備,若是其餘網絡的設備也須要被監控,那還須要一臺Zabbix代理服務器。
 
關於zabbix的學習,能夠看看zabbix中文社區:  http://www.zabbix.org.cn/ ,這裏面對於安裝配置以及經常使用的優化等有較好的介紹。

zabbix的主要特色:

- 安裝與配置簡單,學習成本低

- 支持多語言(包括中文)

- 免費開源

- 自動發現服務器與網絡設備

- 分佈式監視以及WEB集中管理功能

- 能夠無agent監視

- 用戶安全認證和柔軟的受權方式

- 經過WEB界面設置或查看監視結果

- email等通知功能

等等

Zabbix主要功能:


- CPU負荷

- 內存使用

-磁盤使用

- 網絡情況

- 端口監視

- 日誌監視。

 

 
 
 
 
四.onealert:
SaaS模式的雲告警平臺,目前支持Nagios報警、Zabbix報警 、Cacti報警、Solarwinds報警 、VmWare報警、阿里雲報警、監控寶報警等...
在全部開源監控軟件裏面,Zabbix 的告警方式無疑是最棒的。告警的方式各式各樣,從 Email 告警到飛信、139/189郵箱、最後到微信甚至電話告警,接入存在各類問題以及困難,有沒有什麼軟件可以將他們All In one呢? 
關於onealert的介紹,也能夠看看這個文章: http://www.jianshu.com/p/88ed82372888

Zabbix傳統告警方法

Email:調用 sendmail 、sendEmail 等腳本經過 SMTP 發送郵件

飛信:飛信已經退出歷史舞臺,再也不有人使用

189/139:發送郵箱郵件至郵箱,郵箱將短信轉到用戶手機短信,存在必定的延遲

微信:須要申請一個微信公衆號,並接入API,整個流程比較複雜,並且存在會話時間限制

短信:衆多短信網關收費不一樣、穩定性也不肯定,須要經過API接入

傳統告警 VS OneAlert

在整個使用過程當中,得出了傳統告警方式的不足以及給個了 OneAlert 告警的功能,具體以下:

傳統告警方式的不足
  • Zabbix 郵件告警常常發不出去
  • 如需短信告警,要麼購買短信貓要麼購買短信 API,整個流程太麻煩
  • 微信告警須要申請公衆號以及 API 接入,並且會話有時間限制
  • 夜間的告警基本成爲一個擺設,試問誰能被微弱的短信聲叫醒
  • 阿里雲、騰訊雲、Zabbix 各類系統告警都須要單獨配置,工做繁瑣
  • 廣泛缺乏告警分析
  • 139/189 發送告警存在明顯的延遲
OneAlert告警功能
  • 告警 All In One,支持微信、郵箱、短信、APP、電話告警
  • 支持接入 Zabbix、Nagios、阿里雲、騰訊雲、監控寶等等告警信息
  • 靈活的分配策略,可靈活的分配告警信息發送給相關人員
  • 微信、郵箱、app 等告警方式所有免費
 
相關文章
相關標籤/搜索