Zabbix 集成 OneAlert 實現全方位告警

##1. 前言 告警將重要信息發送給運維「或者其餘相關人」,及時發現而且處理問題。在全部開源監控軟件裏面,Zabbix 的告警方式無疑是最棒的。告警的方式各式各樣,從 Email 告警到飛信、139/189郵箱、最後到微信甚至電話告警,接入存在各類問題以及困難,有沒有什麼軟件可以將他們All In one呢?OneAlertios

##2. Zabbix傳統告警方法服務器

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

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

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

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

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

##3.傳統告警 VS OneAlertcode

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

###3.1 傳統告警方式的不足接口

  • Zabbix 郵件告警常常發不出去
  • 如需短信告警,要麼購買短信貓要麼購買短信 API,整個流程太麻煩
  • 微信告警須要申請公衆號以及 API 接入,並且會話有時間限制
  • 夜間的告警基本成爲一個擺設,試問誰能被微弱的短信聲叫醒
  • 阿里雲、騰訊雲、Zabbix 各類系統告警都須要單獨配置,工做繁瑣
  • 廣泛缺乏告警分析
  • 139/189 發送告警存在明顯的延遲

###3.2 OneAlert告警功能

  • 告警 All In One,支持微信、郵箱、短信、APP、電話告警
  • 支持接入 Zabbix、Nagios、阿里雲、騰訊雲、監控寶等等告警信息
  • 靈活的分配策略,可靈活的分配告警信息發送給相關人員
  • 微信、郵箱、app 等告警方式所有免費

##4.接入準備 因爲 Zabbix 官方已經升級到zabbix-3.0.0alpha,考慮到將來的趨勢,我也火燒眉毛的升級到了 3.0,除了 Web 風格變化,大部分都差很少。因此本文適用於 Zabbix2.x 與 Zabbix3.x 版本。接下來跟着涼白開將 OneAlert 接入 Zabbix,若有任何疑問或者不足,歡迎加羣或者在 ttlsa.com 留言一塊兒交流! ##5. OneAlert 後臺操做

###5.1 設置提醒

郵件,短信,微信,電話提醒,多策略提醒,以下圖,靈活的定義告警規則。在發生告警以後當即發送郵件和微信消息給用戶,10分鐘後還未確認,那麼發送短信,30分鐘還未確認則打電話給用戶。

###5.2 設置分派策略

能夠設定作種分派策略,在告警第一時間發送通知給哪些人,若是在 30 分鐘還未處理好,能夠將消息發送給上級主管人員,以下圖

###5.3 建立應用

登錄 OneAlert 後臺,點擊告警 -> 應用 -> 新增應用,集成類型包含阿里、Nagios、騰訊雲等多種,咱們選擇 Zabbix 最後保存便可。將會生成應用 KEY,Key 在後面將會被用到!

##6.安裝onealert agent

#cd /usr/local/src/
# wget http://cdn.110monitor.com/open/download/alert-agent-4.0.1-RC2.tar.gz
# tar –xvf alert-agent-4.0.1-RC2.tar.gz(注意:參數爲-xvf,不是-xzvf)
# cp -rp alert-agent /usr/local/zabbix-3.0.0/alertscripts
# cd /usr/local/zabbix-3.0.0/alertscripts
# cp alert-agent/plugin/zabbix-plugin/110monitor .
# chmod +x ./110monitor

##7. Zabbix 集成OneAlert

如下操做均在 Zabbix Web 後臺完成

###7.1 建立 OneAlert 媒介 administration->Media Types->create media type,以下圖

###7.2 Admin 用戶添加 OneAlert 媒介

Administration->Users->Admin->點擊media->Add,輸入以下:send to 爲 OneAlert 後臺生成的 key

###7.3 建立觸發器

點擊Configuration->Action->create action

  • 主題爲triggerresolve,意味着告警觸發和恢復都會同步到 110monitor

  • 設置告警內容,注意冒號「:」前的內容不可變動,冒號「:」後的內容能夠自行編輯,只能使用如下7調告警信息,不然告警沒法發送至 OneAlert 接口

    alarmName:{TRIGGER.NAME}

    entityName:{HOSTNAME}

    entityId:{IPADDRESS}

    value:{TRIGGER.VALUE}

    eventId:{EVENT.ID}

    priority:{TRIGGER.SEVERITY}

    alarmContent:{IPADDRESS}

    {ITEM.NAME}:{ITEM.VALUE}

##8. Zabbix + OneAlert 集成測試

來製造一個故障,選定一臺 Zabbix 客戶端,執行以下命令:

# killall zabbix_agentd

等候五分鐘,OneAlert 後臺有以下告警

而且也收到了微信(須要關注公衆號,而且綁定帳號)和短信告警

##9. OneAlert 告警分析

提供了一份 Zabbix 等開源監控都沒有的告警信息分析,運維能清晰的掌握最近服務器狀態

##10. 總結 OneAlert與Zabbix的集成就說到這,若有任何疑問或者不足,歡迎加羣或者在 ttlsa.com 留言一塊兒交流!

做者:涼白開 網址:http://www.ttlsa.com

相關文章
相關標籤/搜索