我從2013年5月開始研究zabbix,研究的版本是2.0.6,到如今也立刻2年了,目前生產版本仍是2.0.6.前端
如今我公司1000+的服務器不管是物理機仍是vmware、openstack的雲主機、docker容器等等都使用zabbix進行監控。python
當前監控方式爲:zabbix=>proxy=>clientjquery
當前報警方式爲:6個等級報警(未分類、消息、警告、通常嚴重、嚴重、災難)所有經過短信或者郵件來通知,嚴重及其以上使用自動語音報警方式通知。web
1、語音報警介紹docker
一、爲何使用語音報警數據庫
以前我這裏招聘了3個監控運維,而後他們使用輪班制度來進行報警通知,但人老是會有疲倦,而且夜間的時候,易睡沒法及時的進行報警發現與通知,爲了解決這個狀況,我開發了一個語音報警平臺,針對zabbix的報警通知作一個補充,能夠配合zabbix默認的升級機制,實現報警垂直升級+自動語音報警,還能夠web化的查看報警內容與處理報警信息。bootstrap
二、傳統報警與語音報警區別windows
傳統報警多爲:郵件模式或者短信模式後端
對於休息時間,沒法上網或睡覺,會致使沒法及時執行報警,耽誤報警發現與處理時間,形成更多的損失。若是有大量報警,會致使查看遺漏重要信息服務器
若是使用語音模式報警,在休息期間,不須要在電腦旁或者打開郵件,就能夠經過電話知曉報警信息;即便夜間睡覺,也能經過電話來及時知曉並處理。
2、語音報警效果圖
我通常看新內容都喜歡先看看效果圖,若是知足我需求才深刻研究,因此我也先給你們展現一下效果圖,你們以爲知足在向下看,不知足能夠退出。
一、報警界面
在右側的「處理」列裏,能夠看到報警是已經恢復,因此「處理」列信息都是不可使用,而且爲已處理,若是是報警未恢復,則能夠經過點擊處理,手動關閉語音報警升級下去。
二、語音報警結果界面(也就是上面圖片裏「詳情」)
上圖爲發送語音報警的報警信息與接收人的信息,下面是報警垂直事件升級的效果圖
三、垂直報警事件升級
能夠看看這個報警升級了4次,每次升級的間隔爲10分鐘,分別聯繫了3我的,其中第二次聯繫的時候,是對方不接(從備註no one answer the phone能夠看出)
3、如何使用語音報警
一、結合zabbix分佈式監控系統
語音報警只是通知的方式,檢測報警並發現還須要使用監控系統,推薦使用zabbix分別是監控,支持多平臺(若是redhat系列、Ubuntu系列、windows系列);
在zabbix監控發現報警,經過使用語音報警接口來把報警內容電話通知給對應負責人。
二、事件升級機制(Escalations)
舉例:若是監控主機出現報警,須要第一時間通知,但若是通知後,報警在必定時間仍然存在,或者電話通知後,因爲對方夜間休息,沒有接收,這樣就會延誤處理時間,影響業務;
方法:zabbix事件升級機制(Escalations)
優勢:
Zabbix監控自帶,兼容性好l發送形式能自定義(目前包括:短信通知、郵件通知、語音電話通知);
根據不一樣報警等級來進行對於通知l自定義報警升級順序、時間等;
一直通知問題直到問題解決。
三、語音接口選擇
目前國內也有語音接口,但我測試感受通常,而且花費貴,因此我選擇了國際廠商nexmo接口(不是打廣告,對方也不給我錢,這個接口很穩定、速度很快、而且價格便宜)
Nexmo是國際知名短信雲服務公司l在23個國家70多個運行商均能提供短信與語音功能;
Nexmo的企業客戶包括Airbnb、Viber和ICQ等;
按需收費;
通知時間快,一般在5秒內;
強大的售後與技術支持l基礎的報表功能。
4、語音報警平臺案例
一、架構信息
監控服務:使用zabbix分佈式監控;
事件升級:使用zabbix的Escalations垂直模式,從負責人、直屬領導、總監等一級一級的升級;
語音通知接口:nexmo的tts;
平臺軟件架構:python+tornado+bootstrap
二、架構圖
三、實現功能
嚴重等級報警使用語音接口進行報警通知(嚴重等級報警包括:重啓、超時、進程不存在等);
報警垂直升級;
報警合併(同一聯繫人的報警,會合併爲一條在發送);
平臺化查看報警主機信息、語音報警通知信息等。
四、zabbix處理報警方式
五、報警垂直事件升級流程圖
六、難點
後端:
報警檢測間隔(默認10分鐘)
垂直事件升級順序(前2次爲第一聯繫人,第二聯繫人、運維主管、運維總監)
報警合併(當前爲60秒內同一聯繫人報警合併爲1條)
報警通知時間(白天爲報警出現後5分鐘,晚上爲10分鐘,重啓報警爲1分鐘)
報警自助處理(若是報警短期不能解決,則能夠經過平臺裏的處理按鈕不進行事件升級)
語音平臺用戶組權限(從zabbix數據庫裏獲取用戶組權限)
前端:
Tornado的架構學習
Bootstrap與jquery的學習
Highchart的學習
目前我公司從去年12月上線測試此平臺,上傳測試2個月知足需求,因此從2015年2月份正式上線此平臺,截止到如今已經運行6個月運行正常,而且報警及時、準確。
如今我這裏已經取消了監控運維,經過使用此平臺,每月能節省1w+以上的人員成本,此平臺的成本僅爲15-17歐元(12歐元固定來電號碼租用費用,5元左右的報警電話費用),換爲人民幣爲105-114元左右。
此平臺因爲還在優化與新功能開發中,因此暫不開源,你們開源參考這個架構來自行定義本身的語言報警平臺,有問題能夠留言一塊兒交流。