郵件報警有兩種情況:
1)Zabbix服務端只是單純的傳送報警郵件到指定郵箱,傳送報警郵件的這個郵箱賬號是Zabbix服務端的本地郵箱賬號(例如:root@localhost.localdomain),只能傳送,不能接收外部郵件。
2)使用一個可以在網際網路上正常收發郵件的郵箱賬號(例如:xxx@163.com),通過在Zabbix服務端中設定,使其能夠傳送報警郵件到指定郵箱。
上面第2中使用外部郵箱傳送報警郵件之前已經介紹了:分散式監控系統Zabbix-3.0.3-完整安裝記錄(5)-郵件報警部署。下面說下使用zabbix本地郵箱傳送報警郵件的設定:
1)安裝sendmail或者postfix
# yum install sendmail # service sendmail start # chkconfig sendmail on yum install postfix service postfix start chkconfig postfix on CentOS 5.x 預設已經安裝好sendmail CentOS 6.x 預設已經安裝好postfix 其中,sendmail和postfix只需要安裝一個即可並開啟服務即可。這裡我選擇的是使用sendmail
2)安裝郵件傳送工具mailx
# yum install mailx # mailx -V -------------------------------------------------------------------------------------------- 在centos5版本下yum安裝的mailx版本太舊,尤其在使用外部郵件傳送會有問題。這就需要編譯安裝高版本的xmail # yum remove mailx 解除安裝系統自帶的舊版mailx 下載mailx: http://nchc.dl.sourceforge.net/project/heirloom/heirloom-mailx/12.4/mailx-12.4.tar.bz2 tar jxvf mailx-12.4.tar.bz2 cd mailx-12.4 make make install UCBINSTALL=/usr/bin/install ln -s /usr/local/bin/mailx /bin/mail ln -s /etc/nail.rc /etc/mail.rc whereis mailx mailx -V -------------------------------------------------------------------------------------------- 測試傳送郵件,標題zabbix,郵件內容:zabbix test mail,傳送到的郵箱:wangshibo@huanqiu.cn。 # echo "zabbix test mail" |mail -s "zabbix" wangshibo@huanqiu.cn //注意:sendmail服務必須啟動後才能成功傳送郵件
3)在zabbix監控介面配置郵件報警
設定Zabbix使用者報警郵箱地址
設定Zabbix觸發報警的動作(事件源是觸發器)
預設接收人:故障{TRIGGER.STATUS},伺服器:{HOSTNAME1}發生: {TRIGGER.NAME}故障!
預設資訊:
告警主機:{HOSTNAME1}
告警時間:{EVENT.DATE} {EVENT.TIME}
告警等級:{TRIGGER.SEVERITY}
告警資訊: {TRIGGER.NAME}
告警專案:{TRIGGER.KEY1}
問題詳情:{ITEM.NAME}:{ITEM.VALUE}
當前狀態:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}
上面點選“新的“,配置如下:
最後測試下zabbix的郵件報警。任意關閉一臺被監控主機的zabbix_agent
可以到報表->動作日誌裡去檢視下監控郵件是否傳送成功了。
再開啟這臺主機的zabbix_agent服務,還會收到故障恢復的郵件。
---------------------------------------------------指定監控項的報警郵件設定---------------------------------------------------------
比如說我只想要上線機器發出報警郵件,非上線機器:比如測試機、研發機只監控,不報警。
做法:專門設定一個上線的機器組,比如up,然後將上線機器放到這個up組內,在新增"動作"時的條件裡選擇這個up組。如下:
注意:上面計算方式裡是"與/或",A and (B or C or ....)and N,這就說明必須滿足A條件/D條件或者B/C/D/....中的一個時就報警
注意:將預設"Report problems to Zabbix administrators"監控報警項“禁用”了,否則,非上線機器的報警郵件也會發出來!禁用了就只會發出你設定的up組內的線上機器的報警郵件。