天天看點

zabbix郵件報警配置一、開啟發件伺服器SMTP功能二、安裝郵件服務軟體三、配置報警媒介四、在zabbix服務端寫郵件發送腳本五、使用腳本方式增加報警媒介六、建立動作七、測試

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

郵件服務可以使用系統自帶的郵件服務來發送郵件或者使用其他郵件服務調用第三方郵件來發送警告郵件。

一、開啟發件伺服器SMTP功能

這裡發送郵件的伺服器選比較穩定可靠的網易郵箱伺服器進行報警郵件的發送工作。

進入163網易免費郵箱,然後點選左側:POP3/SMTP/IMAP

zabbix郵件報警配置一、開啟發件伺服器SMTP功能二、安裝郵件服務軟體三、配置報警媒介四、在zabbix服務端寫郵件發送腳本五、使用腳本方式增加報警媒介六、建立動作七、測試

如上,根據提示開啟POP3/SMTP服務,我的已經開通過,這裡檢查一下。

二、安裝郵件服務軟體

2.1 安裝mailx、sendmail、sendmail-cf

yum install s-nail-14.9.22-6.el9.x86_64 sendmail sendmail-cf
           

2.2 修改配置檔案 /etc/mail.rc、/etc/mail/sendmail.mc、/etc/php.ini

注意 php.ini 裡面sendmail值會影響發送郵件

[[email protected] mail]# cat /etc/mail.rc
set from=[email protected] 
set smtp=smtp.163.com
set smtp-auth-user=[email protected]
set smtp-auth-password=寫自己的用戶端授權碼
set smtp-auth=login

/etc/mail/sendmail.mc 檔案不做修改

cat /etc/php.ini
....
:sendmail_path = /usr/sbin/sendmail -t -i
....
           

2.3 确認 /etc/hosts 檔案是否填寫主機名

[[email protected] mail]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4 zabbix-server
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
           

注意 hosts 檔案會影響郵件發送快慢問題

2.4 啟動 sendmail 服務

2.5 測試發送郵件

echo "zabbix_test" | mailx -s "zabbix" [email protected]
           

發送成功

zabbix郵件報警配置一、開啟發件伺服器SMTP功能二、安裝郵件服務軟體三、配置報警媒介四、在zabbix服務端寫郵件發送腳本五、使用腳本方式增加報警媒介六、建立動作七、測試

三、配置報警媒介

3.1 登入 zabbix 頁面

管理 —> 媒介 —> 選擇 Email —> 克隆

zabbix郵件報警配置一、開啟發件伺服器SMTP功能二、安裝郵件服務軟體三、配置報警媒介四、在zabbix服務端寫郵件發送腳本五、使用腳本方式增加報警媒介六、建立動作七、測試

3.2 克隆Email

名稱:My_Emal
類型:電子郵件
SMTP伺服器:smtp.163.com
SMTP伺服器端口:25
SMTP HELO:我的監控平台告警
SMTP電郵:[email protected]
安全連接配接:無
認證:無
消息格式:文本
           
zabbix郵件報警配置一、開啟發件伺服器SMTP功能二、安裝郵件服務軟體三、配置報警媒介四、在zabbix服務端寫郵件發送腳本五、使用腳本方式增加報警媒介六、建立動作七、測試

3.2.1 選擇消息模闆

zabbix郵件報警配置一、開啟發件伺服器SMTP功能二、安裝郵件服務軟體三、配置報警媒介四、在zabbix服務端寫郵件發送腳本五、使用腳本方式增加報警媒介六、建立動作七、測試

3.2.2 移除後面3個,隻保留問題和問題恢複。

zabbix郵件報警配置一、開啟發件伺服器SMTP功能二、安裝郵件服務軟體三、配置報警媒介四、在zabbix服務端寫郵件發送腳本五、使用腳本方式增加報警媒介六、建立動作七、測試
zabbix郵件報警配置一、開啟發件伺服器SMTP功能二、安裝郵件服務軟體三、配置報警媒介四、在zabbix服務端寫郵件發送腳本五、使用腳本方式增加報警媒介六、建立動作七、測試

3.2.3 切換到選項 設定發送郵件的次數為3次,間隔20s發1次。

zabbix郵件報警配置一、開啟發件伺服器SMTP功能二、安裝郵件服務軟體三、配置報警媒介四、在zabbix服務端寫郵件發送腳本五、使用腳本方式增加報警媒介六、建立動作七、測試
zabbix郵件報警配置一、開啟發件伺服器SMTP功能二、安裝郵件服務軟體三、配置報警媒介四、在zabbix服務端寫郵件發送腳本五、使用腳本方式增加報警媒介六、建立動作七、測試
zabbix郵件報警配置一、開啟發件伺服器SMTP功能二、安裝郵件服務軟體三、配置報警媒介四、在zabbix服務端寫郵件發送腳本五、使用腳本方式增加報警媒介六、建立動作七、測試

四、在zabbix服務端寫郵件發送腳本

4.1 編寫腳本

[[email protected] zabbix]# cat /usr/lib/zabbix/share/zabbix/alertscripts/sendmail.sh
messages=`echo $3 | tr '\r\n' '\n'`
subject=`echo $2 | tr '\r\n' '\n'`
echo "${messages}" | mailx -s "${subject}" $1 >>/tmp/sendmail.log 2>&1
           

4.2 建立 log日志檔案、授權執行權限

touch /tmp/sendmail.log 
chmod 777 /tmp/sendmail.log
chown zabbix:zabbix /usr/lib/zabbix/share/zabbix/alertscripts/sendmail.sh
chmod u+x /usr/lib/zabbix/share/zabbix/alertscripts/sendmail.sh
           

4.3 修改zabbix_server.conf檔案

添加一行:AlertScriptsPath= /usr/lib/zabbix/share/zabbix/alertscripts

[[email protected] zabbix]# cat /usr/lib/zabbix/etc/zabbix_server.conf
ListenPort=10051
LogFile=/usr/lib/zabbix/logs/zabbix_server.log
PidFile=/usr/lib/zabbix/logs/zabbix_server.pid
DBName=zabbix
DBUser=zabbix
DBPassword=test
DBSocket=/data/mysql8.0.31/3307_3307/data/mysql.sock
Timeout=4
LogSlowQueries=3000
StatsAllowedIP=127.0.0.1
StartDiscoverers=5
AlertScriptsPath=/usr/lib/zabbix/share/zabbix/alertscripts
           

4.4 測試腳本

發送成功

zabbix郵件報警配置一、開啟發件伺服器SMTP功能二、安裝郵件服務軟體三、配置報警媒介四、在zabbix服務端寫郵件發送腳本五、使用腳本方式增加報警媒介六、建立動作七、測試

五、使用腳本方式增加報警媒介

5.1 建立告警媒介

zabbix郵件報警配置一、開啟發件伺服器SMTP功能二、安裝郵件服務軟體三、配置報警媒介四、在zabbix服務端寫郵件發送腳本五、使用腳本方式增加報警媒介六、建立動作七、測試
zabbix郵件報警配置一、開啟發件伺服器SMTP功能二、安裝郵件服務軟體三、配置報警媒介四、在zabbix服務端寫郵件發送腳本五、使用腳本方式增加報警媒介六、建立動作七、測試

5.2 指定報警使用者

zabbix郵件報警配置一、開啟發件伺服器SMTP功能二、安裝郵件服務軟體三、配置報警媒介四、在zabbix服務端寫郵件發送腳本五、使用腳本方式增加報警媒介六、建立動作七、測試
zabbix郵件報警配置一、開啟發件伺服器SMTP功能二、安裝郵件服務軟體三、配置報警媒介四、在zabbix服務端寫郵件發送腳本五、使用腳本方式增加報警媒介六、建立動作七、測試

六、建立動作

6.1 配置 —> 動作 —> 觸發器動作 —> 建立動作

zabbix郵件報警配置一、開啟發件伺服器SMTP功能二、安裝郵件服務軟體三、配置報警媒介四、在zabbix服務端寫郵件發送腳本五、使用腳本方式增加報警媒介六、建立動作七、測試
zabbix郵件報警配置一、開啟發件伺服器SMTP功能二、安裝郵件服務軟體三、配置報警媒介四、在zabbix服務端寫郵件發送腳本五、使用腳本方式增加報警媒介六、建立動作七、測試
zabbix郵件報警配置一、開啟發件伺服器SMTP功能二、安裝郵件服務軟體三、配置報警媒介四、在zabbix服務端寫郵件發送腳本五、使用腳本方式增加報警媒介六、建立動作七、測試

6.1.1 切換操作選項

選擇操作 —> 添加 —> 操作詳情

zabbix郵件報警配置一、開啟發件伺服器SMTP功能二、安裝郵件服務軟體三、配置報警媒介四、在zabbix服務端寫郵件發送腳本五、使用腳本方式增加報警媒介六、建立動作七、測試
自定義消息内容:
主題:Problem:{EVENT.NAME}

消息:Problem started at {EVENT.TIME} on {EVENT.DATE}
Problem name:{EVENT.NAME}
Host:{HOST.NAME}
Severity:{EVENT.SEVERITY}

Original problem ID:{EVENT.ID}
{TRIGGER.URL}

或者
問題:{EVENT.NAME} 主機:{HOST.NAME}
問題:{EVENT.NAME}
主機:{HOST.NAME}({HOST.IP})
告警級别:{EVENT.SEVERITY}
開始時間:{EVENT.DATE} {EVENT.TIME}
目前狀态:{EVENT.OPDATA}
事件 ID:{EVENT.ID}
           

切換恢複操作 —> 添加 —> 操作詳情

zabbix郵件報警配置一、開啟發件伺服器SMTP功能二、安裝郵件服務軟體三、配置報警媒介四、在zabbix服務端寫郵件發送腳本五、使用腳本方式增加報警媒介六、建立動作七、測試
自定義消息内容
主題:Resolved:{EVENT.NAME}
消息:Problem has been resolved at {EVENT.RECOVERY.TIME} on
{EVENT.RECOVERY.DATE}
Problem name:{EVENT.NAME}
Host:{HOST.NAME}
Severity:{EVENT.SEVERITY}

Original proble ID:{EVENT.ID}
{TRIGGER.URL}

或者
問題已解決:{EVENT.NAME} 主機:{HOST.NAME}
問題:{EVENT.NAME}
主機:{HOST.NAME}({HOST.IP})
告警級别:{EVENT.SEVERITY}
解決時間:{EVENT.RECOVERY.DATE} {EVENT.RECOVERY.TIME}
持續時間:{EVENT.DURATION}
事件 ID:{EVENT.ID}
           

切換更新操作 —> 添加 —> 操作詳情

zabbix郵件報警配置一、開啟發件伺服器SMTP功能二、安裝郵件服務軟體三、配置報警媒介四、在zabbix服務端寫郵件發送腳本五、使用腳本方式增加報警媒介六、建立動作七、測試
自定義消息内容
主題:Resolved:{EVENT.NAME}
消息:Problem has been resolved at {EVENT.RECOVERY.TIME} on
{EVENT.RECOVERY.NAME}
Problem name:{EVENT.NAME}
Host:{HOST.NAME}
Severity:{EVENT.SEVERITY}

Original problem ID:{EVENT.ID}
{TRIGGER.URL}
           
zabbix郵件報警配置一、開啟發件伺服器SMTP功能二、安裝郵件服務軟體三、配置報警媒介四、在zabbix服務端寫郵件發送腳本五、使用腳本方式增加報警媒介六、建立動作七、測試

七、測試

zabbix郵件報警配置一、開啟發件伺服器SMTP功能二、安裝郵件服務軟體三、配置報警媒介四、在zabbix服務端寫郵件發送腳本五、使用腳本方式增加報警媒介六、建立動作七、測試
zabbix郵件報警配置一、開啟發件伺服器SMTP功能二、安裝郵件服務軟體三、配置報警媒介四、在zabbix服務端寫郵件發送腳本五、使用腳本方式增加報警媒介六、建立動作七、測試

測試成功

繼續閱讀