Zabbix郵件報(bào)警設(shè)置方法
說(shuō)明:
Zabbix監(jiān)控服務(wù)端、客戶端都已經(jīng)部署完成,被監(jiān)控主機(jī)已經(jīng)添加,Zabiix監(jiān)控運(yùn)行正常。
實(shí)現(xiàn)目的:
在Zabbix服務(wù)端設(shè)置郵件報(bào)警,當(dāng)被監(jiān)控主機(jī)宕機(jī)或者達(dá)到觸發(fā)器預(yù)設(shè)值時(shí),會(huì)自動(dòng)發(fā)送報(bào)警郵件到指定郵箱。
具體操作:
以下操作在Zabbix監(jiān)控服務(wù)端進(jìn)行
備注:Zabbix監(jiān)控服務(wù)端
操作系統(tǒng):CentOS
主機(jī)名:zabbix.osyunwei.com
郵件報(bào)警有兩種情況:
1、Zabbix服務(wù)端只是單純的發(fā)送報(bào)警郵件到指定郵箱,發(fā)送報(bào)警郵件的這個(gè)郵箱賬號(hào)是Zabbix服務(wù)端的本地郵箱賬號(hào)(例如:root@localhost.localdomain),只能發(fā)送,不能接收外部郵件。
2、使用一個(gè)可以在互聯(lián)網(wǎng)上正常收發(fā)郵件的郵箱賬號(hào)(例如:xxx@163.com),通過(guò)在Zabbix服務(wù)端中設(shè)置,使其能夠發(fā)送報(bào)警郵件到指定郵箱。
第一種:使用Zabbix服務(wù)端本地郵箱賬號(hào)發(fā)送郵件
一、安裝sendmail或者postfix
yum install sendmail #安裝
service sendmail start #啟動(dòng)
chkconfig sendmail on #設(shè)置開(kāi)機(jī)啟動(dòng)
yum install postfix
service postfix start
chkconfig postfix on
CentOS 5.x 默認(rèn)已經(jīng)安裝好sendmail
CentOS 6.x 默認(rèn)已經(jīng)安裝好postfix
sendmail和postfix只需要安裝一個(gè)即可并開(kāi)啟服務(wù)即可。
二、安裝郵件發(fā)送工具mailx
yum install mailx #安裝
CentOS 5.x 編譯安裝mailx,直接yum安裝的mailx版本太舊,使用外部郵件發(fā)送會(huì)有問(wèn)題。
yum remove mailx #卸載系統(tǒng)自帶的舊版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 #進(jìn)入目錄
make #編譯
make install UCBINSTALL=/usr/bin/install #安裝
ln -s /usr/local/bin/mailx /bin/mail #創(chuàng)建mailx到mail的軟連接
ln -s /etc/nail.rc /etc/mail.rc #創(chuàng)建mailx配置文件軟連接
whereis mailx #查看安裝路徑
mailx -V #查看版本信息
echo "zabbix test mail" |mail -s "zabbix" xxx@163.com
#測(cè)試發(fā)送郵件,標(biāo)題zabbix,郵件內(nèi)容:zabbix test mail,發(fā)送到的郵箱:xxx@163.com
三、配置Zabbix服務(wù)端郵件報(bào)警
1、打開(kāi)Zabbix

管理-示警媒介類型-Email

名稱:Email
類型:電子郵件
SMTP伺服器:zabbix.sa.huanqiu.com
SMTP HELO:zabbix.sa.huanqiu.com
SMTP電郵:zabbix@zabbix.sa.huanqiu.com
已經(jīng)用:勾選
存檔
備注:zabbix.sa.huanqiu.com為Zabbix監(jiān)控端主機(jī)名稱,建議修改,否則使用默認(rèn)的localhost.localdomain發(fā)送郵件會(huì)被當(dāng)做垃圾郵件攔截。
2、設(shè)置Zabbix用戶報(bào)警郵箱地址
組態(tài)-用戶-Admin (Zabbix Administrator)

切換到示警媒介

添加

類型:Email
收件人:xxx@163.com
其他默認(rèn)即可,也可以根據(jù)需要設(shè)置
狀態(tài):已啟用
存檔
3、設(shè)置Zabbix觸發(fā)報(bào)警的動(dòng)作
組態(tài)-動(dòng)作-創(chuàng)建動(dòng)作


名稱:Action-Email
默認(rèn)接收人:故障{TRIGGER.STATUS},服務(wù)器:{HOSTNAME1}發(fā)生: {TRIGGER.NAME}故障!
默認(rèn)信息:
告警主機(jī):{HOSTNAME1}
告警時(shí)間:{EVENT.DATE} {EVENT.TIME}
告警等級(jí):{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警項(xiàng)目:{TRIGGER.KEY1}
問(wèn)題詳情:{ITEM.NAME}:{ITEM.VALUE}
當(dāng)前狀態(tài):{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}
恢復(fù)信息:打鉤
恢復(fù)主旨:恢復(fù){TRIGGER.STATUS}, 服務(wù)器:{HOSTNAME1}: {TRIGGER.NAME}已恢復(fù)!
恢復(fù)信息:
告警主機(jī):{HOSTNAME1}
告警時(shí)間:{EVENT.DATE} {EVENT.TIME}
告警等級(jí):{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警項(xiàng)目:{TRIGGER.KEY1}
問(wèn)題詳情:{ITEM.NAME}:{ITEM.VALUE}
當(dāng)前狀態(tài):{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}
已啟用:打鉤

切換到操作選項(xiàng)
新的

操作類型:送出信息
送到用戶:添加
默認(rèn)信息:打鉤

用戶:勾選Admin
選擇

僅送到:Email
存檔
四、測(cè)試Zabbix報(bào)警
關(guān)閉Zabbix客戶端服務(wù)
service zabbix_agentd stop
查看xxx@163.com郵箱,會(huì)收到報(bào)警郵件

再開(kāi)啟Zabbix客戶端服務(wù)
service zabbix_agentd start
查看xxx@163.com郵箱,會(huì)收到恢復(fù)郵件

使用Zabbix服務(wù)端本地郵箱賬號(hào)發(fā)送郵件設(shè)置完成。
第二種:使用外部郵箱賬號(hào)發(fā)送報(bào)警郵件設(shè)置
一、關(guān)閉sendmail或者postfix
service sendmail stop #關(guān)閉
chkconfig sendmail off #禁止開(kāi)機(jī)啟動(dòng)
service postfix stop
chkconfig postfix off
備注:
使用外部郵箱賬號(hào)時(shí),不需要啟動(dòng)sendmail或者postfix
如果在sendmail或者postfix啟動(dòng)的同時(shí)使用外部郵箱發(fā)送報(bào)警郵件,首先會(huì)讀取外部郵箱
配置信息。
二、安裝郵件發(fā)送工具mailx
yum install mailx #安裝
CentOS 5.x 編譯安裝mailx,直接yum安裝的mailx版本太舊,使用外部郵件發(fā)送會(huì)有問(wèn)題。
yum remove mailx #卸載系統(tǒng)自帶的舊版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 #進(jìn)入目錄
make #編譯
make install UCBINSTALL=/usr/bin/install #安裝
ln -s /usr/local/bin/mailx /bin/mail #創(chuàng)建mailx到mail的軟連接
ln -s /etc/nail.rc /etc/mail.rc #創(chuàng)建mailx配置文件軟連接
whereis mailx #查看安裝路徑
mailx -V #查看版本信息
三、配置Zabbix服務(wù)端外部郵箱
vi /etc/mail.rc #編輯,添加以下信息
set from=xxx@163.com smtp=smtp.163.com
set smtp-auth-user=xxx@163.com smtp-auth-password=123456
set smtp-auth=login
:wq! #保存退出
echo "zabbix test mail" |mail -s "zabbix" yyy@163.com
#測(cè)試發(fā)送郵件,標(biāo)題zabbix,郵件內(nèi)容:zabbix test mail,發(fā)送到的郵箱:yyy@163.com
#這時(shí)候,郵箱yyy@163.com會(huì)收到來(lái)自xxx@163.com的測(cè)試郵件
四、配置Zabbix服務(wù)端郵件報(bào)警
1、打開(kāi)Zabbix
管理-示警媒介類型-創(chuàng)建媒體類型


名稱:Sendmail
類型:腳本
腳本名稱:sendmail.sh
已啟用:勾選
存檔
2、設(shè)置Zabbix用戶報(bào)警郵箱地址
組態(tài)-用戶-Admin (Zabbix Administrator)


切換到示警媒介-添加

類型:Sendmail
收件人:xxx@163.com
其他默認(rèn)即可,也可
以根據(jù)需要設(shè)置
狀態(tài):已啟用
存檔
3、設(shè)置Zabbix觸發(fā)報(bào)警的動(dòng)作
組態(tài)-動(dòng)作-創(chuàng)建動(dòng)作

名稱:Action-Email
默認(rèn)接收人:故障{TRIGGER.STATUS},服務(wù)器:{HOSTNAME1}發(fā)生: {TRIGGER.NAME}故障!
默認(rèn)信息:
告警主機(jī):{HOSTNAME1}
告警時(shí)間:{EVENT.DATE} {EVENT.TIME}
告警等級(jí):{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警項(xiàng)目:{TRIGGER.KEY1}
問(wèn)題詳情:{ITEM.NAME}:{ITEM.VALUE}
當(dāng)前狀態(tài):{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}
恢復(fù)信息:打鉤
恢復(fù)主旨:恢復(fù){TRIGGER.STATUS}, 服務(wù)器:{HOSTNAME1}: {TRIGGER.NAME}已恢復(fù)!
恢復(fù)信息:
告警主機(jī):{HOSTNAME1}
告警時(shí)間:{EVENT.DATE} {EVENT.TIME}
告警等級(jí):{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警項(xiàng)目:{TRIGGER.KEY1}
問(wèn)題詳情:{ITEM.NAME}:{ITEM.VALUE}
當(dāng)前狀態(tài):{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}
已啟用:打鉤

切換到操作選項(xiàng)
新的
操作類型:送出信息
送到用戶:添加
默認(rèn)信息:打鉤
選擇用戶:Admin
選擇
僅送到:Sendmail
存檔
4、添加Zabbix服務(wù)端郵件發(fā)送腳本
cd /usr/local/zabbix/share/zabbix/alertscripts #進(jìn)入腳本存放目錄
vi sendmail.sh #編輯,添加以下代碼
#!/bin/sh
echo "$3" | mail -s "$2" $1
:wq! #保存退出
chown zabbix.zabbix /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh
#設(shè)置腳本所有者為zabbix用戶
chmod +x /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh
#設(shè)置腳本執(zhí)行權(quán)限
五、測(cè)試Zabbix報(bào)警
關(guān)閉Zabbix客戶端服務(wù)
service zabbix_agentd stop
查看xxx@163.com郵箱,會(huì)收到報(bào)警郵件
再開(kāi)啟Zabbix客戶端服務(wù)
service zabbix_agentd start
查看xxx@163.com郵箱,會(huì)收到恢復(fù)郵件
使用外部郵箱賬號(hào)發(fā)送報(bào)警郵件設(shè)置完成。
至此,Zabbix郵件報(bào)警設(shè)置完成。
相關(guān)文章
教你使用zabbix api批量添加數(shù)百臺(tái)監(jiān)控主機(jī)的方法
這篇文章主要介紹了利用zabbix api批量添加數(shù)百臺(tái)監(jiān)控主機(jī),本次我們將實(shí)現(xiàn)用一臺(tái)主機(jī)虛擬出100臺(tái)主機(jī),并通過(guò)api的方式自動(dòng)添加監(jiān)控主機(jī),需要的朋友可以參考下2022-03-03
CentOS 6.9 安裝 Zabbix 3.0 的詳細(xì)步驟
Zabbix 是一個(gè)基于 WEB 界面的,提供分布式系統(tǒng)監(jiān)視以及網(wǎng)絡(luò)監(jiān)視功能的企業(yè)級(jí)開(kāi)源解決方案,本文重點(diǎn)研究 Zabbix,使用它的目的是為了更好地監(jiān)控MySQL 數(shù)據(jù)庫(kù)服務(wù)器,并生成圖形報(bào)表,相較于 Nagios,Zabbix 在這方面功能更為強(qiáng)大,感興趣的朋友一起看看吧2025-04-04
Zabbix 配置釘釘告警功能的實(shí)現(xiàn)代碼
這篇文章主要介紹了Zabbix 配置釘釘告警功能的實(shí)現(xiàn)代碼,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-04-04
利用zabbix監(jiān)控ogg進(jìn)程(Linux平臺(tái))
這篇文章主要介紹了利用zabbix監(jiān)控ogg進(jìn)程(Linux平臺(tái))的方法,幫助大家更好的理解和使用zabbix,感興趣的朋友可以了解下2020-12-12
關(guān)于zabbix自定義監(jiān)控項(xiàng)和觸發(fā)器問(wèn)題
這篇文章主要介紹了zabbix自定義監(jiān)控項(xiàng)和觸發(fā)器的相關(guān)知識(shí),關(guān)于監(jiān)控端口,監(jiān)控服務(wù),模板的導(dǎo)入和導(dǎo)出問(wèn)題,本文給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧2021-12-12
Zabbix對(duì)Kafka?topic積壓數(shù)據(jù)監(jiān)控的問(wèn)題(bug優(yōu)化)
這篇文章主要介紹了Zabbix對(duì)Kafka?topic積壓數(shù)據(jù)監(jiān)控,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-07-07
獲取zabbix上所有主機(jī)的IP和主機(jī)名的實(shí)例代碼
zabbix([`zæbiks])是一個(gè)基于WEB界面的提供分布式系統(tǒng)監(jiān)視以及網(wǎng)絡(luò)監(jiān)視功能的企業(yè)級(jí)的開(kāi)源解決方案。這篇文章主要介紹了獲取zabbix上所有主機(jī)的IP和主機(jī)名,需要的朋友可以參考下2019-10-10

