標籤:監控/SQLServer/Windows
概述
本篇文章主要介紹如何配置zabbix藉助外部郵件進行傳送郵件報警,zabbix通過配置檔案呼叫mailx來進行郵件的傳送。在Centos6以上的版本預設已經安裝了mailx。
一、配置mailx
1.檢視當前系統是否已安裝mailx
[root@localhost ~]# yum list installed mailx Loaded plugins: fastestmirror, refresh-packagekit, security Loading mirror speeds from cached hostfile * base: mirrors.aliyun.com * epel: ftp.cuhk.edu.hk * extras: mirrors.163.com * updates: mirrors.163.com Installed Packages mailx.x86_64 12.4-8.el6_6
可以看到當前我的系統已經安裝了mailx 12.4版本。
2.設定163郵箱客戶端授權
登入到163郵箱在“設定”-“客戶端授權密碼”-開啟
在這裡會要求你輸入一個授權的登入密碼,這個密碼在下一步的配置mailx需要用到
3.配置mailx
vim /etc/mail.rc
set from=cmh@163.com smtp=smtp.163.com set smtp-auth-user=cmh@163.com smtp-auth-password=cmh set smtp-auth=login
我這裡用的是163郵箱來傳送郵件,cmh@163.com是163郵箱的登入使用者,smtp-auth-password是第二步設定的密碼。
4.測試是否可以正常傳送郵件
echo "agent down" |mail -s "test mail" 123xxxxxxx@qq.com
二、配置zabbix
1.配置SendMail傳送郵件指令碼
mkdir /etc/zabbix/alertscripts cd /etc/zabbix/alertscripts vim sendmail
messages=`echo $3 | tr '\r\n' '\n'` subject=`echo $2 | tr '\r\n' '\n'` echo "${messages}" | mail -s "${subject}" $1 >>/tmp/sendmail.log 2>&1
授予指令碼可執行許可權
chown -R zabbix:zabbix /etc/zabbix/alertscripts
chmod u+x sendmail.sh
2.配置zabbix_server.conf
在zabbix_server.conf中新增
AlertScriptsPath=/etc/zabbix/alertscripts
3.建立media types
注意:這裡的type選擇Script;Script name的名稱和前面建立的傳送郵件指令碼的名稱保持一致
4.配置傳送郵件使用者
在使用者選項裡面Zabbix administrators組中點選admin使用者,在使用者的media屬性裡面建立右鍵的接收人和相應的安全級別
這裡的type選項是剛才建立的媒介型別的名稱,send to是接受郵件的使用者
5.建立觸發動作
在configuration-actions在建立觸發後的執行操作
default subject:故障!!![{HOSTNAME1}]:{TRIGGER.NAME} recovery subject:已恢復!!![{HOSTNAME1}]:{TRIGGER.NAME} default message和recovery message都一樣: 告警主機:{HOSTNAME1} 告警時間:{EVENT.DATE} {EVENT.TIME} 告警等級:{TRIGGER.SEVERITY} 告警資訊:{TRIGGER.NAME} 告警專案:{TRIGGER.KEY1} 問題詳情:{ITEM.NAME}:{ITEM.VALUE} 當前狀態:{TRIGGER.STATUS}:{ITEM.VALUE1} 事件ID:{EVENT.ID}
預設是1個小時內傳送一次郵件通知,最小是60S
6.示例
接下來看一下監控主機無法ping通的郵件報警資訊
總結
配置過程中需要注意指令碼的名稱和配置檔案對應。
備註: 作者:pursuer.chen 部落格:http://www.cnblogs.com/chenmh 本站點所有隨筆都是原創,歡迎大家轉載;但轉載時必須註明文章來源,且在文章開頭明顯處給明連結。 《歡迎交流討論》 |