做完監控最後就是要做處置拉,簡單的發訊息給負責人請他處理,進階的寫腳本做重啟還原等動作,而這些發送訊息或是腳本通常會花費一些時間客製化調整。
首先到Actions 頁面左上角選擇Triggers => Create action
建立一個規則(Group分得夠清楚這邊設定規則比較方便)以下是CPU告警範例
A 不再維護中
B 是在Zabbix Servers的Group底下
C告警嚴重性大於Warning
D Application歸類在CPU
Operations這是發送訊息的內容、發送對象及方式設定的地方
這是給簡訊的告警訊息,只列出重要的資訊
{TRIGGER.STATUS} [{TIME}]{HOST.NAME}- {TRIGGER.NAME}:{ITEM.VALUE1}
Recovery operations
[{TRIGGER.STATUS}] [{EVENT.RECOVERY.TIME}] {HOST.NAME}- {TRIGGER.NAME}:{ITEM.VALUE1}
告警訊息
PROBLEM [13:15:35]Zabbix Server Memory usage is too high on :76.99 %
Operations設定發送對象
Steps 1-0 一直重複步驟
Step duration : 經過600s後動作
Operation type : Send Message 發訊息
Send to User groups: 發給在administrators群組底下所有人
Send only to: 用什麼方式發 ,下面介紹Media types設定方式
Administration => Media type
如果公司有架設mail server,將IP指過去驗證即可,gmail信箱設定方式會複雜許多,有興趣可以參考http://my-fish-it.blogspot.tw/2017/03/ss-zabbix-32-e-mail.html
這裡介紹用slack
創立帳號後,點選+建立一個Channel
點網址https://my.slack.com/services/new/incoming-webhook
選擇剛建的channel後點Add
找Webhook URL把連結記錄下來
SSH連上Server
cd /usr/lib/zabbix/alertscripts
git clone https://github.com/ericoc/zabbix-slack-alertscript.git
vi slack.sh
url後面輸入剛剛紀錄的
url=https://hooks.slack.com/services/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
回到Zabbix Web頁面 Administration => Media type
預設有Email,如果公司有架設mail server,將IP指過去驗證即可,gmail信箱設定方式會複雜許多,有興趣可以參考http://my-fish-it.blogspot.tw/2017/03/ss-zabbix-32-e-mail.html
使用腳本方式發送可以接API傳給簡訊平台,line,slack等API
https://www.zabbix.com/documentation/3.4/manual/config/notifications/media/script
點選Create media type,因為Type選Script,Script name會去找/usr/lib/zabbix/alertscripts路徑底下檔案,Script parameters是依照zabbix macro格式:發送給誰、主旨、訊息
接著到Users選擇要發送的對象選Media,點Add新增
Send to輸入建立的channel, When active可以設定只在這時間內發送訊息
最後回到Action的Send only to就出現Slack可以選擇了
可以故意將告警規則調低一點測試訊息。
其他平台可以參考以下連結,原理都是相同的
Line
http://chienleebug.blogspot.tw/2017/03/zabbixalarm-to-line-notify.html
Wechat
http://www.linuxprobe.com/zabbix-alert-with-wechat.html