首頁  >  文章  >  運維  >  zabbix實作郵件警報實例教程

zabbix實作郵件警報實例教程

PHP中文网
PHP中文网原創
2017-06-21 11:15:032541瀏覽

說明:

Zabbix監控服務端、客戶端都已經部署完成,被監控主機已經添加,Zabiix監控運作正常。

實現目的:

在Zabbix服務端設定郵件警報,當被監控主機宕機或達到觸發器預設值時,會自動傳送警報郵件到指定郵箱。

具體操作:

以下操作在Zabbix監控服務端進行

備註:Zabbix監控服務端

作業系統: CentOS

使用外部郵件帳號傳送警報郵件設定:

一、關閉sendmail或postfix

service sendmail stop #關閉

#chkconfig sendmail off #禁止開機啟動

service postfix stop

chkconfig postfix off

備註:

使用外部信箱帳號時,不需要啟動sendmail或postfix

#如果在sendmail或postfix啟動的同時使用外部郵箱傳送警報郵件,首先會讀取外部郵箱

設定資訊。

二、安裝郵件發送工具mailx

yum install mailx #安裝

CentOS 5.x 編譯安裝mailx,直接yum安裝的mailx版本太舊,使用外部郵件發送會有問題。

yum remove mailx #卸載系統自帶的舊版mailx

下載mailx:


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 #建立mailx到mail的軟連線

ln -s /etc/nail.rc /etc/mail.rc #建立mailx設定檔軟連線

三、設定Zabbix服務端外部郵件匣

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

#測試發送郵件,標題zabbix,郵件內容:zabbix test mail,發送到的郵箱:yyy@163.com

#這時候,郵箱yyy@163.com會收到來自xxx @163.com的測試郵件

四、設定Zabbix服務端郵件警報

1、開啟Zabbix

管理-示警媒介類型-建立媒體類型

 

名稱:Sendmail

類型:腳本

腳本名稱:sendmail.sh

已啟用:勾選

存檔

2、設定Zabbix用戶警報信箱位址

 

 

類型:Sendmail

收件者:xxx@163.com

其他預設即可,也可

以根據需要設定

狀態:已啟用

存檔

3、設定Zabbix觸發警報的動作

組態-動作-建立動作

名稱:Action-Email

預設接收者:故障{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}

 

恢復訊息:打鉤

 

 

#恢復主題:恢復{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}

已啟用:打鉤

 

切換到操作選項

新的

#作業類型:發送訊息

送到使用者:新增

預設訊息:打鉤

選擇使用者:Admin

選擇

只送到:Sendmail

存檔

4、新增Zabbix服務端郵件發送腳本

cd /usr/local/zabbix/share/zabbix/alertscripts #進入腳本存放目錄

vi sendmail.sh #編輯,新增以下程式碼

#!/bin/sh

echo "$3" | mail -s "$2" $1

:wq! #儲存退出

chown -R zabbix.zabbix /usr/local/zabbix/share/zabbix/alertscripts/*

zabbix_server.conf 檔案中加入腳本的相對路徑

AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts

#設定腳本擁有者為zabbix使用者

chmod +x /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh

##設定腳本執行權限

五、測試Zabbix警報

關閉Zabbix客戶端服務

service zabbix_agentd stop

查看你的xxx@163.com郵箱,會收到警報郵件

再開啟Zabbix客戶端服務

service zabbix_agentd start

查看你的xxx@163.com郵箱,會收到恢復郵件

#使用外部郵箱帳號發送警報郵件設定完成。

至此,Zabbix郵件警報設定完成。

 

以上是zabbix實作郵件警報實例教程的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn