安裝並配置mailx
安裝mailx
yum install -y mailx
修改mailx配置文件
vim vim /etc/mail.rc
set [email protected] #定義發件人
set smtp=smtp.163.com #定義smtp服務器
set [email protected]
set smtp-auth-password=asdASD123
set smtp-auth=login
發送測試郵件
echo 'test1'|mail -s "testmail" [email protected]
編寫郵件告警腳本
vim /usr/lib/zabbix/alertscripts/mail.sh
這是zabbix默認的腳本路徑,可以通過zabbix_server配置文件修改
#/bin/bash
to=$1
subject=`echo $2|tr '\r\n' '\n'`
message=`echo $3|tr '\r\n' '\n'`
echo "$message"|mail -s "$subject" $to >>/var/log/mailx.log 2>&1
touch /var/log/mailx.log
chown -R zabbix.zabbix /var/log/mailx.log
chmod +x /usr/lib/zabbix/alertscripts/mail.sh
./mail.sh [email protected] "主題" "內容"
編輯zabbix_web,配置報警媒介
腳本參數的變量全爲大寫,是zabbix內置的宏
更多關於zabbix的宏可以查看 官方文檔宏的介紹
除了使用腳本媒介,也可以使用email作爲媒介,相比之下,使用email更簡單
編輯zabbix_web,配置用戶
配置報警動作
操作,恢復操作,或者更新操作必須存在一個
配置條件
可以根據自己的需要配置觸發條件
配置操作
默認標題:
{TRIGGER.STATUS}:{TRIGGER.NAME}
消息內容:
報警主機:{HOST.NAME}
報警IP:{HOST.IP}
報警時間:{EVENT.DATE}-{EVENT.TIME}
報警等級:{TRIGGER.SEVERITY}
報警信息:{TRIGGER.NAME}:{ITEM.VALUE}
事件ID:{EVENT.ID}
配置恢復操作
默認標題:
{TRIGGER.STATUS}:{TRIGGER.NAME}
消息內容:
恢復主機:{HOST.NAME}
恢復IP:{HOST.IP}
恢復時間:{EVENT.DATE}-{EVENT.TIME}
恢復等級:{TRIGGER.SEVERITY}
恢復信息:{TRIGGER.NAME}:{ITEM.VALUE}
恢復ID:{EVENT.ID}
關閉agent,測試報警
systemctl stop zabbix_agent
systemctl start zabbix_agent
配置微信報警
註冊企業微信
配置微信報警需要註冊企業微信
獲取企業ID
點擊‘我的企業’到最下面獲取
獲取AgentID和Secret
單擊應用與小程序,選擇下面的創建應用,應用名字自己隨便起,最好有象徵意義
然後打開新創建的應用,記錄下AgentID和Secret
配置腳本
從GitHub克隆微信報警腳本
git clone https://github.com/X-Mars/Zabbix-Alert-WeChat.git
cp Zabbix-Alert-WeChat/wechat.py /usr/local/zabbix34/alertscripts/
chmod +x wechat.py && chown zabbix:zabbix wechat.py
安裝requests庫
使用pip安裝,需要先下載pip
python get-pip.py
安裝requests庫
pip install requests
修改wechat.py腳本
Corpid,Secret,Agentid填寫自己企業微信的信息,修改這三個參數即可,當然也可以選擇使用標籤ID,部門ID,取消註釋即可
修改完成後測試腳本是否可用
python wechat.py 企業微信ID test text
{u'invaliduser': u'', u'errcode': 0, u'errmsg': u'ok'}
在zabbix_web上配置報警媒介和用戶
配置報警媒介
配置用戶
收件人填寫企業微信的用戶ID
配置動作
配置操作
消息內容與標題與郵件報警配置相同,只要把發送的媒介通過WeChat發送即可
配置恢復操作
恢復操作也是把媒介改成通過WeChat發送
測試微信報警
重啓虛擬機測試,企業微信收到郵件
歡迎各位關注我的微信公衆號‘沒有故事的陳師傅’