在咱們平常的工做中,有時候須要監控和管理平臺的運行情況,而服務運行是否存在異常,是否有軟硬件bug等,均須要第一時間知道。對服務狀態瞭如指掌,是一個很重要的事情。那麼這個如何作到呢,咱們以前在進行私有云平臺研發過程當中,曾經用過一些工具,在必定程度上能幫到你們,這裏記錄一下,但願對有須要的同窗有幫助。前端
一些常見的監控、告警工具:Nagios 、 ganglia、zabbix、onealert ios
三、簡單地插件設計使得用戶能夠方便地擴展本身服務的檢測方法;web
四、並行服務檢查機制;數據庫
五、具有定義網絡分層結構的能力,用"parent"主機定義來表達網絡主機間的關係,這種關係可被用來發現和明晰主機宕機或不可達狀態;安全
六、當服務或主機問題產生與解決時將告警發送給聯繫人(經過EMail、短信、用戶定義方式);服務器
七、具有定義事件句柄功能,它能夠在主機或服務的事件發生時獲取更多問題定位;微信
八、自動的日誌回滾;網絡
九、能夠支持並實現對主機的冗餘監控;app
十、可選的WEB界面用於查看當前的網絡狀態、通知和故障歷史、日誌文件等;運維
每臺計算機都運行一個收集和發送度量數據的名爲 gmond 的守護進程。接收全部度量數據的主機能夠顯示這些數據而且能夠將這些數據的精簡表單傳遞到層次結構中。正由於有這種層次結構模式,才使得 Ganglia 能夠實現良好的擴展。gmond 帶來的系統負載很是少,這使得它成爲在集羣中各臺計算機上運行的一段代碼,而不會影響用戶性能。全部這些數據屢次收集會影響節點性能。網絡中的 "抖動"發生在大量小消息同時出現時,能夠經過將節點時鐘保持一致,來避免這個問題。
gmetad能夠部署在集羣內任一臺節點或者經過網絡鏈接到集羣的獨立主機,它經過單播路由的方式與gmond通訊,收集區域內節點的狀態信息,並以XML數據的形式,保存在數據庫中。
由RRDTool工具處理數據,並生成相應的的圖形顯示,以Web方式直觀的提供給客戶端。
Ganglia包括以下幾個程序,他們之間經過XDR(xml的壓縮格式)或者XML格式傳遞監控數據,達到監控效果。集羣內的節點,經過運行gmond收集發佈節點狀態信息,而後gmetad週期性的輪詢gmond收集到的信息,而後存入rrd數據庫,經過web服務器能夠對其進行查詢展現。
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的主要特色:
- 安裝與配置簡單,學習成本低
- 支持多語言(包括中文)
- 免費開源
- 自動發現服務器與網絡設備
- 分佈式監視以及WEB集中管理功能
- 能夠無agent監視
- 用戶安全認證和柔軟的受權方式
- 經過WEB界面設置或查看監視結果
- email等通知功能
等等
Zabbix主要功能:
- CPU負荷
- 內存使用
-磁盤使用
- 網絡情況
- 端口監視
- 日誌監視。
Email:調用 sendmail 、sendEmail 等腳本經過 SMTP 發送郵件
飛信:飛信已經退出歷史舞臺,再也不有人使用
189/139:發送郵箱郵件至郵箱,郵箱將短信轉到用戶手機短信,存在必定的延遲
微信:須要申請一個微信公衆號,並接入API,整個流程比較複雜,並且存在會話時間限制
短信:衆多短信網關收費不一樣、穩定性也不肯定,須要經過API接入
在整個使用過程當中,得出了傳統告警方式的不足以及給個了 OneAlert 告警的功能,具體以下: